Week 44, Convolutional Neural Networks (CNN)
Contents
Plan for week 44
Material for Lecture Thursday November 2
Convolutional Neural Networks (recognizing images)
What is the Difference
Neural Networks vs CNNs
Why CNNS for images, sound files, medical images from CT scans etc?
Regular NNs don’t scale well to full images
3D volumes of neurons
Layers used to build CNNs
Transforming images
CNNs in brief
Key Idea
Mathematics of CNNs
Convolution Examples: Polynomial multiplication
Efficient Polynomial Multiplication
A more efficient way of coding the above Convolution
Convolution Examples: Principle of Superposition and Periodic Forces (Fourier Transforms)
Simple Code Example
Wrapping up Fourier transforms
Finding the Coefficients
Final words on Fourier Transforms
Fourier transforms and convolution
Two-dimensional Objects
More on Dimensionalities
Further Dimensionality Remarks
CNNs in more detail
Pooling
No zero padding, unit strides
Zero padding, unit strides
Half (same) padding
Full padding
Pooling arithmetic
CNNs in more detail, building convolutional neural networks in Tensorflow and Keras
Setting it up
The MNIST dataset again
Strong correlations
Layers of a CNN
Systematic reduction
Prerequisites: Collect and pre-process data
Importing Keras and Tensorflow
Running with Keras
Final part
Final visualization
The CIFAR01 data set
Verifying the data set
Set up the model
Add Dense layers on top
Compile and train the model
Finally, evaluate the model
Building our own CNN code
List of contents:
Schedulers
Usage of schedulers
Cost functions
Usage of cost functions
Activation functions
Usage of activation functions
Convolution
Layers
Convolution2DLayer: convolution in a hidden layer
Backpropagation in the convolutional layer
Demonstration
Pooling Layer
Flattening Layer
Fully Connected Layers
Optimized Convolution2DLayer
The Convolutional Neural Network (CNN)
Usage of CNN code
Additional Remarks
Remarks on the speed
Convolution using separable kernels
Convolution in the Fourier domain
Plan for week 44
Exercise on writing your own neural network code, application to the OR and XOR gates, see notes from last week
The exercise this week is a continuation from last week
Discussion of project 2
Video of lab session from week 43
Video of lab session from week 44
See also whiteboard notes from lab session week 44
Convolutional Neural Networks
Readings and Videos:
These lecture notes
For a more in depth discussion on neural networks we recommend Goodfellow et al chapter 9. See also chapter 11 and 12 on practicalities and applications
Reading suggestions for implementation of CNNs:
Aurelien Geron's chapter 13
.
Video on Deep Learning
Video on Convolutional Neural Networks from MIT
Video on CNNs from Stanford
See Michael Nielsen's Lectures
«
1
2
3
4
5
6
7
8
9
10
11
...
49
»