- The term deep learning (DL) refers to artificial neural networks (ANN) in which the number of layers is high.
- DL is rather a family of algorithms, including convolutional neural network (CNN), recurrent neural network (RNN), long short-time memory (LSTM), stacked autoencoders (SAE) and many others.
- classic ANN differs from CNN in the way the neurons are connected between each other: neurons are fully connected in the former case (this means that each of the neurons in one layer is connected to each of the neurons of the next layer); in the latter case, only a small group of neurons in one layer are connected to a small group of neurons in the next layer.
This makes CNN faster (due to the reduced number of connections) and more robust to overfitting (due to the reduced number of neurons).
If you are interested in this topic, my suggestion is to start with these free courses:
- Neural Networks and Deep Learning - https://www.coursera.org/learn/neural-networks-deep-learning?specialization=deep-learning
Dear Luigi Borzí , thank you so much for your reply. I really appreciate your explanation about the differentiation between CNN, ANN, and DL. I have done my master's thesis using deep learning techniques (Dropout and DropConnect). However, I didn't go further into CNN and its concept. For this reason, I wanted to know whether there is a huge difference between them or not.
Deep learning refers to neural networks with more than 3 layers. .
CNN's are one of the types of Ann's (artificial neural networks) that are specifically used for image data. It uses filters to perform convolution operation at each convolution layer.
CNN's were popularized by Yann lecun in 1990s with lenet and further by Alexnet in 2012.
Traditional Ann's are called feed forward nerual network where the stacked layer of neurons have dense connections (fully connected).
Dear Mohammad Khalid Pandit , thanks a lot for your answer. I really appreciate it. I was just curious about the differentiation between ANN and CNN because I want to get deep into them. I will start with that link and then with a whole course about it.
DL is a learning type in terms of neural network learning. In the sense of neural network introduction, a single hidden layer neural network with a non-linear activation function can approximate a function(see for universal approximation theorem). However, this is not usually correct in practice. In years, innovations were brought to neural networks with the advent of powerful hardware and the surge in big data. Then, the depth of the networks is increased thereby dubbing the neural networks as deep neural networks. Deep learning emerges as a result of this type of networks. On the other hand, ANN is a general form and name of neural networks, and neural networks and artificial neural networks can be used interchangeably. Convolutional Neural Networks are some kind of neural networks. In simple, they are the same with signal processing filters since they use filters as well, however, there are some differences from the filters. These CNN filter weights are learned, unlike conventional filters. On the other hand, architecture of CNNs is different than fully connected neural networks.
Bottomline, DL is a learning type of neural networks relevant to layer size, ANN is a general name, CNN is a specific type of an ANN.