Understanding DenseNet for classification
DenseNet is a fascinating architecture of neural networks that is designed to be flexible, memory efficient, effective, and also relatively simple. There are really a lot of things to like about DenseNet.
The DenseNet architecture is designed to build very deep networks, solving the problem of the vanishing gradient with techniques derived from ResNet. Our implementation will reach 50 layers, but you can easily build a deeper network. In fact, Keras has three types of DenseNet trained on ImageNet, with 121, 169, and 201 layers, respectively. DenseNet also solves the problem of dead neurons, when you have neurons that are basically not active.The next section will show a high-level overview of DenseNet.
DenseNet from a bird's-eye view
For the moment, we will focus on DenseNet as a classifier, which is not what we are going to implement, but it is useful as a concept to start to understand it. The high-level architecture of DenseNet...