Medial Code Documentation
|
pruner that prunes a tree after growing finishes More...
Public Member Functions | |
TreePruner (Context const *ctx, ObjInfo const *task) | |
char const * | Name () const override |
void | Configure (const Args &args) override |
Initialize the updater with given arguments. | |
void | LoadConfig (Json const &) override |
Load configuration from JSON object. | |
void | SaveConfig (Json *) const override |
Save configuration to JSON object. | |
bool | CanModifyTree () const override |
Whether this updater can be used for updating existing trees. | |
void | Update (TrainParam const *param, HostDeviceVector< GradientPair > *gpair, DMatrix *p_fmat, common::Span< HostDeviceVector< bst_node_t > > out_position, const std::vector< RegTree * > &trees) override |
perform update to the tree models | |
![]() | |
TreeUpdater (const Context *ctx) | |
~TreeUpdater () override=default | |
virtual destructor | |
virtual bool | HasNodePosition () const |
Wether the out_position in Update is valid. This determines whether adaptive tree can be used. | |
virtual bool | UpdatePredictionCache (const DMatrix *, linalg::MatrixView< float >) |
determines whether updater has enough knowledge about a given dataset to quickly update prediction cache its training data and performs the update if possible. | |
Additional Inherited Members | |
![]() | |
static TreeUpdater * | Create (const std::string &name, Context const *ctx, ObjInfo const *task) |
Create a tree updater given name. | |
![]() | |
Context const * | ctx_ = nullptr |
pruner that prunes a tree after growing finishes
|
inlineoverridevirtual |
Whether this updater can be used for updating existing trees.
Some updaters are used for building new trees (like hist
), while some others are used for modifying existing trees (like prune
). Return true if it can modify existing trees.
Reimplemented from xgboost::TreeUpdater.
|
inlineoverridevirtual |
Initialize the updater with given arguments.
args | arguments to the objective function. |
Implements xgboost::TreeUpdater.
|
inlineoverridevirtual |
Load configuration from JSON object.
in | JSON object containing the configuration |
Implements xgboost::Configurable.
|
inlineoverridevirtual |
Implements xgboost::TreeUpdater.
|
inlineoverridevirtual |
Save configuration to JSON object.
out | pointer to output JSON object |
Implements xgboost::Configurable.
|
inlineoverridevirtual |
perform update to the tree models
param | Hyper-parameter for constructing trees. |
gpair | the gradient pair statistics of the data |
data | The data matrix passed to the updater. |
out_position | The leaf index for each row. The index is negated if that row is removed during sampling. So the 3th node is ~3. |
out_trees | references the trees to be updated, updater will change the content of trees note: all the trees in the vector are updated, with the same statistics, but maybe different random seeds, usually one tree is passed in at a time, there can be multiple trees when we train random forest style model |
Implements xgboost::TreeUpdater.