# What is the difference between multi-layer perceptron and generalized feed forward neural network?

I'm reading this paper:An artificial neural network model for rainfall forecasting in Bangkok, Thailand. The author created 6 models, 2 of which have the following architecture:

model B: Simple multilayer perceptron with Sigmoid activation function and 4 layers in which the number of nodes are: 5-10-10-1, respectively.

model C: Generalized feedforward with Sigmoid activation function and 4 layers in which the number of nodes are: 5-10-10-1, respectively.

In the Results and discussion section of the paper, the author concludes that :

Model C enhanced the performance compared to Model A and B. This suggests that the generalized feedforward network performed better than the simple multilayer perceptron network in this study

Is there a difference between these 2 architectures?

• If you are looking for intuition why it might work better as given in the paper, i'll add a link to my answer – DuttaA Sep 8 '18 at 10:22

Well you missed the diagram they provided for the GFNN. Here is the diagram from their page:

Clearly you can see what the GFNN does, unlike MLP the inputs are applied to the hidden layers also. While in MLP the only way information can travel to hidden layers is through previous layers, in GFNN the input information is directly available to the hidden layers.

I might add this type of connections are used in ResNet CNN, which increased its performance dramatically compared to other CNN architectures.

• Thanks for your answer. Is it right if I ask here that if Keras deep learning library is able to do this? I know that Keras is able to create MLPs and I have done some projects with these types of models. But this generalized feed forward NN seems to be awesome. – hyTuev Sep 8 '18 at 12:32
• I don't know about keras but it is certainly possible in Tensorflow, which makes me assume that it'll also be possible in keras.. Anyways you can ask it a new question but it definitely seems possible. – DuttaA Sep 8 '18 at 12:42

I guess the best way to understand it is to read its paper called A generalized feedforward neural network architecture for classification and regression.

This article presents a new generalized feedforward neural network (GFNN) architecture for pattern classification and regression. The GFNN architecture uses as the basic computing unit a generalized shunting neuron (GSN) model, which includes as special cases the perceptron and the shunting inhibitory neuron. GSNs are capable of forming complex, nonlinear decision boundaries. This allows the GFNN architecture to easily learn some complex pattern classification problems. In this article the GFNNs are applied to several benchmark classification problems, and their performance is compared to the performances of SIANNs and multilayer perceptrons. Experimental results show that a single GSN can outperform both the SIANN and MLP networks.

I have to add this point that the paper is so much old. People usually use Relu nonlinearity these days. Also take a look at here.

• I do not think most people will be able to read the paper due to 'Elseiver' membership – DuttaA Sep 8 '18 at 10:22
• That's why I've provided the second link. – Media Sep 8 '18 at 10:49
• Thank you very much for the answer and the Enlightening link to the method they used. – hyTuev Sep 8 '18 at 12:36