File rule_evaluation_decomposable_partial_dynamic.hpp¶
-
namespace boosting
-
class DecomposableDynamicPartialRuleEvaluationFactory : public boosting::ISparseDecomposableRuleEvaluationFactory¶
- #include <rule_evaluation_decomposable_partial_dynamic.hpp>
Allows to create instances of the class
ISparseDecomposableRuleEvaluationFactorythat allow to calculate the predictions of partial rules, which predict for a subset of the available outputs that is determined dynamically.Public Functions
-
DecomposableDynamicPartialRuleEvaluationFactory(float32 threshold, float32 exponent, float32 l1RegularizationWeight, float32 l2RegularizationWeight)¶
- Parameters:
threshold – A threshold that affects for how many outputs the rule heads should predict. A smaller threshold results in less outputs being selected. A greater threshold results in more outputs being selected. E.g., a threshold of 0.2 means that a rule will only predict for an output if the estimated predictive quality
qfor this particular output satisfies the inequalityq^exponent > q_best^exponent * (1 - 0.2), whereq_bestis the best quality among all outputs. Must be in (0, 1)exponent – An exponent that should be used to weigh the estimated predictive quality for individual outputs. E.g., an exponent of 2 means that the estimated predictive quality
qfor a particular output is weighed asq^2. Must be at least 1l1RegularizationWeight – The weight of the L1 regularization that is applied for calculating the scores to be predicted by rules
l2RegularizationWeight – The weight of the L2 regularization that is applied for calculating the scores to be predicted by rules
-
virtual std::unique_ptr<IRuleEvaluation<DenseDecomposableStatisticVector<float32>>> create(const DenseDecomposableStatisticVector<float32> &statisticVector, const CompleteIndexVector &indexVector) const override¶
Creates a new instance of the class
IRuleEvaluationthat allows to calculate the predictions of rules that predict for all available outputs, based on the gradients and Hessians that are stored by aDenseDecomposableStatisticVector<float32>.- Parameters:
statisticVector – A reference to an object of type
DenseDecomposableStatisticVector<float32>. This vector is only used to identify the function that is able to deal with this particular type of vector via function overloadingindexVector – A reference to an object of the type
CompleteIndexVectorthat provides access to the indices of the outputs for which the rules may predict
- Returns:
An unique pointer to an object of type
IRuleEvaluationthat has been created
-
virtual std::unique_ptr<IRuleEvaluation<DenseDecomposableStatisticVector<float32>>> create(const DenseDecomposableStatisticVector<float32> &statisticVector, const PartialIndexVector &indexVector) const override¶
Creates a new instance of the class
IRuleEvaluationthat allows to calculate the predictions of rules that predict for a subset of the available outputs, based on the gradients and Hessians that are stored by aDenseDecomposableStatisticVector<float32>.- Parameters:
statisticVector – A reference to an object of type
DenseDecomposableStatisticVector<float32>. This vector is only used to identify the function that is able to deal with this particular type of vector via function overloadingindexVector – A reference to an object of the type
PartialIndexVectorthat provides access to the indices of the outputs for which the rules may predict
- Returns:
An unique pointer to an object of type
IRuleEvaluationthat has been created
-
virtual std::unique_ptr<IRuleEvaluation<DenseDecomposableStatisticVector<float64>>> create(const DenseDecomposableStatisticVector<float64> &statisticVector, const CompleteIndexVector &indexVector) const override¶
Creates a new instance of the class
IRuleEvaluationthat allows to calculate the predictions of rules that predict for all available outputs, based on the gradients and Hessians that are stored by aDenseDecomposableStatisticVector<float64>.- Parameters:
statisticVector – A reference to an object of type
DenseDecomposableStatisticVector<float64>. This vector is only used to identify the function that is able to deal with this particular type of vector via function overloadingindexVector – A reference to an object of the type
CompleteIndexVectorthat provides access to the indices of the outputs for which the rules may predict
- Returns:
An unique pointer to an object of type
IRuleEvaluationthat has been created
-
virtual std::unique_ptr<IRuleEvaluation<DenseDecomposableStatisticVector<float64>>> create(const DenseDecomposableStatisticVector<float64> &statisticVector, const PartialIndexVector &indexVector) const override¶
Creates a new instance of the class
IRuleEvaluationthat allows to calculate the predictions of rules that predict for a subset of the available outputs, based on the gradients and Hessians that are stored by aDenseDecomposableStatisticVector<float64>.- Parameters:
statisticVector – A reference to an object of type
DenseDecomposableStatisticVector<float64>. This vector is only used to identify the function that is able to deal with this particular type of vector via function overloadingindexVector – A reference to an object of the type
PartialIndexVectorthat provides access to the indices of the outputs for which the rules may predict
- Returns:
An unique pointer to an object of type
IRuleEvaluationthat has been created
-
virtual std::unique_ptr<IRuleEvaluation<SparseDecomposableStatisticVector<float32, uint32>>> create(const SparseDecomposableStatisticVector<float32, uint32> &statisticVector, const CompleteIndexVector &indexVector) const override¶
Creates a new instance of the class
IRuleEvaluationthat allows to calculate the predictions of rules that predict for all available outputs, based on the gradients and Hessians that are stored by aSparseDecomposableStatisticVector<float32, uint32>.- Parameters:
statisticVector – A reference to an object of type
SparseDecomposableStatisticVector<float32, uint32>. This vector is only used to identify the function that is able to deal with this particular type of vector via function overloadingindexVector – A reference to an object of the type
CompleteIndexVectorthat provides access to the indices of the outputs for which the rules may predict
- Returns:
An unique pointer to an object of type
IRuleEvaluationthat has been created
-
virtual std::unique_ptr<IRuleEvaluation<SparseDecomposableStatisticVector<float32, uint32>>> create(const SparseDecomposableStatisticVector<float32, uint32> &statisticVector, const PartialIndexVector &indexVector) const override¶
Creates a new instance of the class
IRuleEvaluationthat allows to calculate the predictions of rules that predict for a subset of the available outputs, based on the gradients and Hessians that are stored by aSparseDecomposableStatisticVector<float32, uint32>.- Parameters:
statisticVector – A reference to an object of type
SparseDecomposableStatisticVector<float32, uint32>. This vector is only used to identify the function that is able to deal with this particular type of vector via function overloadingindexVector – A reference to an object of the type
PartialIndexVectorthat provides access to the indices of the outputs for which the rules may predict
- Returns:
An unique pointer to an object of type
IRuleEvaluationthat has been created
-
virtual std::unique_ptr<IRuleEvaluation<SparseDecomposableStatisticVector<float32, float32>>> create(const SparseDecomposableStatisticVector<float32, float32> &statisticVector, const CompleteIndexVector &indexVector) const override¶
Creates a new instance of the class
IRuleEvaluationthat allows to calculate the predictions of rules that predict for all available outputs, based on the gradients and Hessians that are stored by aSparseDecomposableStatisticVector<float32, float32>.- Parameters:
statisticVector – A reference to an object of type
SparseDecomposableStatisticVector<float32, float32>. This vector is only used to identify the function that is able to deal with this particular type of vector via function overloadingindexVector – A reference to an object of the type
CompleteIndexVectorthat provides access to the indices of the outputs for which the rules may predict
- Returns:
An unique pointer to an object of type
IRuleEvaluationthat has been created
-
virtual std::unique_ptr<IRuleEvaluation<SparseDecomposableStatisticVector<float32, float32>>> create(const SparseDecomposableStatisticVector<float32, float32> &statisticVector, const PartialIndexVector &indexVector) const override¶
Creates a new instance of the class
IRuleEvaluationthat allows to calculate the predictions of rules that predict for a subset of the available outputs, based on the gradients and Hessians that are stored by aSparseDecomposableStatisticVector<float32, float32>.- Parameters:
statisticVector – A reference to an object of type
SparseDecomposableStatisticVector<float32, float32>. This vector is only used to identify the function that is able to deal with this particular type of vector via function overloadingindexVector – A reference to an object of the type
PartialIndexVectorthat provides access to the indices of the outputs for which the rules may predict
- Returns:
An unique pointer to an object of type
IRuleEvaluationthat has been created
-
virtual std::unique_ptr<IRuleEvaluation<SparseDecomposableStatisticVector<float64, uint32>>> create(const SparseDecomposableStatisticVector<float64, uint32> &statisticVector, const CompleteIndexVector &indexVector) const override¶
Creates a new instance of the class
IRuleEvaluationthat allows to calculate the predictions of rules that predict for all available outputs, based on the gradients and Hessians that are stored by aSparseDecomposableStatisticVector<float64, uint32>.- Parameters:
statisticVector – A reference to an object of type
SparseDecomposableStatisticVector<float64, uint32>. This vector is only used to identify the function that is able to deal with this particular type of vector via function overloadingindexVector – A reference to an object of the type
CompleteIndexVectorthat provides access to the indices of the outputs for which the rules may predict
- Returns:
An unique pointer to an object of type
IRuleEvaluationthat has been created
-
virtual std::unique_ptr<IRuleEvaluation<SparseDecomposableStatisticVector<float64, uint32>>> create(const SparseDecomposableStatisticVector<float64, uint32> &statisticVector, const PartialIndexVector &indexVector) const override¶
Creates a new instance of the class
IRuleEvaluationthat allows to calculate the predictions of rules that predict for a subset of the available outputs, based on the gradients and Hessians that are stored by aSparseDecomposableStatisticVector<float64, uint32>.- Parameters:
statisticVector – A reference to an object of type
SparseDecomposableStatisticVector<float64, uint32>. This vector is only used to identify the function that is able to deal with this particular type of vector via function overloadingindexVector – A reference to an object of the type
PartialIndexVectorthat provides access to the indices of the outputs for which the rules may predict
- Returns:
An unique pointer to an object of type
IRuleEvaluationthat has been created
-
virtual std::unique_ptr<IRuleEvaluation<SparseDecomposableStatisticVector<float64, float32>>> create(const SparseDecomposableStatisticVector<float64, float32> &statisticVector, const CompleteIndexVector &indexVector) const override¶
Creates a new instance of the class
IRuleEvaluationthat allows to calculate the predictions of rules that predict for all available outputs, based on the gradients and Hessians that are stored by aSparseDecomposableStatisticVector<float64, float32>.- Parameters:
statisticVector – A reference to an object of type
SparseDecomposableStatisticVector<float64, float32>. This vector is only used to identify the function that is able to deal with this particular type of vector via function overloadingindexVector – A reference to an object of the type
CompleteIndexVectorthat provides access to the indices of the outputs for which the rules may predict
- Returns:
An unique pointer to an object of type
IRuleEvaluationthat has been created
-
virtual std::unique_ptr<IRuleEvaluation<SparseDecomposableStatisticVector<float64, float32>>> create(const SparseDecomposableStatisticVector<float64, float32> &statisticVector, const PartialIndexVector &indexVector) const override¶
Creates a new instance of the class
IRuleEvaluationthat allows to calculate the predictions of rules that predict for a subset of the available outputs, based on the gradients and Hessians that are stored by aSparseDecomposableStatisticVector<float64, float32>.- Parameters:
statisticVector – A reference to an object of type
SparseDecomposableStatisticVector<float64, float32>. This vector is only used to identify the function that is able to deal with this particular type of vector via function overloadingindexVector – A reference to an object of the type
PartialIndexVectorthat provides access to the indices of the outputs for which the rules may predict
- Returns:
An unique pointer to an object of type
IRuleEvaluationthat has been created
-
DecomposableDynamicPartialRuleEvaluationFactory(float32 threshold, float32 exponent, float32 l1RegularizationWeight, float32 l2RegularizationWeight)¶
-
class DecomposableDynamicPartialRuleEvaluationFactory : public boosting::ISparseDecomposableRuleEvaluationFactory¶