This presentation provides an introduction to the deeper aspects of deep learning starting from basics. The first part of the presentation begins with the definition of an artificial neuron and goes up to a description of the back-propagation algorithm. The second part deals with autoencoders, convolutional neural networks and allied concepts. In the third part, the deeper aspects of the deep learning methodology are presented by discussing special algorithms LeNet, AlexNet, GoogLeNet and FaceNet.
1. Neurons Multilayer NN’s Back-propagation Autoencoders CNN’s Popular CNN’s Conclusion
Deep into Deep Learning
Dr V N Krishnachandran
23 January 2024
Dr V N Krishnachandran
Deep into Deep Learning
2. Neurons Multilayer NN’s Back-propagation Autoencoders CNN’s Popular CNN’s Conclusion
Outline I
1 Neurons
Activation functions: Examples
Artificial neuron: Examples
2 Multi-layer neural networks
General problem
3 Back-propagation algorithm
Outline of the algorithm
Implementation in R
4 Autoencoders
Under-complete autoencoder
Sparse autoencoder
Denoising autoencoder
Dr V N Krishnachandran
Deep into Deep Learning
3. Neurons Multilayer NN’s Back-propagation Autoencoders CNN’s Popular CNN’s Conclusion
Outline II
Contractive autoencoder
5 Convolutional neural networks (CNN’s)
Convoution in mathematics
Convoution in neural networks
Pooling
Building blocks of CNN
6 Popular CNN’s
LeNet
AlexNet
GoogLeNet
FaceNet
7 Conclusion
Dr V N Krishnachandran
Deep into Deep Learning
4. Neurons Multilayer NN’s Back-propagation Autoencoders CNN’s Popular CNN’s Conclusion
Neurons
Dr V N Krishnachandran
Deep into Deep Learning
5. Neurons Multilayer NN’s Back-propagation Autoencoders CNN’s Popular CNN’s Conclusion
Biological neuron
Dr V N Krishnachandran
Deep into Deep Learning
6. Neurons Multilayer NN’s Back-propagation Autoencoders CNN’s Popular CNN’s Conclusion
Artificial neuron
Dr V N Krishnachandran
Deep into Deep Learning
7. Neurons Multilayer NN’s Back-propagation Autoencoders CNN’s Popular CNN’s Conclusion
Artificial neuron
Dr V N Krishnachandran
Deep into Deep Learning
8. Neurons Multilayer NN’s Back-propagation Autoencoders CNN’s Popular CNN’s Conclusion
Activation functions: Examples
Activation functions: Examples
Dr V N Krishnachandran
Deep into Deep Learning
9. Neurons Multilayer NN’s Back-propagation Autoencoders CNN’s Popular CNN’s Conclusion
Activation functions: Examples
Activation function: Threshold function
ϕ(x) =
(
0 if x < 0
1 if x ≥ 0
Threshold function (Unit step function)
Dr V N Krishnachandran
Deep into Deep Learning
10. Neurons Multilayer NN’s Back-propagation Autoencoders CNN’s Popular CNN’s Conclusion
Activation functions: Examples
Activation function: Sigmoid (or) Logistic Function
Sigmoid (or) logistic function
Dr V N Krishnachandran
Deep into Deep Learning
11. Neurons Multilayer NN’s Back-propagation Autoencoders CNN’s Popular CNN’s Conclusion
Activation functions: Examples
Activation function: ReLU (Rectified linear unit)
ReLU (Rectified linear unit)
Dr V N Krishnachandran
Deep into Deep Learning
12. Neurons Multilayer NN’s Back-propagation Autoencoders CNN’s Popular CNN’s Conclusion
Activation functions: Examples
Activation function: tanh (Hyperbolic tangent function)
tanh (Hyperbolic tangent function)
Dr V N Krishnachandran
Deep into Deep Learning
13. Neurons Multilayer NN’s Back-propagation Autoencoders CNN’s Popular CNN’s Conclusion
Activation functions: Examples
Artificial neuron: Perceptron
If in an artificial neuronm the activation function is the threshold
function, the neuron is called a percptron. The perceptron was
invented in 1943 by Warren McCulloch and Walter Pitts.
Dr V N Krishnachandran
Deep into Deep Learning
14. Neurons Multilayer NN’s Back-propagation Autoencoders CNN’s Popular CNN’s Conclusion
Artificial neuron: Examples
Artificial neuron: Examples
Dr V N Krishnachandran
Deep into Deep Learning
15. Neurons Multilayer NN’s Back-propagation Autoencoders CNN’s Popular CNN’s Conclusion
Artificial neuron: Examples
Artificial neuron: Logical OR
x1 x2 x1 OR x2
0 0 0
0 1 1
1 0 1
1 1 1
Dr V N Krishnachandran
Deep into Deep Learning
16. Neurons Multilayer NN’s Back-propagation Autoencoders CNN’s Popular CNN’s Conclusion
Artificial neuron: Examples
Artificial neuron: Logical OR
(See next slide)
Dr V N Krishnachandran
Deep into Deep Learning
17. Neurons Multilayer NN’s Back-propagation Autoencoders CNN’s Popular CNN’s Conclusion
Artificial neuron: Examples
x1 x2 Output expression Output value
z = w0 + w1x1 + w2x2 y = f (z)
0 0 z = −0.5 + 1 × 0 + 1 × 0 = −0.5 0
0 1 z = −0.5 + 1 × 0 + 1 × 1 = 0.5 1
1 0 z = −0.5 + 1 × 1 + 1 × 0 = 0.5 1
1 1 z = −0.5 + 1 × 1 + 1 × 1 = 1.5 1
Dr V N Krishnachandran
Deep into Deep Learning
18. Neurons Multilayer NN’s Back-propagation Autoencoders CNN’s Popular CNN’s Conclusion
Artificial neuron: Examples
Artificial neuron: Logical AND
x1 x2 x1 AND x2
0 0 0
0 1 0
1 0 0
1 1 1
Dr V N Krishnachandran
Deep into Deep Learning
19. Neurons Multilayer NN’s Back-propagation Autoencoders CNN’s Popular CNN’s Conclusion
Artificial neuron: Examples
Artificial neuron: Logical AND
(See next slide)
Dr V N Krishnachandran
Deep into Deep Learning
20. Neurons Multilayer NN’s Back-propagation Autoencoders CNN’s Popular CNN’s Conclusion
Artificial neuron: Examples
x1 x2 Output expression Output value
z = w0 + w1x1 + w2x2 y = f (z)
0 0 z = −1.5 + 1 × 0 + 1 × 0 = −1.5 0
0 1 z = −1.5 + 1 × 0 + 1 × 1 = −0.5 0
1 0 z = −1.5 + 1 × 1 + 1 × 0 = −0.5 0
1 1 z = −1.5 + 1 × 1 + 1 × 1 = 0.5 1
Dr V N Krishnachandran
Deep into Deep Learning
21. Neurons Multilayer NN’s Back-propagation Autoencoders CNN’s Popular CNN’s Conclusion
Artificial neuron: Examples
Artificial neuron: Logical NOT
x NOT x
0 1
1 0
Dr V N Krishnachandran
Deep into Deep Learning
22. Neurons Multilayer NN’s Back-propagation Autoencoders CNN’s Popular CNN’s Conclusion
Artificial neuron: Examples
Artificial neuron: Logical XOR
x1 x2 x1 XOR x2
0 0 0
0 1 1
1 0 1
1 1 0
This function cannot be represented by a neuron.
However, it can be represented by a “multi-layer neuron”.
See next slide.
Dr V N Krishnachandran
Deep into Deep Learning
23. Neurons Multilayer NN’s Back-propagation Autoencoders CNN’s Popular CNN’s Conclusion
Artificial neuron: Examples
Logical XOR: Multi-layer neural network representation
Dr V N Krishnachandran
Deep into Deep Learning
24. Neurons Multilayer NN’s Back-propagation Autoencoders CNN’s Popular CNN’s Conclusion
Multi-layer neural networks
Dr V N Krishnachandran
Deep into Deep Learning
25. Neurons Multilayer NN’s Back-propagation Autoencoders CNN’s Popular CNN’s Conclusion
Multi-layer neural networks
Multi-layer neural network with two hidden layers.
First hidden layer has 4 nodes, second hidden layer has 3 nodes.
Dr V N Krishnachandran
Deep into Deep Learning
26. Neurons Multilayer NN’s Back-propagation Autoencoders CNN’s Popular CNN’s Conclusion
Multi-layer neural networks
Dr V N Krishnachandran
Deep into Deep Learning
27. Neurons Multilayer NN’s Back-propagation Autoencoders CNN’s Popular CNN’s Conclusion
General problem
General problem
Dr V N Krishnachandran
Deep into Deep Learning
28. Neurons Multilayer NN’s Back-propagation Autoencoders CNN’s Popular CNN’s Conclusion
General problem
General problem
Given the following data, find a neural network that outputs the
given output values for the given input values:
Input variables Output variables
x1 x2 · · · xn y1 y2 · · · ym
Values Values
x11 x21 · · · xn1 y11 y21 · · · ym1
x12 x22 · · · xn2 y12 y22 · · · ym2
x13 x23 · · · xn3 y13 y23 · · · ym3
· · · · · · · · · · · · · · · · · · · · · · · ·
x1N x2N · · · xnN y1N y2N · · · ymN
Dr V N Krishnachandran
Deep into Deep Learning
29. Neurons Multilayer NN’s Back-propagation Autoencoders CNN’s Popular CNN’s Conclusion
General problem
General problem
Global parameters
Number of hidden layers
Number of nodes in each of the hidden layers
Choice of the activation function
Loss function/Error estimate/Cost function
Let ŷij be the estimated value of the output variable yij . Then
Error estimate =
m
X
i=1
N
X
j=1
(ŷij − yij )2
.
Dr V N Krishnachandran
Deep into Deep Learning
30. Neurons Multilayer NN’s Back-propagation Autoencoders CNN’s Popular CNN’s Conclusion
General problem
General problem: Example
Find the weights wij -s such that the neural network outputs given
output values for given input values.
Dr V N Krishnachandran
Deep into Deep Learning
31. Neurons Multilayer NN’s Back-propagation Autoencoders CNN’s Popular CNN’s Conclusion
Back-propagation algorithm
Dr V N Krishnachandran
Deep into Deep Learning
32. Neurons Multilayer NN’s Back-propagation Autoencoders CNN’s Popular CNN’s Conclusion
Back-propagation algorithm
The backpropagation algorithm is an algorithm in which the error,
which is the difference between the current output of the neural
network and the desired output signal, is used to adjust the
weights in the output layer, and is then used to adjust the weights
in the hidden layers, always going back through the network
towards the inputs.
Dr V N Krishnachandran
Deep into Deep Learning
33. Neurons Multilayer NN’s Back-propagation Autoencoders CNN’s Popular CNN’s Conclusion
Back-propagation algorithm
Dr V N Krishnachandran
Deep into Deep Learning
34. Neurons Multilayer NN’s Back-propagation Autoencoders CNN’s Popular CNN’s Conclusion
Outline of the algorithm
Outline of the algorithm
Dr V N Krishnachandran
Deep into Deep Learning
35. Neurons Multilayer NN’s Back-propagation Autoencoders CNN’s Popular CNN’s Conclusion
Outline of the algorithm
Outline of the algorithm: Gradient descent
Gradient descent
The backpropagation algorithm makes use of the the direction of
the gradient descent to adjust the weights in various layers.
A simplified model of the error surface
showing the direction of gradient
Dr V N Krishnachandran
Deep into Deep Learning
36. Neurons Multilayer NN’s Back-propagation Autoencoders CNN’s Popular CNN’s Conclusion
Outline of the algorithm
Outline of the algorithm - I
Initially the weights are assigned at random.
Then the algorithm iterates through many cycles of two
processes until a stopping criterion is reached. Each cycle is
known as an epoch. Each epoch includes:
(Continued in the next slide.)
Dr V N Krishnachandran
Deep into Deep Learning
37. Neurons Multilayer NN’s Back-propagation Autoencoders CNN’s Popular CNN’s Conclusion
Outline of the algorithm
Outline of the algorithm - II
1 Forward phase
A forward phase in which the neurons are activated in
sequence from the input layer to the output layer, applying
each neuron’s weights and activation function along the way.
Upon reaching the final layer, an output signal is produced.
2 Backward phase
A backward phase in which the network’s output signal
resulting from the forward phase is compared to the true
target value in the training data. The difference is an error
that is propagated backwards in the network to modify the
connection weights between neurons and reduce future errors.
(Continued in the next slide.)
Dr V N Krishnachandran
Deep into Deep Learning
38. Neurons Multilayer NN’s Back-propagation Autoencoders CNN’s Popular CNN’s Conclusion
Outline of the algorithm
Outline of the algorithm - III
The technique used to determine how much a weight should
be changed is known as gradient descent method. At every
stage of the computation, the error is a function of the
weights. If we plot the error against the wights, we get a
higher dimensional analog of something like a curve or
surface. At any point on this surface, the gradient suggests
how steeply the error will be reduced or increased for a change
in the weight. The algorithm will attempt to change the
weights that result in the greatest reduction in error.
Dr V N Krishnachandran
Deep into Deep Learning
39. Neurons Multilayer NN’s Back-propagation Autoencoders CNN’s Popular CNN’s Conclusion
Implementation in R
Implementation in R
Dr V N Krishnachandran
Deep into Deep Learning
40. Neurons Multilayer NN’s Back-propagation Autoencoders CNN’s Popular CNN’s Conclusion
Implementation in R
Implementation in R: Step 1
Download R package from:
https://cran.r-project.org/bin/windows/base/
Install R package.
Start RGui or RStudio. User interface of RGui is shown in
next slide.
Dr V N Krishnachandran
Deep into Deep Learning
41. Neurons Multilayer NN’s Back-propagation Autoencoders CNN’s Popular CNN’s Conclusion
Implementation in R
Implementation in R: Step 2
Press Ctrl + L to clear the console window.
Dr V N Krishnachandran
Deep into Deep Learning
42. Neurons Multilayer NN’s Back-propagation Autoencoders CNN’s Popular CNN’s Conclusion
Implementation in R
Implementation in R: Step 3
Install neuralnet package by typing the following command
(after the prompt “>”)
install.packages(‘neuralnet’)
and pressing the Enter key. Wait for the package to be
installed.
Load the neuralnet package by issung the following
command:
library(neuralnet)
Dr V N Krishnachandran
Deep into Deep Learning
43. Neurons Multilayer NN’s Back-propagation Autoencoders CNN’s Popular CNN’s Conclusion
Implementation in R
Implementing neural network in R: Example
Problem
Construct a neural network with a single hidden layer having 2
nodes to represent the following data:
x1 x2 y
0 0 0
0 1 1
1 0 1
1 1 0
Dr V N Krishnachandran
Deep into Deep Learning
44. Neurons Multilayer NN’s Back-propagation Autoencoders CNN’s Popular CNN’s Conclusion
Implementation in R
Implementing neural network in R: Example
Issue the following commands:
> x1 <- c(0, 0, 1, 1)
> x2 <- c(0, 1, 0, 1)
> y <- c(0, 1, 1, 0)
> data <- data.frame(x1, x2, y)
> net <- neuralnet(y ~ x1 + x2, data, hidden = 2)
> plot(net)
The output is shown in the next slide.
Dr V N Krishnachandran
Deep into Deep Learning
45. Neurons Multilayer NN’s Back-propagation Autoencoders CNN’s Popular CNN’s Conclusion
Implementation in R
Implementation in R: Step 4
Dr V N Krishnachandran
Deep into Deep Learning
46. Neurons Multilayer NN’s Back-propagation Autoencoders CNN’s Popular CNN’s Conclusion
Autoencoders
Dr V N Krishnachandran
Deep into Deep Learning
47. Neurons Multilayer NN’s Back-propagation Autoencoders CNN’s Popular CNN’s Conclusion
Autoencoder: Idea
Dr V N Krishnachandran
Deep into Deep Learning
48. Neurons Multilayer NN’s Back-propagation Autoencoders CNN’s Popular CNN’s Conclusion
Autoencoders
An autoencoder is a type of artificial neural network used to learn
efficient codings of unlabeled data (unsupervised learning). An
autoencoder learns two functions: an encoding function that
transforms the input data, and a decoding function that recreates
the input data from the encoded representation. The autoencoder
learns an efficient representation (encoding) for a set of data,
typically for dimensionality reduction.
Dr V N Krishnachandran
Deep into Deep Learning
49. Neurons Multilayer NN’s Back-propagation Autoencoders CNN’s Popular CNN’s Conclusion
Autoencoders
Autoencoders are applied to many problems, including facial
recognition, feature detection, anomaly detection and acquiring the
meaning of words. Autoencoders are also generative models which
can randomly generate new data that is similar to the input data
(training data).
Dr V N Krishnachandran
Deep into Deep Learning
50. Neurons Multilayer NN’s Back-propagation Autoencoders CNN’s Popular CNN’s Conclusion
Autoencoder: Architecture
Dr V N Krishnachandran
Deep into Deep Learning
51. Neurons Multilayer NN’s Back-propagation Autoencoders CNN’s Popular CNN’s Conclusion
Autoencoder vs PCA
Autoencoder vs Principal Component Analysis (PCA)
Both autoencoder and PCA can be used for dimensionality
reduction.
Autoencoder works for both linear and non-linear surfaces,
whereas PCA only works for linear surfaces.
PCA is faster than autoencoder.
Autoencoders are more prone to get the condition of
overfitting of data than PCA,
Dr V N Krishnachandran
Deep into Deep Learning
52. Neurons Multilayer NN’s Back-propagation Autoencoders CNN’s Popular CNN’s Conclusion
Autoencoders: Different types
Dr V N Krishnachandran
Deep into Deep Learning
53. Neurons Multilayer NN’s Back-propagation Autoencoders CNN’s Popular CNN’s Conclusion
Under-complete autoencoder
Under-complete autoencoder
Under-complete autoencoders
Dr V N Krishnachandran
Deep into Deep Learning
54. Neurons Multilayer NN’s Back-propagation Autoencoders CNN’s Popular CNN’s Conclusion
Under-complete autoencoder
Under-complete autoencoder
Under-complete autoencoder
An under-complete autoencoder is one in which the number of
nodes in the hidden layer is much less is less than the number of
nodes in the input layer or the number of nodes in the output layer.
Dr V N Krishnachandran
Deep into Deep Learning
55. Neurons Multilayer NN’s Back-propagation Autoencoders CNN’s Popular CNN’s Conclusion
Sparse autoencoder
Sparse autoencoder
Sparse autoencoders
Dr V N Krishnachandran
Deep into Deep Learning
56. Neurons Multilayer NN’s Back-propagation Autoencoders CNN’s Popular CNN’s Conclusion
Sparse autoencoder
Sparse autoencoder
Sparse autoencoder
Sparse autoencoders are designed to be sensitive to specific types
of high-level features in the data, while being insensitive to most
other features. This is achieved by imposing a sparsity constraint
on the hidden units during training.
Dr V N Krishnachandran
Deep into Deep Learning
57. Neurons Multilayer NN’s Back-propagation Autoencoders CNN’s Popular CNN’s Conclusion
Sparse autoencoder
Sparse autoencoder
A sparse autoencoder with a single hidden layer. The hidden nodes
in bright yellow are activated, while the light yellow ones are
inactive. The activation depends on the input.
Dr V N Krishnachandran
Deep into Deep Learning
58. Neurons Multilayer NN’s Back-propagation Autoencoders CNN’s Popular CNN’s Conclusion
Sparse autoencoder
Sparse autoencoder
Dr V N Krishnachandran
Deep into Deep Learning
59. Neurons Multilayer NN’s Back-propagation Autoencoders CNN’s Popular CNN’s Conclusion
Denoising autoencoder
Denoising autoencoder
Denoising autoencoders
Dr V N Krishnachandran
Deep into Deep Learning
60. Neurons Multilayer NN’s Back-propagation Autoencoders CNN’s Popular CNN’s Conclusion
Denoising autoencoder
Denoising autoencoder
Denoising autoencoder
A denoising autoencoder is a modification on the autoencoder to
prevent the network learning the identity function. Specifically, if
the autoencoder is too big, then it can just learn the data, so the
output equals the input, and does not perform any useful
representation learning or dimensionality reduction. Denoising
autoencoders solve this problem by corrupting the input data on
purpose, adding noise or masking some of the input values.
Dr V N Krishnachandran
Deep into Deep Learning
61. Neurons Multilayer NN’s Back-propagation Autoencoders CNN’s Popular CNN’s Conclusion
Denoising autoencoder
Denoising autoencoder
Dr V N Krishnachandran
Deep into Deep Learning
62. Neurons Multilayer NN’s Back-propagation Autoencoders CNN’s Popular CNN’s Conclusion
Denoising autoencoder
Denoising autoencoder
Dr V N Krishnachandran
Deep into Deep Learning
63. Neurons Multilayer NN’s Back-propagation Autoencoders CNN’s Popular CNN’s Conclusion
Contractive autoencoder
Contractive autoencoder
Contractive autoencoders
Dr V N Krishnachandran
Deep into Deep Learning
64. Neurons Multilayer NN’s Back-propagation Autoencoders CNN’s Popular CNN’s Conclusion
Contractive autoencoder
Contractive autoencoder
Contractive encoder
The concept of contractive autoencoder is that, if the input data is
very similar then the encoded output of all those input data must
also be very similar. This is is achieved by imposing the condition
that the variation of the activations in the hidden layer with
respect to input data should be small.
Dr V N Krishnachandran
Deep into Deep Learning
65. Neurons Multilayer NN’s Back-propagation Autoencoders CNN’s Popular CNN’s Conclusion
Contractive autoencoder
Contractive autoencoder
Contractive encoder
Contractive autoencoder adds an extra term in the loss function of
autoencoder, it is given as:
∥Jh(X)∥2
F =
X
ij
∂hj (X)
∂Xi
2
Dr V N Krishnachandran
Deep into Deep Learning
66. Neurons Multilayer NN’s Back-propagation Autoencoders CNN’s Popular CNN’s Conclusion
Convoution in mathematics
Convolutional neural networks
(CNN’s)
Dr V N Krishnachandran
Deep into Deep Learning
67. Neurons Multilayer NN’s Back-propagation Autoencoders CNN’s Popular CNN’s Conclusion
Convoution in mathematics
Convolution in mathematics
Dr V N Krishnachandran
Deep into Deep Learning
68. Neurons Multilayer NN’s Back-propagation Autoencoders CNN’s Popular CNN’s Conclusion
Convoution in mathematics
Idea of convolution in mathematics
Idea of convolution in mathematics: 1D case
The convolution of the sequences {an}∞
−∞ and {bn}∞
−∞ is the
sequence {cn}∞
−∞ defined by
cn =
∞
X
k=−∞
an−kbk
.
The convolution of two functions f (x) and g(x) is the
function h(x) defined by
h(x) =
Z ∞
−∞
f (x − t)g(t) dt.
Dr V N Krishnachandran
Deep into Deep Learning
69. Neurons Multilayer NN’s Back-propagation Autoencoders CNN’s Popular CNN’s Conclusion
Convoution in mathematics
Idea of convolution in mathematics
Idea of convolution in mathematics: 2D case
The convolution of the sequences {am,n}∞
−∞ and {bm,n}∞
−∞ is
the sequence {cm,n}∞
−∞ defined by
cm,n =
∞
X
h=−∞
∞
X
k=−∞
am−h,n−kbh,k
.
The convolution of two functions f (x, y) and g(x, y) is the
function h(x, y) defined by
h(x, y) =
Z ∞
−∞
Z ∞
u=−∞
f (x − t, y − u)g(t, u) dt du
Dr V N Krishnachandran
Deep into Deep Learning
70. Neurons Multilayer NN’s Back-propagation Autoencoders CNN’s Popular CNN’s Conclusion
Convoution in neural networks
Convolution in neural networks
Dr V N Krishnachandran
Deep into Deep Learning
71. Neurons Multilayer NN’s Back-propagation Autoencoders CNN’s Popular CNN’s Conclusion
Convoution in neural networks
Idea of convolution in neural networks
Dr V N Krishnachandran
Deep into Deep Learning
72. Neurons Multilayer NN’s Back-propagation Autoencoders CNN’s Popular CNN’s Conclusion
Convoution in neural networks
Idea of convolution in neural networks
Input image as a vector:
[a, b, c, d, e, f , g, h, i, j, k, l, m, n, o, p]
Kernel as a vector:
[w, x, y, z]
Output as a vector:
[aw + bz + eyfz, bw + cx + fy + gz, . . . , kw + lx + oy + pz]
Dr V N Krishnachandran
Deep into Deep Learning
73. Neurons Multilayer NN’s Back-propagation Autoencoders CNN’s Popular CNN’s Conclusion
Convoution in neural networks
Idea of convolution in neural networks
Covolution example
Dr V N Krishnachandran
Deep into Deep Learning
74. Neurons Multilayer NN’s Back-propagation Autoencoders CNN’s Popular CNN’s Conclusion
Convoution in neural networks
Idea of convolution in neural networks
Covolution with padding
Dr V N Krishnachandran
Deep into Deep Learning
75. Neurons Multilayer NN’s Back-propagation Autoencoders CNN’s Popular CNN’s Conclusion
Pooling
Pooling
Pooling in neural networks
Dr V N Krishnachandran
Deep into Deep Learning
76. Neurons Multilayer NN’s Back-propagation Autoencoders CNN’s Popular CNN’s Conclusion
Pooling
Pooling in neural networks
Max pooling
Dr V N Krishnachandran
Deep into Deep Learning
77. Neurons Multilayer NN’s Back-propagation Autoencoders CNN’s Popular CNN’s Conclusion
Pooling
Average pooling
Average pooling
Dr V N Krishnachandran
Deep into Deep Learning
78. Neurons Multilayer NN’s Back-propagation Autoencoders CNN’s Popular CNN’s Conclusion
Building blocks of CNN
Building blocks of CNN
Dr V N Krishnachandran
Deep into Deep Learning
79. Neurons Multilayer NN’s Back-propagation Autoencoders CNN’s Popular CNN’s Conclusion
Building blocks of CNN
Building blocks of CNN
Building blocks of CNN architecture
Convolution layer
Nonlinear activation function
Pooling layer
Fully connected layer
Last layer activation function
Loss function (or, error function)
Dr V N Krishnachandran
Deep into Deep Learning
80. Neurons Multilayer NN’s Back-propagation Autoencoders CNN’s Popular CNN’s Conclusion
Building blocks of CNN
CNN architecture
CNN architecture
Dr V N Krishnachandran
Deep into Deep Learning
81. Neurons Multilayer NN’s Back-propagation Autoencoders CNN’s Popular CNN’s Conclusion
LeNet
Popular CNN’s
Dr V N Krishnachandran
Deep into Deep Learning
82. Neurons Multilayer NN’s Back-propagation Autoencoders CNN’s Popular CNN’s Conclusion
LeNet
Popular CNN: LeNet
Dr V N Krishnachandran
Deep into Deep Learning
83. Neurons Multilayer NN’s Back-propagation Autoencoders CNN’s Popular CNN’s Conclusion
LeNet
Popular CNN’s: LeNet
LeNet
LeNet is a convolutional neural network introduced by Yann
LeCun et al in 1989.
It was not popular at the time of introduction due to a lack of
hardware.
Could read numbers correctly and successfully applied it in
identifying handwritten zip code numbers provided by the US
Postal Service.
Dr V N Krishnachandran
Deep into Deep Learning
84. Neurons Multilayer NN’s Back-propagation Autoencoders CNN’s Popular CNN’s Conclusion
LeNet
LeNet: First CNN success story
Dr V N Krishnachandran
Deep into Deep Learning
85. Neurons Multilayer NN’s Back-propagation Autoencoders CNN’s Popular CNN’s Conclusion
LeNet
Popular CNN’s: LeNet
The research on LeNet achieved great success and aroused the
interest of scholars in the study of neural networks. While the
architecture of the best performing neural networks today are not
the same as that of LeNet, the network was the starting point for a
large number of neural network architectures, and also brought
inspiration to the field.
Dr V N Krishnachandran
Deep into Deep Learning
86. Neurons Multilayer NN’s Back-propagation Autoencoders CNN’s Popular CNN’s Conclusion
LeNet
Popular CNN’s: LeNet
LeNet
Dr V N Krishnachandran
Deep into Deep Learning
87. Neurons Multilayer NN’s Back-propagation Autoencoders CNN’s Popular CNN’s Conclusion
LeNet
Poplar CNN’s: LeNet
LeNet
Dr V N Krishnachandran
Deep into Deep Learning
88. Neurons Multilayer NN’s Back-propagation Autoencoders CNN’s Popular CNN’s Conclusion
AlexNet
AlexNet: ILSVRC 2012 winner
Dr V N Krishnachandran
Deep into Deep Learning
89. Neurons Multilayer NN’s Back-propagation Autoencoders CNN’s Popular CNN’s Conclusion
AlexNet
Poplar CNN’s: AlextNet
Poplar CNN’s: AlextNet
AlexNet is a convolutional neural network designed by Alex
Krizhevsky and his collaborators.
AlexNet competed in the ILSVRC 2012 with and achieved a
top-5 error of 15.3%, more than 10.8 percentage points lower
than that of the runner up.
Dr V N Krishnachandran
Deep into Deep Learning
90. Neurons Multilayer NN’s Back-propagation Autoencoders CNN’s Popular CNN’s Conclusion
AlexNet
ImageNet
Sample images from ImageNet
Dr V N Krishnachandran
Deep into Deep Learning
91. Neurons Multilayer NN’s Back-propagation Autoencoders CNN’s Popular CNN’s Conclusion
AlexNet
ILSVRC
The goal of ILSVRC was to estimate the content of photographs
for the purpose of retrieval and automatic annotation using a
subset of the ImageNet dataset (containing more than 10,000,000
labelled images depicting 10,000+ object categories) as training.
Test images will be presented with no labels and algorithms would
have to produce labellings specifying what objects are present in
the images. The general goal was to identify the main objects
present in images.
Dr V N Krishnachandran
Deep into Deep Learning
92. Neurons Multilayer NN’s Back-propagation Autoencoders CNN’s Popular CNN’s Conclusion
AlexNet
AlextNet
Dr V N Krishnachandran
Deep into Deep Learning
93. Neurons Multilayer NN’s Back-propagation Autoencoders CNN’s Popular CNN’s Conclusion
AlexNet
Poplar CNN’s: AlextNet
Summary of AlexNet architecture
Dr V N Krishnachandran
Deep into Deep Learning
94. Neurons Multilayer NN’s Back-propagation Autoencoders CNN’s Popular CNN’s Conclusion
AlexNet
AlexNet
AlexNet was the first large-scale CNN.
The activation function used in all layers is ReLU. The
activation function used in the output layer is Softmax.
Introduced and implemented the concept of “local response
normalisation” to solve the “gradient explosion problem”.
AlexNet popularized CNN architecture.
Dr V N Krishnachandran
Deep into Deep Learning
95. Neurons Multilayer NN’s Back-propagation Autoencoders CNN’s Popular CNN’s Conclusion
AlexNet
AlexNet
The CNN architecture had 10 hidden layers.
The depths of the various layers in AlexNet sum to 11,176
compared with 258 for LeNet.
AlexNet contains around 650,000 neurons compared with
6,508 for LeNet, while the number of trainable parameters is
some 60 million compared with 60,000 for LeNet.
AlexNet takes a color image of size 224 Ö 224, whereas LeNet
could only manage a bi-level 32 Ö 32 input image. So overall,
AlexNet is larger than LeNet by a factor between 100 and
1000, depending on which factors should be regarded as the
most relevant.
Dr V N Krishnachandran
Deep into Deep Learning
96. Neurons Multilayer NN’s Back-propagation Autoencoders CNN’s Popular CNN’s Conclusion
AlexNet
AlexNet
For more details:
“ImageNet Classification with Deep Convolutional Neural
Networks” (2012)
https://proceedings.neurips.cc/paper/
4824-imagenet-classification-with-deep-
convolutional-neural-networks.pdf
Dr V N Krishnachandran
Deep into Deep Learning
97. Neurons Multilayer NN’s Back-propagation Autoencoders CNN’s Popular CNN’s Conclusion
GoogLeNet
GoogLeNet: ILSVRC 2014 winner
Dr V N Krishnachandran
Deep into Deep Learning
98. Neurons Multilayer NN’s Back-propagation Autoencoders CNN’s Popular CNN’s Conclusion
GoogLeNet
GoogLeNet
GoogLeNet is one of the most successful models of the earlier
years of convolutional neural networks. Szegedy et al. from
Google Inc. published the model in their paper named Going
Deeper with Convolutions and won ILSVRC-2014 with a large
margin.
Dr V N Krishnachandran
Deep into Deep Learning
99. Neurons Multilayer NN’s Back-propagation Autoencoders CNN’s Popular CNN’s Conclusion
GoogLeNet
GoogLeNet
Features of GoogLeNet
It is a 22-layers-deep network.
1Ö1 convolution
Global average pooling
Inception module: This combines the outputs of differently
sized filters.
Auxiliary classifier for training: A method for tackling the
vanishing gradient problem.
Dr V N Krishnachandran
Deep into Deep Learning
100. Neurons Multilayer NN’s Back-propagation Autoencoders CNN’s Popular CNN’s Conclusion
GoogLeNet
GoogLeNet
GoogLeNet: Architecture
Dr V N Krishnachandran
Deep into Deep Learning
101. Neurons Multilayer NN’s Back-propagation Autoencoders CNN’s Popular CNN’s Conclusion
GoogLeNet
GoogLeNet
Architecture of inception module
Dr V N Krishnachandran
Deep into Deep Learning
102. Neurons Multilayer NN’s Back-propagation Autoencoders CNN’s Popular CNN’s Conclusion
GoogLeNet
GoogLeNet
Details of architecture
Dr V N Krishnachandran
Deep into Deep Learning
103. Neurons Multilayer NN’s Back-propagation Autoencoders CNN’s Popular CNN’s Conclusion
GoogLeNet
GoogLeNet
For more details:
“Going Deeper with Convolutions” (Sep 2014)
https://arxiv.org/abs/1409.4842
Dr V N Krishnachandran
Deep into Deep Learning
104. Neurons Multilayer NN’s Back-propagation Autoencoders CNN’s Popular CNN’s Conclusion
FaceNet
FaceNet
Dr V N Krishnachandran
Deep into Deep Learning
105. Neurons Multilayer NN’s Back-propagation Autoencoders CNN’s Popular CNN’s Conclusion
FaceNet
FaceNet
FaceNet is a facial recognition system developed by Florian
Schroff, Dmitry Kalenichenko and James Philbina, a group of
researchers affiliated to Google. The system was first presented in
the IEEE Conference on Computer Vision and Pattern Recognition
held in 2015.
The models are initialized from random and trained on a CPU
cluster for 1,000 to 2,000 hours.
Dr V N Krishnachandran
Deep into Deep Learning
106. Neurons Multilayer NN’s Back-propagation Autoencoders CNN’s Popular CNN’s Conclusion
FaceNet
Facenet
FaceNet learns a mapping from a set of face images to the
128-dimensional Euclidean space.
The similarity between two face images is assessed based on
the square of the Euclidean distance between the
corresponding normalized vectors in the 128-dimensional
Euclidean space.
The system used the triplet loss function as the cost
function and introduced a new online triplet mining method.
The system achieved an accuracy of 99.63% which is the
highest score on Labelled Faces in the Wild dataset.
The models are initialized from random and trained on a CPU
cluster for 1,000 to 2,000 hours, that is, 40 to 80 days!
Dr V N Krishnachandran
Deep into Deep Learning
107. Neurons Multilayer NN’s Back-propagation Autoencoders CNN’s Popular CNN’s Conclusion
FaceNet
FaceNet
The Triplet Loss minimizes the distance between an anchor and a
positive, both of which have the same identity, and maximizes the
distance between the anchor and a negative of a different identity.
Dr V N Krishnachandran
Deep into Deep Learning
108. Neurons Multilayer NN’s Back-propagation Autoencoders CNN’s Popular CNN’s Conclusion
FaceNet
FaceNet
Dr V N Krishnachandran
Deep into Deep Learning
109. Neurons Multilayer NN’s Back-propagation Autoencoders CNN’s Popular CNN’s Conclusion
FaceNet
FaceNet
Dr V N Krishnachandran
Deep into Deep Learning
110. Neurons Multilayer NN’s Back-propagation Autoencoders CNN’s Popular CNN’s Conclusion
FaceNet
FaceNet
For more details:
“FaceNet: A Unified Embedding for Face Recognition and
Clustering” (March 2015)
https://arxiv.org/abs/1503.03832
Dr V N Krishnachandran
Deep into Deep Learning
111. Neurons Multilayer NN’s Back-propagation Autoencoders CNN’s Popular CNN’s Conclusion
Thank you.
Dr V N Krishnachandran
Deep into Deep Learning