4/5 - Deep Convolutional Neural Networks Flashcards
Deep learning
Learning on a network with more than 3 layers
Overfitting in deep learning (parameters)
More parameters increases the risk of overfitting.
Too many parameters and not sufficient data points = overfitting
Shape analogy for layers (Abstraction)
Layer 1 could detect a horizontal or vertical line
Layer 2 could then detect a shape
Layer 3 could then detect an item.
Abstraction
MNIST
Handwriting data set
4 AI uses in images
Image segmentation (item separation)
Image captioning
Question answering (is there a boat in this image?)
Action recognition
How do you choose the values in a kernel/filter?
Randomly produced and allow the system to learn the best filter
CNN Do you flatten the input image?
No, it stays as 2D
2D Convolution Layer (5x5 input and 3x3 kernel example)
5x5 Input for example with a 3x3 kernel.
You slide the 3x3 kernel across the image from the top left, sum them and then set the location as that in a new 3x3 matrix
Stride
Number of steps taken when sliding the kernel
Eg slide 1 is one pixel
slide 2 is 2
You move faster through the image.
Higher stride does what to output?
Reduces the output
Padding
Add zeros all around edge and then scan with kernel
Computing the size of an output with convolutional:
(W-F + 2P)/S + 1
W input size
F filter size
S stride
P padding
Images have how many channels and why?
3 - RGB
(Where the image is RGB of course)
3 Channel input and a 3 channel filter. How many channels is the output?
1
To make a 3 channel output of a 3 channel input, we need how many 3 channel filters?
3 filters
More filters you have means what for parameters?
More parameters. Potential overfitting if too many filters.
Must your number of input channels match the number of filter channels?
YES
Stack of convolutional layers example
Input
Filters
Feature Maps
Filters
Feature Maps
Filters