|
Medial Code Documentation
|
interface of gradient boosting model. More...
#include <gbm.h>
Public Member Functions | |
| ~GradientBooster () override=default | |
| virtual destructor | |
| virtual void | Configure (const std::vector< std::pair< std::string, std::string > > &cfg)=0 |
| Set the configuration of gradient boosting. User must call configure once before InitModel and Training. | |
| virtual void | Load (dmlc::Stream *fi)=0 |
| load model from stream | |
| virtual void | Save (dmlc::Stream *fo) const =0 |
| save model to stream. | |
| virtual void | Slice (bst_layer_t, bst_layer_t, bst_layer_t, GradientBooster *, bool *) const |
| Slice a model using boosting index. | |
| virtual int32_t | BoostedRounds () const =0 |
| Return number of boosted rounds. | |
| virtual bool | ModelFitted () const =0 |
| Whether the model has already been trained. | |
| virtual void | DoBoost (DMatrix *p_fmat, HostDeviceVector< GradientPair > *in_gpair, PredictionCacheEntry *, ObjFunction const *obj)=0 |
| perform update to the model(boosting) | |
| virtual void | PredictBatch (DMatrix *dmat, PredictionCacheEntry *out_preds, bool training, bst_layer_t begin, bst_layer_t end)=0 |
| Generate predictions for given feature matrix. | |
| virtual void | InplacePredict (std::shared_ptr< DMatrix >, float, PredictionCacheEntry *, bst_layer_t, bst_layer_t) const |
| Inplace prediction. | |
| virtual void | PredictInstance (const SparsePage::Inst &inst, std::vector< bst_float > *out_preds, unsigned layer_begin, unsigned layer_end)=0 |
| online prediction function, predict score for one instance at a time NOTE: use the batch prediction interface if possible, batch prediction is usually more efficient than online prediction This function is NOT threadsafe, make sure you only call from one thread | |
| virtual void | PredictLeaf (DMatrix *dmat, HostDeviceVector< bst_float > *out_preds, unsigned layer_begin, unsigned layer_end)=0 |
| predict the leaf index of each tree, the output will be nsample * ntree vector this is only valid in gbtree predictor | |
| virtual void | PredictContribution (DMatrix *dmat, HostDeviceVector< float > *out_contribs, bst_layer_t layer_begin, bst_layer_t layer_end, bool approximate=false)=0 |
| feature contributions to individual predictions; the output will be a vector of length (nfeats + 1) * num_output_group * nsample, arranged in that order | |
| virtual void | PredictInteractionContributions (DMatrix *dmat, HostDeviceVector< float > *out_contribs, bst_layer_t layer_begin, bst_layer_t layer_end, bool approximate)=0 |
| virtual std::vector< std::string > | DumpModel (const FeatureMap &fmap, bool with_stats, std::string format) const =0 |
| dump the model in the requested format | |
| virtual void | FeatureScore (std::string const &importance_type, common::Span< int32_t const > trees, std::vector< bst_feature_t > *features, std::vector< float > *scores) const =0 |
| virtual bool | UseGPU () const =0 |
| Whether the current booster uses GPU. | |
Public Member Functions inherited from xgboost::Model | |
| virtual void | LoadModel (Json const &in)=0 |
| load the model from a JSON object | |
| virtual void | SaveModel (Json *out) const =0 |
| saves the model config to a JSON object | |
Public Member Functions inherited from xgboost::Configurable | |
| virtual void | LoadConfig (Json const &in)=0 |
| Load configuration from JSON object. | |
| virtual void | SaveConfig (Json *out) const =0 |
| Save configuration to JSON object. | |
Static Public Member Functions | |
| static GradientBooster * | Create (const std::string &name, Context const *ctx, LearnerModelParam const *learner_model_param) |
| create a gradient booster from given name | |
Protected Member Functions | |
| GradientBooster (Context const *ctx) | |
Protected Attributes | |
| Context const * | ctx_ |
interface of gradient boosting model.
|
pure virtual |
Return number of boosted rounds.
Implemented in xgboost::gbm::GBLinear, and xgboost::gbm::GBTree.
|
pure virtual |
Set the configuration of gradient boosting. User must call configure once before InitModel and Training.
| cfg | configurations on both training and model parameters. |
Implemented in xgboost::gbm::GBTree, xgboost::gbm::GBLinear, and xgboost::gbm::Dart.
|
static |
create a gradient booster from given name
| name | name of gradient booster |
| generic_param | Pointer to runtime parameters |
| learner_model_param | pointer to global model parameters |
|
pure virtual |
perform update to the model(boosting)
| p_fmat | feature matrix that provide access to features |
| in_gpair | address of the gradient pair statistics of the data |
| prediction | The output prediction cache entry that needs to be updated. the booster may change content of gpair |
Implemented in xgboost::gbm::GBLinear, and xgboost::gbm::GBTree.
|
pure virtual |
dump the model in the requested format
| fmap | feature map that may help give interpretations of feature |
| with_stats | extra statistics while dumping model |
| format | the format to dump the model in |
Implemented in xgboost::gbm::GBLinear, and xgboost::gbm::GBTree.
|
inlinevirtual |
Inplace prediction.
| p_fmat | A proxy DMatrix that contains the data and related. | |
| missing | Missing value in the data. | |
| [in,out] | out_preds | The output preds. |
| begin | (Optional) Beginning of boosted tree layer used for prediction. | |
| end | (Optional) End of booster layer. 0 means do not limit trees. |
Reimplemented in xgboost::gbm::Dart, and xgboost::gbm::GBTree.
|
pure virtual |
load model from stream
| fi | input stream. |
Implemented in xgboost::gbm::GBLinear, xgboost::gbm::Dart, and xgboost::gbm::GBTree.
|
pure virtual |
Whether the model has already been trained.
When tree booster is chosen, then returns true when there are existing trees.
Implemented in xgboost::gbm::GBLinear, and xgboost::gbm::GBTree.
|
pure virtual |
Generate predictions for given feature matrix.
| dmat | The feature matrix. |
| out_preds | output vector to hold the predictions |
| training | Whether the prediction value is used for training. For dart booster drop out is performed during training. |
| begin | Beginning of boosted tree layer used for prediction. |
| end | End of booster layer. 0 means do not limit trees. |
Implemented in xgboost::gbm::GBTree, xgboost::gbm::Dart, and xgboost::gbm::GBLinear.
|
pure virtual |
feature contributions to individual predictions; the output will be a vector of length (nfeats + 1) * num_output_group * nsample, arranged in that order
| dmat | feature matrix |
| out_contribs | output vector to hold the contributions |
| layer_begin | Beginning of boosted tree layer used for prediction. |
| layer_end | End of booster layer. 0 means do not limit trees. |
| approximate | use a faster (inconsistent) approximation of SHAP values |
Implemented in xgboost::gbm::Dart, xgboost::gbm::GBLinear, and xgboost::gbm::GBTree.
|
pure virtual |
online prediction function, predict score for one instance at a time NOTE: use the batch prediction interface if possible, batch prediction is usually more efficient than online prediction This function is NOT threadsafe, make sure you only call from one thread
| inst | the instance you want to predict |
| out_preds | output vector to hold the predictions |
| layer_begin | Beginning of boosted tree layer used for prediction. |
| layer_end | End of booster layer. 0 means do not limit trees. |
Implemented in xgboost::gbm::Dart.
|
pure virtual |
predict the leaf index of each tree, the output will be nsample * ntree vector this is only valid in gbtree predictor
| dmat | feature matrix |
| out_preds | output vector to hold the predictions |
| layer_begin | Beginning of boosted tree layer used for prediction. |
| layer_end | End of booster layer. 0 means do not limit trees. |
Implemented in xgboost::gbm::GBLinear.
|
pure virtual |
save model to stream.
| fo | output stream |
Implemented in xgboost::gbm::GBLinear, xgboost::gbm::Dart, and xgboost::gbm::GBTree.
|
inlinevirtual |
Slice a model using boosting index.
The slice m:n indicates taking all trees that were fit during the boosting rounds m, (m+1), (m+2), ..., (n-1).
| begin | Beginning of boosted tree layer used for prediction. |
| end | End of booster layer. 0 means do not limit trees. |
| out | Output gradient booster |
Reimplemented in xgboost::gbm::GBTree.
|
pure virtual |
Whether the current booster uses GPU.
Implemented in xgboost::gbm::GBLinear, and xgboost::gbm::GBTree.