File label_binning_auto.hpp

namespace boosting
class AutomaticLabelBinningConfig : public boosting::ILabelBinningConfig
#include <label_binning_auto.hpp>

Allows to configure a method that automatically decides whether label binning should be used or not.

Public Functions

AutomaticLabelBinningConfig(const std::unique_ptr<IRegularizationConfig> &l1RegularizationConfigPtr, const std::unique_ptr<IRegularizationConfig> &l2RegularizationConfigPtr)
Parameters:
  • l1RegularizationConfigPtr – A reference to an unique pointer that stores the configuration of the L1 regularization

  • l2RegularizationConfigPtr – A reference to an unique pointer that stores the configuration of the L2 regularization

virtual std::unique_ptr<ILabelWiseRuleEvaluationFactory> createLabelWiseCompleteRuleEvaluationFactory() const override

Creates and returns a new object of type ILabelWiseRuleEvaluationFactory that allows to calculate the predictions of complete rules according to the specified configuration.

Returns:

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

virtual std::unique_ptr<ISparseLabelWiseRuleEvaluationFactory> createLabelWiseFixedPartialRuleEvaluationFactory(float32 labelRatio, uint32 minLabels, uint32 maxLabels) const override

Creates and returns a new object of type ISparseLabelWiseRuleEvaluationFactory that allows to calculate the prediction of partial rules, which predict for a predefined number of labels, according to the specified configuration.

Parameters:
  • labelRatio – A percentage that specifies for how many labels the rule heads should predict

  • minLabels – The minimum number of labels for which the rule heads should predict

  • maxLabels – The maximum number of labels for which the rule heads should predict

Returns:

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

virtual std::unique_ptr<ISparseLabelWiseRuleEvaluationFactory> createLabelWiseDynamicPartialRuleEvaluationFactory(float32 threshold, float32 exponent) const override

Creates and returns a new object of type ISparseLabelWiseRuleEvaluationFactory that allows to calculate the prediction of partial rules, which predict for a subset of the available labels that is determined dynamically, according to the specified configuration.

Parameters:
  • threshold – A threshold that affects for how many labels the rule heads should predict

  • exponent – An exponent that is used to weigh the estimated predictive quality for individual labels

Returns:

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

virtual std::unique_ptr<IExampleWiseRuleEvaluationFactory> createExampleWiseCompleteRuleEvaluationFactory(const Blas &blas, const Lapack &lapack) const override

Creates and returns a new object of type IExampleWiseRuleEvaluationFactory that allows to calculate the predictions of complete rules according to the specified configuration.

Parameters:
  • blas – A reference to an object of type Blas that allows to execute BLAS routines

  • lapack – A reference to an object of type Lapack that allows to execute LAPACK routines

Returns:

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

virtual std::unique_ptr<IExampleWiseRuleEvaluationFactory> createExampleWiseFixedPartialRuleEvaluationFactory(float32 labelRatio, uint32 minLabels, uint32 maxLabels, const Blas &blas, const Lapack &lapack) const override

Creates and returns a new object of type IExampleWiseRuleEvaluationFactory that allows to calculate the predictions of partial rules, which predict for a predefined number of labels, according to the specified configuration.

Parameters:
  • labelRatio – A percentage that specifies for how many labels the rule heads should predict

  • minLabels – The minimum number of labels for which the rule heads should predict

  • maxLabels – The maximum number of labels for which the rule heads should predict

  • blas – A reference to an object of type Blas that allows to execute BLAS routines

  • lapack – A reference to an object of type Lapack that allows to execute LAPACK routines

Returns:

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

virtual std::unique_ptr<IExampleWiseRuleEvaluationFactory> createExampleWiseDynamicPartialRuleEvaluationFactory(float32 threshold, float32 exponent, const Blas &blas, const Lapack &lapack) const override

Creates and returns a new object of type IExampleWiseRuleEvaluationFactory that allows to calculate the predictions of partial rules, which predict for a subset of the available labels that is determined dynamically, according to the specified configuration.

Parameters:
  • threshold – A threshold that affects for how many labels the rule heads should predict

  • exponent – An exponent that is used to weigh the estimated predictive quality for individual labels

  • blas – A reference to an object of type Blas that allows to execute BLAS routines

  • lapack – A reference to an object of type Lapack that allows to execute LAPACK routines

Returns:

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

Private Members

const std::unique_ptr<IRegularizationConfig> &l1RegularizationConfigPtr_
const std::unique_ptr<IRegularizationConfig> &l2RegularizationConfigPtr_