What is Difference Between Flatten() and Dense() Layers in Convolutional Neural Network?
Flatten as the name implies, converts your multidimensional matrices (Batch.Size x Img.W x Img.H x Kernel.Size) to a nice single 2-dimensional matrix: (Batch.Size x (Img.W x Img.H x Kernel.Size)). During backpropagation it also converts back your delta of size (Batch.Size x (Img.W x Img.H x Kernel.Size)) to the original (Batch.Size x Img.W x Img.H x Kernel.Size).
Dense layer is of course the standard fully connected layer.
I Have Serious Doubt Between Them. Can Anyone Please Elaborate With Examples and Some Ideas.