23 #ifndef __GBT_REGRESSION_MODEL_BUILDER_H__
24 #define __GBT_REGRESSION_MODEL_BUILDER_H__
26 #include "algorithms/gradient_boosted_trees/gbt_regression_model.h"
60 class DAAL_EXPORT ModelBuilder
66 typedef size_t NodeId;
71 typedef size_t TreeId;
73 static const NodeId noParent =
static_cast<size_t>(-1);
80 ModelBuilder(
size_t nFeatures,
size_t nIterations)
82 _status |= initialize(nFeatures, nIterations);
83 services::throwIfPossible(_status);
91 TreeId createTree(
size_t nNodes)
94 _status |= createTreeInternal(nNodes, resId);
95 services::throwIfPossible(_status);
107 NodeId addLeafNode(TreeId treeId, NodeId parentId,
size_t position,
double response)
110 _status |= addLeafNodeInternal(treeId, parentId, position, response, resId);
111 services::throwIfPossible(_status);
124 NodeId addSplitNode(TreeId treeId, NodeId parentId,
size_t position,
size_t featureIndex,
double featureValue)
127 _status |= addSplitNodeInternal(treeId, parentId, position, featureIndex, featureValue, resId);
128 services::throwIfPossible(_status);
138 _status |= convertModelInternal();
139 services::throwIfPossible(_status);
147 services::Status getStatus()
154 services::Status _status;
155 services::Status initialize(
size_t nFeatures,
size_t nIterations);
156 services::Status createTreeInternal(
size_t nNodes, TreeId& resId);
157 services::Status addLeafNodeInternal(TreeId treeId, NodeId parentId,
size_t position,
double response, NodeId& res);
158 services::Status addSplitNodeInternal(TreeId treeId, NodeId parentId,
size_t position,
size_t featureIndex,
double featureValue, NodeId& res);
159 services::Status convertModelInternal();
164 using interface1::ModelBuilder;
daal::algorithms::gbt::regression::interface1::ModelBuilder::TreeId
size_t TreeId
Tree identifier type is size_t
Definition: gbt_regression_model_builder.h:71
daal::algorithms::gbt::regression::interface1::ModelBuilder::NodeId
size_t NodeId
Node identifier type is size_t
Definition: gbt_regression_model_builder.h:66
daal::algorithms::gbt::regression::interface1::ModelBuilder::getModel
ModelPtr getModel()
Definition: gbt_regression_model_builder.h:136
daal::algorithms::gbt::regression::interface1::ModelBuilder::addLeafNode
NodeId addLeafNode(TreeId treeId, NodeId parentId, size_t position, double response)
Definition: gbt_regression_model_builder.h:107
daal::algorithms::gbt::regression::interface1::ModelBuilder
Model Builder class for gradient boosted trees regression model.
Definition: gbt_regression_model_builder.h:60
daal::algorithms::gbt::regression::interface1::ModelBuilder::ModelBuilder
ModelBuilder(size_t nFeatures, size_t nIterations)
Definition: gbt_regression_model_builder.h:80
daal::algorithms::gbt::regression::interface1::ModelBuilder::createTree
TreeId createTree(size_t nNodes)
Definition: gbt_regression_model_builder.h:91
daal::algorithms::gbt::regression::interface1::ModelBuilder::getStatus
services::Status getStatus()
Definition: gbt_regression_model_builder.h:147
daal::algorithms::gbt::regression::interface1::ModelBuilder::addSplitNode
NodeId addSplitNode(TreeId treeId, NodeId parentId, size_t position, size_t featureIndex, double featureValue)
Definition: gbt_regression_model_builder.h:124
daal::algorithms::em_gmm::nIterations
Definition: em_gmm_types.h:99