View source: R/lgb.model.dt.tree.R
| lgb.model.dt.tree | R Documentation |
Parse a LightGBM model json dump into a data.table structure.
lgb.model.dt.tree(model, num_iteration = NULL, start_iteration = 1L)
model |
object of class |
num_iteration |
Number of iterations to include. NULL or <= 0 means use best iteration. |
start_iteration |
Index (1-based) of the first boosting round to include in the output.
For example, passing New in version 4.4.0 |
A data.table with detailed information about model trees' nodes and leaves.
The columns of the data.table are:
tree_index: ID of a tree in a model (integer)
split_index: ID of a node in a tree (integer)
split_feature: for a node, it's a feature name (character);
for a leaf, it simply labels it as "NA"
node_parent: ID of the parent node for current node (integer)
leaf_index: ID of a leaf in a tree (integer)
leaf_parent: ID of the parent node for current leaf (integer)
split_gain: Split gain of a node
threshold: Splitting threshold value of a node
decision_type: Decision type of a node
default_left: Determine how to handle NA value, TRUE -> Left, FALSE -> Right
internal_value: Node value
internal_count: The number of observation collected by a node
leaf_value: Leaf value
leaf_count: The number of observation collected by a leaf
data(agaricus.train, package = "lightgbm")
train <- agaricus.train
dtrain <- lgb.Dataset(train$data, label = train$label)
params <- list(
objective = "binary"
, learning_rate = 0.01
, num_leaves = 63L
, max_depth = -1L
, min_data_in_leaf = 1L
, min_sum_hessian_in_leaf = 1.0
, num_threads = 2L
)
model <- lgb.train(params, dtrain, 10L)
tree_dt <- lgb.model.dt.tree(model)
Add the following code to your website.
For more information on customizing the embed code, read Embedding Snippets.