Regression H2O Random Forest Learner
Source:R/learner_h2o_regr_randomForest.R
mlr_learners_regr.h2o.randomForest.RdRegression random forest learner.
Calls h2o::h2o.randomForest() from package h2o.
H2O Connection
If no running H2O connection is found, the learner will automatically start a local H2O server
on 127.0.0.1 via h2o::h2o.init().
If you want to connect to a remote H2O cluster, call h2o::h2o.init() with the appropriate
arguments before training or predicting.
Meta Information
Task type: “regr”
Predict Types: “response”
Feature Types: “integer”, “numeric”, “factor”
Required Packages: mlr3, mlr3extralearners, h2o
Parameters
| Id | Type | Default | Levels | Range |
| build_tree_one_node | logical | FALSE | TRUE, FALSE | - |
| categorical_encoding | character | AUTO | AUTO, Enum, OneHotInternal, OneHotExplicit, Binary, Eigen, LabelEncoder, SortByResponse, EnumLimited | - |
| check_constant_response | logical | TRUE | TRUE, FALSE | - |
| checkpoint | untyped | NULL | - | |
| col_sample_rate_change_per_level | numeric | 1 | \([0, 2]\) | |
| col_sample_rate_per_tree | numeric | 1 | \([0, 1]\) | |
| export_checkpoints_dir | untyped | NULL | - | |
| histogram_type | character | AUTO | AUTO, UniformAdaptive, Random, QuantilesGlobal, RoundRobin, UniformRobust | - |
| ignore_const_cols | logical | TRUE | TRUE, FALSE | - |
| max_depth | integer | 20 | \([0, \infty)\) | |
| max_runtime_secs | numeric | 0 | \([0, \infty)\) | |
| min_rows | numeric | 1 | \([1, \infty)\) | |
| min_split_improvement | numeric | 1e-05 | \([0, \infty)\) | |
| mtries | integer | -1 | \([1, \infty)\) | |
| nbins | integer | 20 | \([1, \infty)\) | |
| nbins_cats | integer | 1024 | \([1, \infty)\) | |
| nbins_top_level | integer | 1024 | \([1, \infty)\) | |
| ntrees | integer | 50 | \([1, \infty)\) | |
| sample_rate | numeric | 0.632 | \([0, 1]\) | |
| score_each_iteration | logical | FALSE | TRUE, FALSE | - |
| score_tree_interval | integer | 0 | \([0, \infty)\) | |
| seed | integer | -1 | \((-\infty, \infty)\) | |
| stopping_metric | character | AUTO | AUTO, deviance, MSE, RMSE, MAE, RMSLE | - |
| stopping_rounds | integer | 0 | \([0, \infty)\) | |
| stopping_tolerance | numeric | 0.001 | \([0, \infty)\) | |
| verbose | logical | FALSE | TRUE, FALSE | - |
References
Fryda T, LeDell E, Gill N, Aiello S, Fu A, Candel A, Click C, Kraljevic T, Nykodym T, Aboyoun P, Kurka M, Malohlava M, Poirier S, Wong W (2025). h2o: R Interface for the 'H2O' Scalable Machine Learning Platform. R package version 3.46.0.9, https://github.com/h2oai/h2o-3.
See also
as.data.table(mlr_learners)for a table of available Learners in the running session (depending on the loaded packages).Chapter in the mlr3book: https://mlr3book.mlr-org.com/basics.html#learners
mlr3learners for a selection of recommended learners.
mlr3cluster for unsupervised clustering learners.
mlr3pipelines to combine learners with pre- and postprocessing steps.
mlr3tuning for tuning of hyperparameters, mlr3tuningspaces for established default tuning spaces.
Super classes
mlr3::Learner -> mlr3::LearnerRegr -> LearnerRegrH2ORandomForest
Methods
Inherited methods
mlr3::Learner$base_learner()mlr3::Learner$configure()mlr3::Learner$encapsulate()mlr3::Learner$format()mlr3::Learner$help()mlr3::Learner$predict()mlr3::Learner$predict_newdata()mlr3::Learner$print()mlr3::Learner$reset()mlr3::Learner$selected_features()mlr3::Learner$train()mlr3::LearnerRegr$predict_newdata_fast()
Examples
# Define the Learner
learner = lrn("regr.h2o.randomForest")
print(learner)
#>
#> ── <LearnerRegrH2ORandomForest> (regr.h2o.randomForest): H2O Random Forest ─────
#> • Model: -
#> • Parameters: list()
#> • Packages: mlr3, mlr3extralearners, and h2o
#> • Predict Types: [response]
#> • Feature Types: integer, numeric, and factor
#> • Encapsulation: none (fallback: -)
#> • Properties: missings and weights
#> • Other settings: use_weights = 'use'
# Define a Task
task = tsk("mtcars")
# Create train and test set
ids = partition(task)
# Train the learner on the training ids
learner$train(task, row_ids = ids$train)
print(learner$model)
#> Model Details:
#> ==============
#>
#> H2ORegressionModel: drf
#> Model ID: DRF_model_R_1774260318250_112
#> Model Summary:
#> number_of_trees number_of_internal_trees model_size_in_bytes min_depth
#> 1 50 50 10702 3
#> max_depth mean_depth min_leaves max_leaves mean_leaves
#> 1 8 5.78000 6 16 12.42000
#>
#>
#> H2ORegressionMetrics: drf
#> ** Reported on training data. **
#> ** Metrics reported on Out-Of-Bag training samples **
#>
#> MSE: 5.848924
#> RMSE: 2.418455
#> MAE: 2.014721
#> RMSLE: 0.1223739
#> Mean Residual Deviance : 5.848924
#>
#>
#>
#>
# Make predictions for the test rows
predictions = learner$predict(task, row_ids = ids$test)
# Score the predictions
predictions$score()
#> regr.mse
#> 2.36949