Setup hyperparameters for LightRF training.
Usage
setup_LightRF(
nrounds = 500L,
num_leaves = 4096L,
max_depth = -1L,
feature_fraction = 0.7,
subsample = 0.623,
lambda_l1 = 0,
lambda_l2 = 0,
max_cat_threshold = 32L,
min_data_per_group = 32L,
linear_tree = FALSE,
ifw = FALSE,
objective = NULL,
device_type = "cpu",
tree_learner = "serial",
force_col_wise = TRUE
)Arguments
- nrounds
(Tunable) Positive integer: Number of boosting rounds.
- num_leaves
(Tunable) Positive integer: Maximum number of leaves in one tree.
- max_depth
(Tunable) Integer: Maximum depth of trees.
- feature_fraction
(Tunable) Numeric: Fraction of features to use.
- subsample
(Tunable) Numeric: Fraction of data to use.
- lambda_l1
(Tunable) Numeric: L1 regularization.
- lambda_l2
(Tunable) Numeric: L2 regularization.
- max_cat_threshold
(Tunable) Positive integer: Maximum number of categories for categorical features.
- min_data_per_group
(Tunable) Positive integer: Minimum number of observations per categorical group.
- linear_tree
Logical: If TRUE, use linear trees.
- ifw
Logical: If TRUE, use Inverse Frequency Weighting in classification.
- objective
Character: Objective function.
- device_type
Character: "cpu" or "gpu".
- tree_learner
Character: "serial", "feature", "data", or "voting".
- force_col_wise
Logical: Use only with CPU - If TRUE, force col-wise histogram building.
Details
Get more information from lightgbm::lgb.train.
Note that hyperparameters subsample_freq and early_stopping_rounds are fixed,
and cannot be set because they are what makes lightgbm train a random forest.
These can all be set when training gradient boosting with LightGBM.
Examples
lightrf_hyperparams <- setup_LightRF(nrounds = 1000L, ifw = FALSE)
lightrf_hyperparams
#> <LightRFHyperparameters>
#> hyperparameters:
#> nrounds: <int> 1000
#> num_leaves: <int> 4096
#> max_depth: <int> -1
#> feature_fraction: <nmr> 0.70
#> subsample: <nmr> 0.62
#> lambda_l1: <nmr> 0.00
#> lambda_l2: <nmr> 0.00
#> max_cat_threshold: <int> 32
#> min_data_per_group: <int> 32
#> linear_tree: <lgc> FALSE
#> ifw: <lgc> FALSE
#> objective: <NUL> NULL
#> device_type: <chr> cpu
#> tree_learner: <chr> serial
#> force_col_wise: <lgc> TRUE
#> boosting_type: <chr> rf
#> learning_rate: <nmr> 1.00
#> subsample_freq: <int> 1
#> early_stopping_rounds: <int> -1
#> tunable_hyperparameters: <chr> nrounds, num_leaves, max_depth, feature_fraction, subsample, lambda_l1, lambda_l2, max_cat_threshold, min_data_per_group, ifw
#> fixed_hyperparameters: <chr> objective, device_type, tree_learner, boosting_type, learning_rate, subsample_freq, early_stopping_rounds, force_col_wise
#> tuned: <int> -1
#> resampled: <int> 0
#> n_workers: <int> 1
#>
#> No search values defined for tunable hyperparameters.