File predictor_binary_example_wise.hpp

namespace boosting
class IExampleWiseBinaryPredictorConfig
#include <predictor_binary_example_wise.hpp>

Defines an interface for all classes that allow to configure a predictor that predicts known label vectors for given query examples by comparing the predicted regression scores or probability estimates to the label vectors encountered in the training data.

Subclassed by boosting::ExampleWiseBinaryPredictorConfig

Public Functions

inline virtual ~IExampleWiseBinaryPredictorConfig()
virtual bool isBasedOnProbabilities() const = 0

Returns whether binary predictions are derived from probability estimates rather than regression scores or not.

Returns:

True, if binary predictions are derived from probability estimates rather than regression scores, false otherwise

virtual IExampleWiseBinaryPredictorConfig &setBasedOnProbabilities(bool basedOnProbabilities) = 0

Sets whether binary predictions should be derived from probability estimates rather than regression scores or not.

Parameters:

basedOnProbabilities – True, if binary predictions should be derived from probability estimates rather than regression scores, false otherwise

Returns:

A reference to an object of type IExampleWiseBinaryPredictorConfig that allows further configuration of the predictor

virtual bool isProbabilityCalibrationModelUsed() const = 0

Returns whether a model for the calibration of probabilities is used, if available, or not.

Returns:

True, if a model for the calibration of probabilities is used, if available, false otherwise

virtual IExampleWiseBinaryPredictorConfig &setUseProbabilityCalibrationModel(bool useProbabilityCalibrationModel) = 0

Sets whether a model for the calibration of probabilities should be used, if available, or not.

Parameters:

useProbabilityCalibrationModel – True, if a model for the calibration of probabilities should be used, if available, false otherwise

Returns:

A reference to an object of type IExampleWiseBinaryPredictorConfig that allows further configuration of the predictor

class ExampleWiseBinaryPredictorConfig : public boosting::IExampleWiseBinaryPredictorConfig, public IBinaryPredictorConfig
#include <predictor_binary_example_wise.hpp>

Allows to configure a predictor that predicts known label vectors for given query examples by comparing the predicted regression scores or probability estimates to the label vectors encountered in the training data.

Public Functions

ExampleWiseBinaryPredictorConfig(const std::unique_ptr<ILossConfig> &lossConfigPtr, const std::unique_ptr<IMultiThreadingConfig> &multiThreadingConfigPtr)
Parameters:
  • lossConfigPtr – A reference to an unique pointer that stores the configuration of the loss function

  • multiThreadingConfigPtr – A reference to an unique pointer that stores the configuration of the multi-threading behavior that should be used to predict for several query examples in parallel

virtual bool isBasedOnProbabilities() const override

Returns whether binary predictions are derived from probability estimates rather than regression scores or not.

Returns:

True, if binary predictions are derived from probability estimates rather than regression scores, false otherwise

virtual IExampleWiseBinaryPredictorConfig &setBasedOnProbabilities(bool basedOnProbabilities) override

Sets whether binary predictions should be derived from probability estimates rather than regression scores or not.

Parameters:

basedOnProbabilities – True, if binary predictions should be derived from probability estimates rather than regression scores, false otherwise

Returns:

A reference to an object of type IExampleWiseBinaryPredictorConfig that allows further configuration of the predictor

virtual bool isProbabilityCalibrationModelUsed() const override

Returns whether a model for the calibration of probabilities is used, if available, or not.

Returns:

True, if a model for the calibration of probabilities is used, if available, false otherwise

virtual IExampleWiseBinaryPredictorConfig &setUseProbabilityCalibrationModel(bool useProbabilityCalibrationModel) override

Sets whether a model for the calibration of probabilities should be used, if available, or not.

Parameters:

useProbabilityCalibrationModel – True, if a model for the calibration of probabilities should be used, if available, false otherwise

Returns:

A reference to an object of type IExampleWiseBinaryPredictorConfig that allows further configuration of the predictor

std::unique_ptr<IBinaryPredictorFactory> createPredictorFactory(const IRowWiseFeatureMatrix &featureMatrix, uint32 numLabels) const override

See also

IPredictorConfig::createPredictorFactory

std::unique_ptr<ISparseBinaryPredictorFactory> createSparsePredictorFactory(const IRowWiseFeatureMatrix &featureMatrix, uint32 numLabels) const override

See also

IBinaryPredictorConfig::createSparsePredictorFactory

bool isLabelVectorSetNeeded() const override

See also

IPredictorConfig::isLabelVectorSetNeeded

Private Members

bool basedOnProbabilities_
std::unique_ptr<IMarginalProbabilityCalibrationModel> noMarginalProbabilityCalibrationModelPtr_
std::unique_ptr<IJointProbabilityCalibrationModel> noJointProbabilityCalibrationModelPtr_
const std::unique_ptr<ILossConfig> &lossConfigPtr_
const std::unique_ptr<IMultiThreadingConfig> &multiThreadingConfigPtr_