ForestModelConfig: Object used to get / set parameters and other model...

ForestModelConfigR 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 as 1/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()

stochtree documentation built on April 4, 2025, 2:11 a.m.