File rule_evaluation_decomposable_sparse.hpp

namespace boosting
class ISparseDecomposableRuleEvaluationFactory : public boosting::IDecomposableRuleEvaluationFactory
#include <rule_evaluation_decomposable_sparse.hpp>

Defines an interface for all factories that allow to create instances of the type IRuleEvaluation that allow to calculate the predictions of rules, based on the gradients and Hessians that have been calculated according to a non-decomposable loss function and are stored using a sparse data structure.

Subclassed by boosting::DecomposableDynamicPartialBinnedRuleEvaluationFactory, boosting::DecomposableDynamicPartialRuleEvaluationFactory, boosting::DecomposableFixedPartialBinnedRuleEvaluationFactory, boosting::DecomposableFixedPartialRuleEvaluationFactory, boosting::DecomposableSingleOutputRuleEvaluationFactory

Public Functions

inline virtual ~ISparseDecomposableRuleEvaluationFactory() override
virtual std::unique_ptr<IRuleEvaluation<SparseDecomposableStatisticVector<float32, uint32>>> create(const SparseDecomposableStatisticVector<float32, uint32> &statisticVector, const CompleteIndexVector &indexVector) const = 0

Creates a new instance of the class IRuleEvaluation that allows to calculate the predictions of rules that predict for all available outputs, based on the gradients and Hessians that are stored by a SparseDecomposableStatisticVector<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 overloading

  • indexVector – A reference to an object of the type CompleteIndexVector that provides access to the indices of the outputs for which the rules may predict

Returns:

An unique pointer to an object of type IRuleEvaluation that has been created

virtual std::unique_ptr<IRuleEvaluation<SparseDecomposableStatisticVector<float32, uint32>>> create(const SparseDecomposableStatisticVector<float32, uint32> &statisticVector, const PartialIndexVector &indexVector) const = 0

Creates a new instance of the class IRuleEvaluation that 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 a SparseDecomposableStatisticVector<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 overloading

  • indexVector – A reference to an object of the type PartialIndexVector that provides access to the indices of the outputs for which the rules may predict

Returns:

An unique pointer to an object of type IRuleEvaluation that has been created

virtual std::unique_ptr<IRuleEvaluation<SparseDecomposableStatisticVector<float32, float32>>> create(const SparseDecomposableStatisticVector<float32, float32> &statisticVector, const CompleteIndexVector &indexVector) const = 0

Creates a new instance of the class IRuleEvaluation that allows to calculate the predictions of rules that predict for all available outputs, based on the gradients and Hessians that are stored by a SparseDecomposableStatisticVector<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 overloading

  • indexVector – A reference to an object of the type CompleteIndexVector that provides access to the indices of the outputs for which the rules may predict

Returns:

An unique pointer to an object of type IRuleEvaluation that has been created

virtual std::unique_ptr<IRuleEvaluation<SparseDecomposableStatisticVector<float32, float32>>> create(const SparseDecomposableStatisticVector<float32, float32> &statisticVector, const PartialIndexVector &indexVector) const = 0

Creates a new instance of the class IRuleEvaluation that 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 a SparseDecomposableStatisticVector<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 overloading

  • indexVector – A reference to an object of the type PartialIndexVector that provides access to the indices of the outputs for which the rules may predict

Returns:

An unique pointer to an object of type IRuleEvaluation that has been created

virtual std::unique_ptr<IRuleEvaluation<SparseDecomposableStatisticVector<float64, uint32>>> create(const SparseDecomposableStatisticVector<float64, uint32> &statisticVector, const CompleteIndexVector &indexVector) const = 0

Creates a new instance of the class IRuleEvaluation that allows to calculate the predictions of rules that predict for all available outputs, based on the gradients and Hessians that are stored by a SparseDecomposableStatisticVector<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 overloading

  • indexVector – A reference to an object of the type CompleteIndexVector that provides access to the indices of the outputs for which the rules may predict

Returns:

An unique pointer to an object of type IRuleEvaluation that has been created

