[Google_Bootcamp_Day16]

Updated:

Convolutional Neural Network

Computer Vision problems

  • Image classification
  • Object Detection
  • Neural Style Transfer
  • etc…

Deep Learning on large images

  • Assume image size is 1000 * 1000 * 3, # 1st hidden layer node = 1000
  • Then W[1] = (1000, 3M)

Problem : too many parameters
Solution : Use Convolutional Neural Network instead of standard Neural Network

Edge Detection (basic of cnn)

edge_detection1 edge_detection2

Vertical Edge Detection

vertical_edge

vertical_edge2

Horizontal Edge Detection

horizontal_edge

key point of cnn : learn “filter matrix” itself

Why padding is necessary

  • Image shrink problem
  • Edge pixels are used much less

padding

“Valid” and “Same” convoliton

  • “Valid” (no padding) : (n * n) * (f * f) -> (n-f+1) * (n-f+1)
  • “Same” (pad so that output size = input size) :
    (n * n) * (f * f) -> (n+2p-f+1) * (n+2p-f+1), p = (f-1)/2 (f : usually odd)

Stride

stride

[source] https://www.coursera.org/learn/convolutional-neural-networks

Categories:

Updated:

Leave a comment