You are here: Start » AVL.NET » AVL.MLP_Train(AvlNet.MlpModel, float[][], float[][], float[][], float[][], int, float, float, int?, AvlNet.MlpModel, AvlNet.Profile, AvlNet.Profile)

AVL.MLP_Train(AvlNet.MlpModel, float[][], float[][], float[][], float[][], int, float, float, int?, AvlNet.MlpModel, AvlNet.Profile, AvlNet.Profile)

Creates and trains multilayer perceptron classifier.

Namespace:AvlNet
Assembly:AVL.NET.dll

Syntax


public static void MLP_Train(
	AvlNet.MlpModel inMlpModel,
	float[][] inInputVectorArray,
	float[][] inResponseVectorArray,
	float[][] inTestInputVectorArray,
	float[][] inTestResponseVectorArray,
	int inIterationCount,
	float inLearningRate,
	float inMomentum,
	int? inRandomSeed,
	out AvlNet.MlpModel outMlpModel,
	out AvlNet.Profile diagErrorChartLearning,
	out AvlNet.Profile diagErrorChartTesting
)

Parameters

inMlpModel
Type: AvlNet.MlpModel
Initialized MLP model
inInputVectorArray
Type: System.Single
Array of features used to train model
inResponseVectorArray
Type: System.Single
Array of answers which classifier should get.
inTestInputVectorArray
Type: System.Single
Array of features used to test classifier during training process, or null.
inTestResponseVectorArray
Type: System.Single
Array of answers used to test classifier during training process, or null.
inIterationCount
Type: System.Int32
Learning iteration count
inLearningRate
Type: System.Single
Learning factor
inMomentum
Type: System.Single
Learning momentum ratio
inRandomSeed
Type: System.Nullable<System.Int32>
Number used as starting random seed, or null.
outMlpModel
Type: AvlNet.MlpModel
Trained MlpModel
diagErrorChartLearning
Type: AvlNet.Profile
Mean error of testing results data during learning process
diagErrorChartTesting
Type: AvlNet.Profile
Mean error during learning process

Description

The filter trains multilayer perceptron classifier. The inInputVectorArray contains an array of data used to train classifier.

The size of input vector should be constant for each provided input array. Each input vector size must be the same as input count provided in MLP_Init filter during classifier initialization.

The inResponseVectorArray contains answer for each data vector provided in inInputVectorArray. Size of all response vectors should be the same and equal to output count set in MLP_Init.

The inLearningRate determines step size during following function gradient. Too big step size may cause miss of optimization function minimum. Small values may cause learning process too long.

The parameter inMomentum defines how learning step results should depend on previous step results.

The inIterationCount specifies the number of iterations of the learning process.

Errors

Error type Description
DomainError Incorrect or uninitialized MlpModel in MLP_Train.
DomainError Using uninitialized MlpModel in MLP_Train
DomainError Empty inInputVectorArray in MLP_Train
DomainError Empty inResponseVectorArray in MLP_Train
DomainError Empty feature array on input in MLP_Train.
DomainError Different sizes of feature vector array and answer vector array on input in MLP_Train.
DomainError Different sizes of feature vectors in inInputVectorArray in MLP_Train.
DomainError Different sizes of answer vectors in inResponseVectorArray in MLP_Train.
DomainError Wrong size of feature vector in inTestInputVectorArray in MLP_Train.
DomainError Wrong size of answer vector in inTestResponseVectorArray in MLP_Train.

See also