Introduction To Deep Convolutional Neural Networks: March 2016
Introduction To Deep Convolutional Neural Networks: March 2016
Introduction To Deep Convolutional Neural Networks: March 2016
net/publication/298263303
CITATIONS READS
3 1,859
1 author:
Asifullah Khan
Pakistan Institute of Engineering and Applied Sciences
223 PUBLICATIONS 3,496 CITATIONS
SEE PROFILE
Some of the authors of this publication are also working on these related projects:
All content following this page was uploaded by Asifullah Khan on 08 November 2016.
2
Biological neuron
1 0 1
0 1 0
1 0 1
Filter/kernel
6
Convolution
7
Convolution
8
Convolution
9
Convolution
10
Convolution
Wconv = Wimg – Wfilt + 1
Hconv = Himg – Hfilt + 1
The step of
the mask is
known as a
stride
13
Pooling
14
One of our Proposed CNN
Architecture;
Inupt Preprocessing Automatic feature extraction Classification
HPF Feature maps Feature maps Pooled maps Feature maps F5:512 Output layer
2084x2084x3 80x80x3 C1:128@37x37 C2:256@16x16 S3:256@8x8 C4:512@3x3
15
Filters/Kernels/Mask/Feature-extractor
Static/hand-made Filters
16
Motivation for CNN
Invariant Features: Detection and classification
independent of pose, scale, illumination, occlusion
and clutter
Dynamic Feature Extraction: how could an artificial
vision system learn appropriate internal
representations automatically, the way humans seem
to by simply looking at the world?
Reduced Learnable Parameters compared to a
BackPropagator.
Hierarchical Learning
17
Motivation for CNN; Invariance
Goal
Detection and classification independent of pose,
scale, illumination, occlusion and clutter
SIFT$ Spin$image$
Face
HoG$ RIFT$
Textons$ GLOH$
Slide$Credit:$Honglak$Lee$
SIFT$ Spin$image$
HoG$ RIFT$
Textons$ GLOH$
Slide$Credit:$Honglak$Lee$
Computer$vision$features$
SIFT$ Spin$image$
Face
Can we automatically learn
features
HoG$ RIFT$
from data?
Textons$ GLOH$
Slide$Credit:$Honglak$Lee$
22
Motivation for CNN; Less Parameters
Motivation for CNN; Hierarchical Learning
Hubel/Wiesel Architecture
D. Hubel and T. Wiesel (Nobel Prize 1981)
Visual cortex consists of a hierarchy of simple,
complex, and hyper-complex cells
26
Motivation for CNN; Why use hierarchical
multi-layered models?
visual scenes are hierarchically organized
27
Motivation for CNN; Why use hierarchical
multi-layered models?
• biological vision is hierarchically organized
Deep residual learning for image recognition, Noorul Wahab, (26 Aug. 2016) 29
Motivation for CNN; Hierarchical Representation
Example
30
Working of Convolutional Neural
Networks
31
Working of Convolutional Neural
Network
Feed-forward feature extraction:
1. Convolve input with filters
2. Non-linearity (ReLU)
3. Spatial pooling
4. Normalization
Supervised training of convolutional filters by back-
propagating classification error.
A CNN can be both Generative and Discriminative
Learning Mechanism
32
Working of Convolutional Neural
Network
• Feed-forward feature extraction:
33
Working of Convolutional Neural
Network
CNN is a type of feed-forward artificial neural
network.
Individual neurons are tiled in such a way that they
respond to overlapping regions in the visual field
The lower layers obtain low-level features (like pixels,
edges, lines and corners) while the higher layers
obtain high-level features (like shapes)
The more layers the network has, the higher-level
features it will get
34
Working of Convolutional Neural
Network; Convolutional layer
Unlike a hand-coded convolution kernel (Sobel,
Prewitt, Roberts), in a CNN, the parameters of each
convolution kernel are trained by the
backpropagation algorithm
Convolution operators extract different features of
the input
There are many convolution kernels in each layer,
and each kernel is replicated over the entire image
with the same parameters (weights and bias)
35
Working of Convolutional Neural
Network: Convolutional layer
38
Working of Convolutional Neural
Network: Pooling Layer
41
Visualizing activations in CN cont..
Visualizing activations
42
Deep CNN recent examples:
GoogLeNet (ILSVRC 2014 winner)
Inception module
Szegedy, et al (2015)
43
Deep CNN recent examples:
ResNet (ILSVRC 2015 winner)
Cars
Model Two
Motorcycles
Task Two
Deep Neural Network and Transfer Learning 47
Convolutional Neural Networks
To ponder on:
Computational cost vs. performance/results
What should be the filter sizes at different layers?
How much pooling?
How many neurons to keep in different layers?
How many layers to employ?
How to increase generalization of a CNN?
Use a good cross-validation startegy
Use pruning (Dropout, Swapout, etc.)
Use unsupervised pre-training
48
References
• http://ufldl.stanford.edu/tutorial/supervised/FeatureExtractio
nUsingConvolution/
• Tutorial on Deep Learning and Applications Honglak Lee
(University of Michigan)
• http://docs.gimp.org/en/plug-in-convmatrix.html
• https://developer.apple.com/library/ios/documentation/Perfo
rmance/Conceptual/vImage/ConvolutionOperations/Convolut
ionOperations.html
• http://www.slideshare.net/AhmedMahany/convolution-
neural-networks
• http://www.robots.ox.ac.uk/~vgg/research/text/index.html
49
References cont…
• http://learning.eng.cam.ac.uk/pub/Public/Turner/Teaching/ml-
lecture-3-slides.pdf
• LeCun, Yann, et al. "Gradient-based learning applied to document
recognition." Proceedings of the IEEE 86.11 (1998): 2278-2324.
• Zeiler, Matthew D., and Rob Fergus. "Visualizing and understanding
convolutional networks." Computer vision–ECCV 2014. Springer
International Publishing, 2014. 818-833.
• Bengio, Yoshua. "Learning deep architectures for AI." Foundations
and trends® in Machine Learning 2.1 (2009): 1-127.
• Szegedy, Christian, et al. "Going deeper with
convolutions." Proceedings of the IEEE Conference on Computer
Vision and Pattern Recognition. 2015.
• He, Kaiming, et al. "Deep Residual Learning for Image
Recognition." arXiv preprint arXiv:1512.03385 (2015).
50
View publication stats