| CategoricalEntailmentEnsembleOptimizationContext Constructor |
Initializes a new instance of the
CategoricalEntailmentEnsembleOptimizationContext class
aimed to train an ensemble of categorical entailments by optimizing the
specified objective function,
with the given range of iterations, and
probability smoothing coefficient.
Namespace:
Novacta.Analytics.Advanced
Assembly:
Novacta.Analytics (in Novacta.Analytics.dll) Version: 2.0.0
Syntax public CategoricalEntailmentEnsembleOptimizationContext(
Func<DoubleMatrix, double> objectiveFunction,
List<int> featureCategoryCounts,
int numberOfResponseCategories,
int numberOfCategoricalEntailments,
bool allowEntailmentPartialTruthValues,
double probabilitySmoothingCoefficient,
OptimizationGoal optimizationGoal,
int minimumNumberOfIterations,
int maximumNumberOfIterations
)
Public Sub New (
objectiveFunction As Func(Of DoubleMatrix, Double),
featureCategoryCounts As List(Of Integer),
numberOfResponseCategories As Integer,
numberOfCategoricalEntailments As Integer,
allowEntailmentPartialTruthValues As Boolean,
probabilitySmoothingCoefficient As Double,
optimizationGoal As OptimizationGoal,
minimumNumberOfIterations As Integer,
maximumNumberOfIterations As Integer
)
public:
CategoricalEntailmentEnsembleOptimizationContext(
Func<DoubleMatrix^, double>^ objectiveFunction,
List<int>^ featureCategoryCounts,
int numberOfResponseCategories,
int numberOfCategoricalEntailments,
bool allowEntailmentPartialTruthValues,
double probabilitySmoothingCoefficient,
OptimizationGoal optimizationGoal,
int minimumNumberOfIterations,
int maximumNumberOfIterations
)
new :
objectiveFunction : Func<DoubleMatrix, float> *
featureCategoryCounts : List<int> *
numberOfResponseCategories : int *
numberOfCategoricalEntailments : int *
allowEntailmentPartialTruthValues : bool *
probabilitySmoothingCoefficient : float *
optimizationGoal : OptimizationGoal *
minimumNumberOfIterations : int *
maximumNumberOfIterations : int -> CategoricalEntailmentEnsembleOptimizationContext
Parameters
- objectiveFunction
- Type: SystemFuncDoubleMatrix, Double
The function to be optimized.
- featureCategoryCounts
- Type: System.Collections.GenericListInt32
A list whose length equals the number of features on which
are based the premises of the categorical entailments to be searched.
At a given position, the list stores the number of categories in
the corresponding feature variable.
- numberOfResponseCategories
- Type: SystemInt32
The number of categories in
the feature variable about which is defined the conclusions
of the categorical entailments to be searched.
- numberOfCategoricalEntailments
- Type: SystemInt32
The number of categorical entailments to be selected.
- allowEntailmentPartialTruthValues
- Type: SystemBoolean
If set to true signals that the truth value of a sampled
categorical entailment must be equal to the homogeneity
of the probability distribution from which its conclusion has been
drawn. Otherwise, the truth value is unity.
- probabilitySmoothingCoefficient
- Type: SystemDouble
A coefficient to define the smoothing scheme for the
probabilities of the Cross-Entropy parameters
exploited by this context.
- optimizationGoal
- Type: Novacta.Analytics.AdvancedOptimizationGoal
A constant to specify if the function
must be minimized or maximized.
- minimumNumberOfIterations
- Type: SystemInt32
The minimum number of iterations
required by this context.
- maximumNumberOfIterations
- Type: SystemInt32
The maximum number of iterations
allowed by this context.
Exceptions Exception | Condition |
---|
ArgumentNullException | objectiveFunction is null.
-or- featureCategoryCounts is null.
|
ArgumentException | optimizationGoal is not a field of
OptimizationGoal.
-or- minimumNumberOfIterations is greater than
maximumNumberOfIterations.
|
ArgumentOutOfRangeException | probabilitySmoothingCoefficient is not
in the open interval between 0 and 1.
-or- featureCategoryCounts is empty.
-or- featureCategoryCounts has negative or zero entries.
-or- numberOfCategoricalEntailments is not positive.
-or- minimumNumberOfIterations is
not positive.
-or- maximumNumberOfIterations is
not positive.
|
Remarks
It is assumed that the objectiveFunction
will accept row
vectors as valid representations of an argument.
As discussed by Rubinstein and Kroese,
Remark 5.2, p. 189[1]
,
typical values for probabilitySmoothingCoefficient
are between .7 and 1 (excluded).
Bibliography
[1]
Rubinstein, R.Y. and Kroese, D.P., The Cross-Entropy Method, A unified Approach to Combinatorial Optimization, Monte-Carlo Simulation, and Machine Learning, Springer, New York. (2004)
See Also