File instance_sampling_without_replacement.hpp

class IInstanceSamplingWithoutReplacementConfig
#include <instance_sampling_without_replacement.hpp>

Defines an interface for all classes that allow to configure a method for selecting a subset of the available training examples without replacement.

Subclassed by InstanceSamplingWithoutReplacementConfig

Public Functions

inline virtual ~IInstanceSamplingWithoutReplacementConfig()
virtual float32 getSampleSize() const = 0

Returns the fraction of examples that are included in a sample.

Returns:

The fraction of examples that are included in a sample

virtual IInstanceSamplingWithoutReplacementConfig &setSampleSize(float32 sampleSize) = 0

Sets the fraction of examples that should be included in a sample.

Parameters:

sampleSize – The fraction of examples that should be included in a sample, e.g., a value of 0.6 corresponds to 60 % of the available training examples. Must be in (0, 1)

Returns:

A reference to an object of type IInstanceSamplingWithoutReplacementConfig that allows further configuration of the method for sampling instances

virtual uint32 getMinSamples() const = 0

Returns the minimum number of examples that are included in a sample.

Returns:

The minimum number of examples that are included in a sample

virtual IInstanceSamplingWithoutReplacementConfig &setMinSamples(uint32 minSamples) = 0

Sets the minimum number of examples that should be included in a sample.

Parameters:

minSamples – The minimum number of examples that should be included in a sample. Must be at least 1

Returns:

A reference to an object of type IInstanceSamplingWithoutReplacementConfig that allows further configuration of the method for sampling instances

virtual uint32 getMaxSamples() const = 0

Returns the maximum number of examples that are included in a sample.

Returns:

The maximum number of examples that are included in a sample

virtual IInstanceSamplingWithoutReplacementConfig &setMaxSamples(uint32 maxSamples) = 0

Sets the maximum number of examples that should be included in a sample.

Parameters:

maxSamples – The maximum number of examples that should be included in a sample. Must be at the value returned by getMaxSamples or 0, if the number of examples should not be restricted

Returns:

A reference to an object of type IInstanceSamplingWithoutReplacementConfig that allows further configuration of the method for sampling instances

class InstanceSamplingWithoutReplacementConfig : public IClassificationInstanceSamplingConfig, public IRegressionInstanceSamplingConfig, public IInstanceSamplingWithoutReplacementConfig
#include <instance_sampling_without_replacement.hpp>

Allows to configure a method for selecting a subset of the available training examples without replacement.

Public Functions

InstanceSamplingWithoutReplacementConfig(ReadableProperty<RNGConfig> rngConfig)
Parameters:

rngConfig – A ReadableProperty that provides access to the RNGConfig that stores the configuration of random number generators

virtual float32 getSampleSize() const override

Returns the fraction of examples that are included in a sample.

Returns:

The fraction of examples that are included in a sample

virtual IInstanceSamplingWithoutReplacementConfig &setSampleSize(float32 sampleSize) override

Sets the fraction of examples that should be included in a sample.

Parameters:

sampleSize – The fraction of examples that should be included in a sample, e.g., a value of 0.6 corresponds to 60 % of the available training examples. Must be in (0, 1)

Returns:

A reference to an object of type IInstanceSamplingWithoutReplacementConfig that allows further configuration of the method for sampling instances

virtual uint32 getMinSamples() const override

Returns the minimum number of examples that are included in a sample.

Returns:

The minimum number of examples that are included in a sample

virtual IInstanceSamplingWithoutReplacementConfig &setMinSamples(uint32 minSamples) override

Sets the minimum number of examples that should be included in a sample.

Parameters:

minSamples – The minimum number of examples that should be included in a sample. Must be at least 1

Returns:

A reference to an object of type IInstanceSamplingWithoutReplacementConfig that allows further configuration of the method for sampling instances

virtual uint32 getMaxSamples() const override

Returns the maximum number of examples that are included in a sample.

Returns:

The maximum number of examples that are included in a sample

virtual IInstanceSamplingWithoutReplacementConfig &setMaxSamples(uint32 maxSamples) override

Sets the maximum number of examples that should be included in a sample.

Parameters:

maxSamples – The maximum number of examples that should be included in a sample. Must be at the value returned by getMaxSamples or 0, if the number of examples should not be restricted

Returns:

A reference to an object of type IInstanceSamplingWithoutReplacementConfig that allows further configuration of the method for sampling instances

virtual std::unique_ptr<IClassificationInstanceSamplingFactory> createClassificationInstanceSamplingFactory() const override

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

Returns:

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

virtual std::unique_ptr<IRegressionInstanceSamplingFactory> createRegressionInstanceSamplingFactory() const override

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

Returns:

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

Private Members

const ReadableProperty<RNGConfig> rngConfig_
float32 sampleSize_
uint32 minSamples_
uint32 maxSamples_