Member-only story
DenseNet Architecture Explained with Code Examples
Using Keras and TensorFlow
Densenet is the last architecture we will explore in this series of articles about convolutional networks and image classification. If you already have some knowledge about classic Machine Learning, you can start here, and read all articles in the same order they were published. If you are a total beginner, don’t worry, you can buy my book from Amazon where you will find a complete guide to start with Classic Machine Learning, even if you don’t know how to code.
DenseNet, short for Densely Connected Convolutional Networks, is a deep learning architecture for image classification tasks introduced in 2017 with a paper with the same name.
The core idea behind DenseNet is the Dense Blocks, where the output of a layer is connected to each other layer that follows it in the same block. Therefore, a Dense Block consists of multiple layers, where each layer receives inputs from all previous layers and passes its own feature map to all subsequent layers.
Each layer within the Dense Block can also include a Bottleneck Layer, which is a 1x1 convolution used to reduce the number of channels, and this way reduces the computational cost. It helps in dimensionality reduction before the subsequent 3x3 convolution.