File predictor_probability_output_wise.hpp

namespace boosting
class IOutputWiseProbabilityPredictorConfig
#include <predictor_probability_output_wise.hpp>

Defines an interface for all classes that allow to configure a predictor that predicts label-wise probabilities for given query examples by transforming the individual scores that are predicted for each label into probabilities.

Subclassed by boosting::OutputWiseProbabilityPredictorConfig

Public Functions

inline virtual ~IOutputWiseProbabilityPredictorConfig()
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 IOutputWiseProbabilityPredictorConfig &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 IOutputWiseProbabilityPredictorConfig that allows further configuration of the predictor

class OutputWiseProbabilityPredictorConfig : public boosting::IOutputWiseProbabilityPredictorConfig, public IProbabilityPredictorConfig
#include <predictor_probability_output_wise.hpp>

Allows to configure a predictor that predicts label-wise probabilities for given query examples by transforming the individual scores that are predicted for each label into probabilities.

Public Functions

OutputWiseProbabilityPredictorConfig(ReadableProperty<IClassificationLossConfig> lossConfig, ReadableProperty<IMultiThreadingConfig> multiThreadingConfig)
Parameters:
  • lossConfig – A ReadableProperty that allows to access the IClassificationLossConfig that stores the configuration of the loss function

  • multiThreadingConfig – A ReadableProperty that allows to access the IMultiThreadingConfig that stores the configuration of the multi-threading behavior that should be used to predict for several query examples in parallel

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 IOutputWiseProbabilityPredictorConfig &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 IOutputWiseProbabilityPredictorConfig that allows further configuration of the predictor

std::unique_ptr<IProbabilityPredictorFactory> createPredictorFactory(const IRowWiseFeatureMatrix &featureMatrix, uint32 numOutputs) const override

See also

IProbabilityPredictorConfig::createPredictorFactory

bool isLabelVectorSetNeeded() const override

See also

IPredictorConfig::isLabelVectorSetNeeded

Private Members

std::unique_ptr<IMarginalProbabilityCalibrationModel> noMarginalProbabilityCalibrationModelPtr_
const ReadableProperty<IClassificationLossConfig> lossConfig_
const ReadableProperty<IMultiThreadingConfig> multiThreadingConfig_