Convolutional Neural Networks
A convolutional neural network (CNN, or ConvNet) is a type of feed-forward artificial neural network in which the connectivity pattern between its neurons is inspired by the organization of the animal visual cortex. Individual cortical neurons respond to stimuli in a restricted region of space known as the receptive field. The receptive fields of different neurons partially overlap such that they tile the visual field.
Statistical Invariance — Things that don’t change over time or space.
‘Same’ padding equation:
out_height = ceil(float(in_height)/ float(strides))
out_width = ceil(float(in_width)/ float(strides))
‘Valid’ padding equation:
out_height = ceil(float(in_height — filter — height + 1)/ float(strides))
out_weight = ceil(float(in_width — filter — width + 1)/ float(strides))
- Max Pooling:
— Parameter — free!
— Often more accurate
— More expensive
— More hyperparamters — pooling size and pooling strides
- Average Pooing:
— Y = mean(Xi)
1 x 1 convolutions: 1 x 1 convolutions ⇔ Matrix multipliers
At each layer of your convNet yu make a choice. Have a pooling operation or convolution or 1 x 1, and on on top concatenate the output of each other. We choose in such a way so as to decrease the parameters so that the model performs better than a simple convolution.
Alright that’s it for now! Thank you for spending your time. Cheers!