xgboost
|
Performs prediction on individual training instances or batches of instances for GBTree. Prediction functions all take a GBTreeModel and a DMatrix as input and output a vector of predictions. The predictor does not modify any state of the model itself. More...
#include <predictor.h>
Public Member Functions | |
Predictor (GenericParameter const *ctx) | |
virtual | ~Predictor ()=default |
virtual void | Configure (const std::vector< std::pair< std::string, std::string >> &) |
Configure and register input matrices in prediction cache. More... | |
void | InitOutPredictions (const MetaInfo &info, HostDeviceVector< bst_float > *out_predt, const gbm::GBTreeModel &model) const |
Initialize output prediction. More... | |
virtual void | PredictBatch (DMatrix *dmat, PredictionCacheEntry *out_preds, const gbm::GBTreeModel &model, uint32_t tree_begin, uint32_t tree_end=0) const =0 |
Generate batch predictions for a given feature matrix. May use cached predictions if available instead of calculating from scratch. More... | |
virtual bool | InplacePredict (dmlc::any const &x, std::shared_ptr< DMatrix > p_m, const gbm::GBTreeModel &model, float missing, PredictionCacheEntry *out_preds, uint32_t tree_begin=0, uint32_t tree_end=0) const =0 |
Inplace prediction. More... | |
virtual void | PredictInstance (const SparsePage::Inst &inst, std::vector< bst_float > *out_preds, const gbm::GBTreeModel &model, unsigned tree_end=0) const =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. More... | |
virtual void | PredictLeaf (DMatrix *dmat, HostDeviceVector< bst_float > *out_preds, const gbm::GBTreeModel &model, unsigned tree_end=0) const =0 |
predict the leaf index of each tree, the output will be nsample * ntree vector this is only valid in gbtree predictor. More... | |
virtual void | PredictContribution (DMatrix *dmat, HostDeviceVector< bst_float > *out_contribs, const gbm::GBTreeModel &model, unsigned tree_end=0, std::vector< bst_float > const *tree_weights=nullptr, bool approximate=false, int condition=0, unsigned condition_feature=0) const =0 |
feature contributions to individual predictions; the output will be a vector of length (nfeats + 1) * num_output_group * nsample, arranged in that order. More... | |
virtual void | PredictInteractionContributions (DMatrix *dmat, HostDeviceVector< bst_float > *out_contribs, const gbm::GBTreeModel &model, unsigned tree_end=0, std::vector< bst_float > const *tree_weights=nullptr, bool approximate=false) const =0 |
Static Public Member Functions | |
static Predictor * | Create (std::string const &name, GenericParameter const *generic_param) |
Creates a new Predictor*. More... | |
Protected Attributes | |
GenericParameter const * | ctx_ |
Performs prediction on individual training instances or batches of instances for GBTree. Prediction functions all take a GBTreeModel and a DMatrix as input and output a vector of predictions. The predictor does not modify any state of the model itself.
|
inlineexplicit |
|
virtualdefault |
|
virtual |
Configure and register input matrices in prediction cache.
cfg | The configuration. |
|
static |
Creates a new Predictor*.
name | Name of the predictor. |
generic_param | Pointer to runtime parameters. |
void xgboost::Predictor::InitOutPredictions | ( | const MetaInfo & | info, |
HostDeviceVector< bst_float > * | out_predt, | ||
const gbm::GBTreeModel & | model | ||
) | const |
Initialize output prediction.
info | Meta info for the DMatrix object used for prediction. |
out_predt | Prediction vector to be initialized. |
model | Tree model used for prediction. |
|
pure virtual |
Inplace prediction.
x | Type erased data adapter. | |
model | The model to predict from. | |
missing | Missing value in the data. | |
[in,out] | out_preds | The output preds. |
tree_begin | (Optional) Beginning of boosted trees used for prediction. | |
tree_end | (Optional) End of booster trees. 0 means do not limit trees. |
|
pure virtual |
Generate batch predictions for a given feature matrix. May use cached predictions if available instead of calculating from scratch.
[in,out] | dmat | Feature matrix. |
[in,out] | out_preds | The output preds. |
model | The model to predict from. | |
tree_begin | The tree begin index. | |
tree_end | The tree end index. |
|
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.
[in,out] | dmat | The input feature matrix. |
[in,out] | out_contribs | The output feature contribs. |
model | Model to make predictions from. | |
tree_end | The tree end index. | |
tree_weights | (Optional) Weights to multiply each tree by. | |
approximate | Use fast approximate algorithm. | |
condition | Condition on the condition_feature (0=no, -1=cond off, 1=cond on). | |
condition_feature | Feature to condition on (i.e. fix) during calculations. |
|
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 to predict. | |
[in,out] | out_preds | The output preds. |
model | The model to predict from | |
tree_end | (Optional) The tree end index. |
|
pure virtual |
|
pure virtual |
predict the leaf index of each tree, the output will be nsample * ntree vector this is only valid in gbtree predictor.
[in,out] | dmat | The input feature matrix. |
[in,out] | out_preds | The output preds. |
model | Model to make predictions from. | |
tree_end | (Optional) The tree end index. |
|
protected |