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(ReadableProperty<IRegularizationConfig> l1RegularizationConfig, ReadableProperty<IRegularizationConfig> l2RegularizationConfig)
Parameters:
  • l1RegularizationConfig – A ReadableProperty that allows to access the IRegularizationConfig that stores the configuration of the L1 regularization

  • l2RegularizationConfig – A ReadableProperty that allows to access the IRegularizationConfig that stores the configuration of the L2 regularization

virtual std::unique_ptr<IDecomposableRuleEvaluationFactory> createDecomposableCompleteRuleEvaluationFactory() const override

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

Returns:

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

virtual std::unique_ptr<ISparseDecomposableRuleEvaluationFactory> createDecomposableFixedPartialRuleEvaluationFactory(float32 outputRatio, uint32 minOutputs, uint32 maxOutputs) const override

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

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

  • minOutputs – The minimum number of outputs for which the rule heads should predict

  • maxOutputs – The maximum number of outputs for which the rule heads should predict

Returns:

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

virtual std::unique_ptr<ISparseDecomposableRuleEvaluationFactory> createDecomposableDynamicPartialRuleEvaluationFactory(float32 threshold, float32 exponent) const override

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

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

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

Returns:

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

virtual std::unique_ptr<INonDecomposableRuleEvaluationFactory> createNonDecomposableCompleteRuleEvaluationFactory(const BlasFactory &blasFactory, const LapackFactory &lapackFactory) const override

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

Parameters:
  • blasFactory – A reference to an object of type BlasFactory that allows to create objects for executing BLAS routines

  • lapackFactory – A reference to an object of type LapackFactory that allows to create objects for executing LAPACK routines

Returns:

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

virtual std::unique_ptr<INonDecomposableRuleEvaluationFactory> createNonDecomposableFixedPartialRuleEvaluationFactory(float32 outputRatio, uint32 minOutputs, uint32 maxOutputs, const BlasFactory &blasFactory, const LapackFactory &lapackFactory) const override

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

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

  • minOutputs – The minimum number of outputs for which the rule heads should predict

  • maxOutputs – The maximum number of outputs for which the rule heads should predict

  • blasFactory – A reference to an object of type BlasFactory that allows to create objects for executing BLAS routines

  • lapackFactory – A reference to an object of type LapackFactory that allows to create objects for executing LAPACK routines

Returns:

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

virtual std::unique_ptr<INonDecomposableRuleEvaluationFactory> createNonDecomposableDynamicPartialRuleEvaluationFactory(float32 threshold, float32 exponent, const BlasFactory &blasFactory, const LapackFactory &lapackFactory) const override

Creates and returns a new object of type INonDecomposableRuleEvaluationFactory 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

  • blasFactory – A reference to an object of type BlasFactory that allows to create objects for executing BLAS routines

  • lapackFactory – A reference to an object of type LapackFactory that allows to create objects for executing LAPACK routines

Returns:

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

Private Members

const ReadableProperty<IRegularizationConfig> l1RegularizationConfig_
const ReadableProperty<IRegularizationConfig> l2RegularizationConfig_