In this post, we will cover the differences between a Fully connected neural network and a Convolutional neural network. We will focus on understanding the differences in terms of the model architecture and results obtained on the MNIST dataset.
Fully connected neural network
- A fullyconnected neural network consists of a series of fullyconnected layers that connect every neuron in one layer to every neuron in the other layer.
- The major advantage of fully connected networks is that they are “structure agnostic” i.e. there are no special assumptions needed to be made about the input.
- While being structure agnostic makes fully connected networks very broadly applicable, such networks do tend to have weaker performance than special-purpose networks tuned to the structure of a problem space.
Multilayer Deep Fully Connected Network, Image Source
Convolutional Neural Network
- CNN architectures make the explicit assumption that the inputs are images, which allows encoding certain properties into the model architecture.
- A simple CNN is a sequence of layers, and every layer of a CNN transforms one volume of activations to another through a differentiable function. Three main types of layers are used to build CNN architecture: Convolutional Layer, Pooling Layer, and Fully-Connected Layer.
To know more about the basic fundamentals related to CNN, check out my earlier blogs on Convolutions and Pooling.
#neural-networks #computer-vision #keras #deep-learning #machine-learning