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. |
