So I have been reading about the topic for a while, but i did not find a clear answer why MLP and DNN are being used interchangeably even though there are some differences between them.

So far I have filtered some informations:

"The field of artificial neural networks is often just called neural networks or multi-layer perceptrons after perhaps the most useful type of neural network. A perceptron is a single neuron(input, output, weights, activation) model that was a precursor to larger neural networks.

MLP is a subset of DNN. While DNN can have loops and MLP are always feed-forward(a type of Neural Network architecture where the connections are "fed forward", do not form cycles (like in recurrent nets). Multilayer Perceptron is a finite acyclic graph, not like RNN and it's subsets which are cyclic in nature. MLP uses back propagation for training the network."

So what makes MLP different from DNN ?


1 Answer 1


You explained it already quite well. An MLP is a type of neural network, the same way CNNs, RNNs, and other types exist. DNN is an umbrella term for all types of neural networks.

The reason some literature may be using these terms interchangeably is likely due to the fact that MLPs are some of the oldest forms of neural networks and therefore, at the time the literature was written, MLPs and DNNs were ubiquitous.

  • $\begingroup$ I have read that this confusion is linked to old literature, but some people argue that the reason might the number of layers, or if they're fully connected or not, and the complexity of the models. Moreover on Kaggle people are having the liberty to use them interchangeably in different contexts. $\endgroup$
    – MXK
    Commented Jan 8, 2021 at 13:23
  • $\begingroup$ Another thing is, on SKLEARN, you can call and use MLP as simple as using a logistic regression, and it's called MLP indeed but you cannot create a DNN from it, but with other frameworks like Tensorflow and Pytorch you have the liberty to create a DNN from MLP's (one hidden layer). So i wanted to get to the bottom of this controversy. $\endgroup$
    – MXK
    Commented Jan 8, 2021 at 13:27
  • $\begingroup$ There is a good answer from 2017 on cross-validated: stats.stackexchange.com/questions/315402/… $\endgroup$ Commented Jan 8, 2021 at 14:59
  • $\begingroup$ what do they mean by "DNN can have loops" ?? $\endgroup$
    – MXK
    Commented Jan 9, 2021 at 10:23
  • 1
    $\begingroup$ Deep learning is a fast moving field and there isn't an incredible will to be as semantically rigid as other fields (statistics come to mind). But I can assure you that I have never seen people use DNN is any technical paper. Papers refer to the specific type of networks, and to be honest, I never ran into a situation where I didn't know what the author was referring to $\endgroup$ Commented Jan 9, 2021 at 14:23

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Not the answer you're looking for? Browse other questions tagged or ask your own question.