File probability_calibration_joint.hpp

class IJointProbabilityCalibrationModel
#include <probability_calibration_joint.hpp>

Defines an interface for all classes that implement a model for the calibration of joint probabilities.

Subclassed by IIsotonicProbabilityCalibrationModel, INoProbabilityCalibrationModel

Public Functions

inline virtual ~IJointProbabilityCalibrationModel()
virtual float64 calibrateJointProbability(uint32 labelVectorIndex, float64 jointProbability) const = 0

Calibrates a joint probability.

Parameters:
  • labelVectorIndex – The index of the label vector, the probability is predicted for

  • jointProbability – The joint probability to be calibrated

Returns:

The calibrated probability

class IJointProbabilityCalibrator : public IProbabilityCalibrator<IJointProbabilityCalibrationModel>
#include <probability_calibration_joint.hpp>

Defines an interface for all classes that implement a method for fitting models for the calibration of joint probabilities.

Public Functions

inline virtual ~IJointProbabilityCalibrator() override
class IJointProbabilityCalibratorFactory
#include <probability_calibration_joint.hpp>

Defines an interface for all classes that allow to create instances of the type IJointProbabilityCalibrator.

Subclassed by NoJointProbabilityCalibratorFactory

Public Functions

inline virtual ~IJointProbabilityCalibratorFactory()
virtual std::unique_ptr<IJointProbabilityCalibrator> create(const IMarginalProbabilityCalibrationModel &marginalProbabilityCalibrationModel, const LabelVectorSet *labelVectorSet) const = 0

Creates and returns a new object of type IJointProbabilityCalibrator.

Parameters:
  • marginalProbabilityCalibrationModel – A reference to an object of type IMarginalProbabilityCalibrationModel that may be used for the calibration of marginal probabilities

  • labelVectorSet – A pointer to an object of type LabelVectorSet that stores all known label vectors or a null pointer, if no such object is available

Returns:

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

class IJointProbabilityCalibratorConfig
#include <probability_calibration_joint.hpp>

Defines an interface for all classes that allow to configure a method for fitting a model for the calibration of joint probabilities.

Subclassed by NoJointProbabilityCalibratorConfig

Public Functions

inline virtual ~IJointProbabilityCalibratorConfig()
virtual bool shouldUseHoldoutSet() const = 0

Returns whether a holdout set should be used, if available, or not.

Returns:

True, if a holdout set should be used, false otherwise

virtual bool isLabelVectorSetNeeded() const = 0

Returns whether the calibrator needs access to the label vectors that are encountered in the training data or not.

Returns:

True, if the calibrator needs access to the label vectors that are encountered in the training data, false otherwise

virtual std::unique_ptr<IJointProbabilityCalibratorFactory> createJointProbabilityCalibratorFactory() const = 0

Creates and returns a new object of template type IJointProbabilityCalibratorFactory according to the configuration.

Returns:

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