File head_type.hpp

namespace boosting
class IHeadConfig
#include <head_type.hpp>

Defines an interface for all classes that allow to configure the heads of the rules that should be induced by a rule learner.

Subclassed by boosting::AutomaticHeadConfig, boosting::CompleteHeadConfig, boosting::DynamicPartialHeadConfig, boosting::FixedPartialHeadConfig, boosting::SingleLabelHeadConfig

Public Functions

inline virtual ~IHeadConfig()
virtual std::unique_ptr<IStatisticsProviderFactory> createStatisticsProviderFactory(const IFeatureMatrix &featureMatrix, const IRowWiseLabelMatrix &labelMatrix, const ILabelWiseLossConfig &lossConfig) const = 0

Creates and returns a new object of type IStatisticsProviderFactory according to the specified configuration.

Parameters:
  • featureMatrix – A reference to an object of type IFeatureMatrix that provides access to the feature values of the training examples

  • labelMatrix – A reference to an object of type IRowWiseLabelMatrix that provides access to the labels of the training examples

  • lossConfig – A reference to an object of type ILabelWiseLossConfig that specifies the configuration of the loss function

Returns:

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

virtual std::unique_ptr<IStatisticsProviderFactory> createStatisticsProviderFactory(const IFeatureMatrix &featureMatrix, const IRowWiseLabelMatrix &labelMatrix, const ISparseLabelWiseLossConfig &lossConfig) const = 0

Creates and returns a new object of type IStatisticsProviderFactory according to the specified configuration.

Parameters:
  • featureMatrix – A reference to an object of type IFeatureMatrix that provides access to the feature values of the training examples

  • labelMatrix – A reference to an object of type IRowWiseLabelMatrix that provides access to the labels of the training examples

  • lossConfig – A reference to an object of type ISparseLabelWiseLossConfig that specifies the configuration of the loss function

Returns:

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

virtual std::unique_ptr<IStatisticsProviderFactory> createStatisticsProviderFactory(const IFeatureMatrix &featureMatrix, const IRowWiseLabelMatrix &labelMatrix, const IExampleWiseLossConfig &lossConfig, const Blas &blas, const Lapack &lapack) const = 0

Creates and returns a new object of type IStatisticsProviderFactory according to the specified configuration.

Parameters:
  • featureMatrix – A reference to an object of type IFeatureMatrix that provides access to the feature values of the training examples

  • labelMatrix – A reference to an object of type IRowWiseLabelMatrix that provides access to the labels of the training examples

  • lossConfig – A reference to an object of type IExampleWiseLossConfig that specifies the configuration of the loss function

  • 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 IStatisticsProviderFactory that has been created

virtual bool isPartial() const = 0

Returns, whether the heads of rules are partial, i.e., they predict for a subset of the available labels, or not.

Returns:

True, if the heads of rules are partial, false otherwise

virtual bool isSingleLabel() const = 0

Returns whether the rule heads predict for a single label or not.

Returns:

True, if the rule heads predict for a single label, false otherwise