ForestModelConfig {stochtree} | R Documentation |
Object used to get / set parameters and other model configuration options for a forest model in the "low-level" stochtree interface
Description
The "low-level" stochtree interface enables a high degreee of sampler customization, in which users employ R wrappers around C++ objects like ForestDataset, Outcome, CppRng, and ForestModel to run the Gibbs sampler of a BART model with custom modifications. ForestModelConfig allows users to specify / query the parameters of a forest model they wish to run.
Value
Vector of integer-coded feature types (integers where 0 = numeric, 1 = ordered categorical, 2 = unordered categorical)
Vector specifying sampling probability for all p covariates in ForestDataset
Root node split probability in tree prior
Depth prior penalty in tree prior
Minimum number of samples in a tree leaf
Maximum depth of any tree in the ensemble in the model
Scale parameter used in Gaussian leaf models
Shape parameter for IG leaf models
Scale parameter for IG leaf models
Number of unique cutpoints to consider
Public fields
feature_types
Vector of integer-coded feature types (integers where 0 = numeric, 1 = ordered categorical, 2 = unordered categorical)
num_trees
Number of trees in the forest being sampled
num_features
Number of features in training dataset
num_observations
Number of observations in training dataset
leaf_dimension
Dimension of the leaf model
alpha
Root node split probability in tree prior
beta
Depth prior penalty in tree prior
min_samples_leaf
Minimum number of samples in a tree leaf
max_depth
Maximum depth of any tree in the ensemble in the model. Setting to
-1
does not enforce any depth limits on trees.leaf_model_type
Integer specifying the leaf model type (0 = constant leaf, 1 = univariate leaf regression, 2 = multivariate leaf regression)
leaf_model_scale
Scale parameter used in Gaussian leaf models
variable_weights
Vector specifying sampling probability for all p covariates in ForestDataset
variance_forest_shape
Shape parameter for IG leaf models (applicable when
leaf_model_type = 3
)variance_forest_scale
Scale parameter for IG leaf models (applicable when
leaf_model_type = 3
)cutpoint_grid_size
Number of unique cutpoints to consider Create a new ForestModelConfig object.
Methods
Public methods
Method new()
Usage
ForestModelConfig$new( feature_types = NULL, num_trees = NULL, num_features = NULL, num_observations = NULL, variable_weights = NULL, leaf_dimension = 1, alpha = 0.95, beta = 2, min_samples_leaf = 5, max_depth = -1, leaf_model_type = 1, leaf_model_scale = NULL, variance_forest_shape = 1, variance_forest_scale = 1, cutpoint_grid_size = 100 )
Arguments
feature_types
Vector of integer-coded feature types (integers where 0 = numeric, 1 = ordered categorical, 2 = unordered categorical)
num_trees
Number of trees in the forest being sampled
num_features
Number of features in training dataset
num_observations
Number of observations in training dataset
variable_weights
Vector specifying sampling probability for all p covariates in ForestDataset
leaf_dimension
Dimension of the leaf model (default:
1
)alpha
Root node split probability in tree prior (default:
0.95
)beta
Depth prior penalty in tree prior (default:
2.0
)min_samples_leaf
Minimum number of samples in a tree leaf (default:
5
)max_depth
Maximum depth of any tree in the ensemble in the model. Setting to
-1
does not enforce any depth limits on trees. Default:-1
.leaf_model_type
Integer specifying the leaf model type (0 = constant leaf, 1 = univariate leaf regression, 2 = multivariate leaf regression). Default:
0
.leaf_model_scale
Scale parameter used in Gaussian leaf models (can either be a scalar or a q x q matrix, where q is the dimensionality of the basis and is only >1 when
leaf_model_int = 2
). Calibrated internally as1/num_trees
, propagated along diagonal if needed for multivariate leaf models.variance_forest_shape
Shape parameter for IG leaf models (applicable when
leaf_model_type = 3
). Default:1
.variance_forest_scale
Scale parameter for IG leaf models (applicable when
leaf_model_type = 3
). Default:1
.cutpoint_grid_size
Number of unique cutpoints to consider (default:
100
)
Returns
A new ForestModelConfig object.
Method update_feature_types()
Update feature types
Usage
ForestModelConfig$update_feature_types(feature_types)
Arguments
feature_types
Vector of integer-coded feature types (integers where 0 = numeric, 1 = ordered categorical, 2 = unordered categorical)
Method update_variable_weights()
Update variable weights
Usage
ForestModelConfig$update_variable_weights(variable_weights)
Arguments
variable_weights
Vector specifying sampling probability for all p covariates in ForestDataset
Method update_alpha()
Update root node split probability in tree prior
Usage
ForestModelConfig$update_alpha(alpha)
Arguments
alpha
Root node split probability in tree prior
Method update_beta()
Update depth prior penalty in tree prior
Usage
ForestModelConfig$update_beta(beta)
Arguments
beta
Depth prior penalty in tree prior
Method update_min_samples_leaf()
Update root node split probability in tree prior
Usage
ForestModelConfig$update_min_samples_leaf(min_samples_leaf)
Arguments
min_samples_leaf
Minimum number of samples in a tree leaf
Method update_max_depth()
Update root node split probability in tree prior
Usage
ForestModelConfig$update_max_depth(max_depth)
Arguments
max_depth
Maximum depth of any tree in the ensemble in the model
Method update_leaf_model_scale()
Update scale parameter used in Gaussian leaf models
Usage
ForestModelConfig$update_leaf_model_scale(leaf_model_scale)
Arguments
leaf_model_scale
Scale parameter used in Gaussian leaf models
Method update_variance_forest_shape()
Update shape parameter for IG leaf models
Usage
ForestModelConfig$update_variance_forest_shape(variance_forest_shape)
Arguments
variance_forest_shape
Shape parameter for IG leaf models
Method update_variance_forest_scale()
Update scale parameter for IG leaf models
Usage
ForestModelConfig$update_variance_forest_scale(variance_forest_scale)
Arguments
variance_forest_scale
Scale parameter for IG leaf models
Method update_cutpoint_grid_size()
Update number of unique cutpoints to consider
Usage
ForestModelConfig$update_cutpoint_grid_size(cutpoint_grid_size)
Arguments
cutpoint_grid_size
Number of unique cutpoints to consider
Method get_feature_types()
Query feature types for this ForestModelConfig object
Usage
ForestModelConfig$get_feature_types()
Method get_variable_weights()
Query variable weights for this ForestModelConfig object
Usage
ForestModelConfig$get_variable_weights()
Method get_alpha()
Query root node split probability in tree prior for this ForestModelConfig object
Usage
ForestModelConfig$get_alpha()
Method get_beta()
Query depth prior penalty in tree prior for this ForestModelConfig object
Usage
ForestModelConfig$get_beta()
Method get_min_samples_leaf()
Query root node split probability in tree prior for this ForestModelConfig object
Usage
ForestModelConfig$get_min_samples_leaf()
Method get_max_depth()
Query root node split probability in tree prior for this ForestModelConfig object
Usage
ForestModelConfig$get_max_depth()
Method get_leaf_model_scale()
Query scale parameter used in Gaussian leaf models for this ForestModelConfig object
Usage
ForestModelConfig$get_leaf_model_scale()
Method get_variance_forest_shape()
Query shape parameter for IG leaf models for this ForestModelConfig object
Usage
ForestModelConfig$get_variance_forest_shape()
Method get_variance_forest_scale()
Query scale parameter for IG leaf models for this ForestModelConfig object
Usage
ForestModelConfig$get_variance_forest_scale()
Method get_cutpoint_grid_size()
Query number of unique cutpoints to consider for this ForestModelConfig object
Usage
ForestModelConfig$get_cutpoint_grid_size()