Skip to content
nickgillian edited this page Aug 15, 2016 · 3 revisions

#Multi Layer Perceptron (MLP)

##Description The Multi Layer Perceptron (MLP) algorithm is a powerful form of an Artificial Neural Network that is commonly used for regression (and can also be used for classification ).

The MLP algorithm is a supervised learning algorithm that can be used for both classification and regression for any type of N-dimensional signal.

The MLP algorithm is part of the GRT regression modules.

##Advantages The MLP algorithm is a very good algorithm to use for the regression and mapping. It can be used to map an N-dimensional input signal to an M-dimensional output signal, this mapping can also be non-linear.

##Disadvantages The main limitation of the MLP algorithm is that, because of the way it is trained, it can not guarantee that the minima it stops at during training is the global minima. The MLP algorithm can, therefore, get stuck in a local minima. One option for (somewhat) mitigating this is to train the MLP algorithm several times, using a different random starting position each time, and then pick the model that results in the best RMS error. The number of random training iterations can be set using the setNumRandomTrainingIterations(UINT numRandomTrainingIterations) method, setting this value to a higher number of random training iterations (i.e. 20) may result in a better classification or regression model, however, this will increase the total training time.

Another limitation of the MLP algorithm is that the number of Hidden Neurons must be set by the user, setting this value too low may result in the MLP model underfitting while setting this value too high may result in the MLP model overfitting.

##Things To Know You should always enable scaling with the MLP, as this will give you much better results.

##Training Data Format You should use the ClassificationData data structure to train the MLP for classification and the RegressionData data structure to train the MLP for regression.

##Example Code MLP Example