Multilayer Perceptron (MLP) was first introduced in the 1980s and works as an entry point in the direction of complex neural networks where input data travels over several layers of artificial neurons [1]}. In MLP, every node is associated with all neurons in the subsequent layer, making it a fully connected neural network. Input and output layers exist with many hidden layers (i.e., at least three or more layers in total) with a bi-directional propagation (i.e., forward and backward). In forward propagation, inputs are multiplied with weights and sent to the activation function, and in backpropagation, the weights are adjusted to reduce the loss [2]}. Weights in MLP are machine-learned values from neural networks that are self-adjusted according to the difference between predicted outputs versus training inputs. In MLP, nonlinear activation functions are followed by softmax as an output layer activation function. Although MLP is comparatively complex to design, maintain, and slow (depends on the number of hidden layers) [3]}, it has several applications, such as speech recognition, machine translation, and complex classification. Fig. REF  shows a simple presentation of MLP, consisting of an input layer, a hidden layer and an output layer. Except for the input nodes, each node is a neuron that uses a nonlinear activation function.
<FIGURE>