virtual std::unique_ptr<IRuleEvaluation<SparseDecomposableStatisticVector<float64, uint32>>> create(const SparseDecomposableStatisticVector<float64, uint32> &statisticVector, const PartialIndexVector &indexVector) const = 0

Creates a new instance of the class IRuleEvaluation that 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 a SparseDecomposableStatisticVector<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 overloading

  • indexVector – A reference to an object of the type PartialIndexVector that provides access to the indices of the outputs for which the rules may predict

Returns:

An unique pointer to an object of type IRuleEvaluation that has been created

virtual std::unique_ptr<IRuleEvaluation<SparseDecomposableStatisticVector<float64, float32>>> create(const SparseDecomposableStatisticVector<float64, float32> &statisticVector, const CompleteIndexVector &indexVector) const = 0

Creates a new instance of the class IRuleEvaluation that allows to calculate the predictions of rules that predict for all available outputs, based on the gradients and Hessians that are stored by a SparseDecomposableStatisticVector<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 overloading

  • indexVector – A reference to an object of the type CompleteIndexVector that provides access to the indices of the outputs for which the rules may predict

Returns:

An unique pointer to an object of type IRuleEvaluation that has been created

virtual std::unique_ptr<IRuleEvaluation<SparseDecomposableStatisticVector<float64, float32>>> create(const SparseDecomposableStatisticVector<float64, float32> &statisticVector, const PartialIndexVector &indexVector) const = 0

Creates a new instance of the class IRuleEvaluation that 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 a SparseDecomposableStatisticVector<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 overloading

  • indexVector – A reference to an object of the type PartialIndexVector that provides access to the indices of the outputs for which the rules may predict

Returns:

An unique pointer to an object of type IRuleEvaluation that has been created

virtual std::unique_ptr<IRuleEvaluation<DenseDecomposableStatisticVector<float32>>> create(const DenseDecomposableStatisticVector<float32> &statisticVector, const CompleteIndexVector &indexVector) const = 0

Creates a new instance of the class IRuleEvaluation that allows to calculate the predictions of rules that predict for all available outputs, based on the gradients and Hessians that are stored by a DenseDecomposableStatisticVector<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 overloading

  • indexVector – A reference to an object of the type CompleteIndexVector that provides access to the indices of the outputs for which the rules may predict

Returns:

An unique pointer to an object of type IRuleEvaluation that has been created

virtual std::unique_ptr<IRuleEvaluation<DenseDecomposableStatisticVector<float32>>> create(const DenseDecomposableStatisticVector<float32> &statisticVector, const PartialIndexVector &indexVector) const = 0

Creates a new instance of the class IRuleEvaluation that 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 a DenseDecomposableStatisticVector<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 overloading

  • indexVector – A reference to an object of the type PartialIndexVector that provides access to the indices of the outputs for which the rules may predict

Returns:

An unique pointer to an object of type IRuleEvaluation that has been created

virtual std::unique_ptr<IRuleEvaluation<DenseDecomposableStatisticVector<float64>>> create(const DenseDecomposableStatisticVector<float64> &statisticVector, const CompleteIndexVector &indexVector) const = 0

Creates a new instance of the class IRuleEvaluation that allows to calculate the predictions of rules that predict for all available outputs, based on the gradients and Hessians that are stored by a DenseDecomposableStatisticVector<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 overloading

  • indexVector – A reference to an object of the type CompleteIndexVector that provides access to the indices of the outputs for which the rules may predict

Returns:

An unique pointer to an object of type IRuleEvaluation that has been created

virtual std::unique_ptr<IRuleEvaluation<DenseDecomposableStatisticVector<float64>>> create(const DenseDecomposableStatisticVector<float64> &statisticVector, const PartialIndexVector &indexVector) const = 0

Creates a new instance of the class IRuleEvaluation that 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 a DenseDecomposableStatisticVector<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 overloading

  • indexVector – A reference to an object of the type PartialIndexVector that provides access to the indices of the outputs for which the rules may predict

Returns:

An unique pointer to an object of type IRuleEvaluation that has been created