Deep Learning Basics Lecture 4: Regularization II

Deep Learning Basics Lecture 4: Regularization II

Deep Learning Basics Lecture 6: Convolutional NN Princeton University COS 495 Instructor: Yingyu Liang Review: convolutional layers Convolution: two dimensional case Input Kernel/filter a b c d w x e f g h y z i j k l wa + bx + bw + cx + ey + fz fy + gz Feature map Convolutional layers the same weight shared for all output nodes 푚 output nodes 푘 kernel size 푛 input nodes Figure from Deep Learning, by Goodfellow, Bengio, and Courville Terminology Figure from Deep Learning, by Goodfellow, Bengio, and Courville Case study: LeNet-5 LeNet-5 • Proposed in “Gradient-based learning applied to document recognition” , by Yann LeCun, Leon Bottou, Yoshua Bengio and Patrick Haffner, in Proceedings of the IEEE, 1998 LeNet-5 • Proposed in “Gradient-based learning applied to document recognition” , by Yann LeCun, Leon Bottou, Yoshua Bengio and Patrick Haffner, in Proceedings of the IEEE, 1998 • Apply convolution on 2D images (MNIST) and use backpropagation LeNet-5 • Proposed in “Gradient-based learning applied to document recognition” , by Yann LeCun, Leon Bottou, Yoshua Bengio and Patrick Haffner, in Proceedings of the IEEE, 1998 • Apply convolution on 2D images (MNIST) and use backpropagation • Structure: 2 convolutional layers (with pooling) + 3 fully connected layers • Input size: 32x32x1 • Convolution kernel size: 5x5 • Pooling: 2x2 LeNet-5 Figure from Gradient-based learning applied to document recognition, by Y. LeCun, L. Bottou, Y. Bengio and P. Haffner LeNet-5 Figure from Gradient-based learning applied to document recognition, by Y. LeCun, L. Bottou, Y. Bengio and P. Haffner LeNet-5 Filter: 5x5, stride: 1x1, #filters: 6 Figure from Gradient-based learning applied to document recognition, by Y. LeCun, L. Bottou, Y. Bengio and P. Haffner LeNet-5 Pooling: 2x2, stride: 2 Figure from Gradient-based learning applied to document recognition, by Y. LeCun, L. Bottou, Y. Bengio and P. Haffner LeNet-5 Filter: 5x5x6, stride: 1x1, #filters: 16 Figure from Gradient-based learning applied to document recognition, by Y. LeCun, L. Bottou, Y. Bengio and P. Haffner LeNet-5 Pooling: 2x2, stride: 2 Figure from Gradient-based learning applied to document recognition, by Y. LeCun, L. Bottou, Y. Bengio and P. Haffner LeNet-5 Weight matrix: 400x120 Figure from Gradient-based learning applied to document recognition, by Y. LeCun, L. Bottou, Y. Bengio and P. Haffner Weight matrix: 84x10 LeNet-5 Weight matrix: 120x84 Figure from Gradient-based learning applied to document recognition, by Y. LeCun, L. Bottou, Y. Bengio and P. Haffner Software platforms for CNN Updated in April 2016; checked more recent ones online Platform: Marvin (marvin.is) Platform: Marvin by LeNet in Marvin: convolutional layer LeNet in Marvin: pooling layer LeNet in Marvin: fully connected layer Platform: Caffe (caffe.berkeleyvision.org) LeNet in Caffe Platform: Tensorflow (tensorflow.org) Platform: Tensorflow (tensorflow.org) Platform: Tensorflow (tensorflow.org) Others • Theano – CPU/GPU symbolic expression compiler in python (from MILA lab at University of Montreal) • Torch – provides a Matlab-like environment for state-of-the-art machine learning algorithms in lua • Lasagne - Lasagne is a lightweight library to build and train neural networks in Theano • See: http://deeplearning.net/software_links/ Optimization: momentum Basic algorithms • Minimize the (regularized) empirical loss 1 퐿෠ 휃 = σ푛 푙(휃, 푥 , 푦 ) + 푅(휃) 푅 푛 푡=1 푡 푡 where the hypothesis is parametrized by 휃 • Gradient descent 휃푡+1 = 휃푡 − 휂푡훻퐿෠푅 휃푡 Mini-batch stochastic gradient descent • Instead of one data point, work with a small batch of 푏 points (푥푡푏+1,푦푡푏+1),…, (푥푡푏+푏,푦푡푏+푏) • Update rule 1 휃 = 휃 − 휂 훻 ෍ 푙 휃 , 푥 , 푦 + 푅(휃 ) 푡+1 푡 푡 푏 푡 푡푏+푖 푡푏+푖 푡 1≤푖≤푏 Momentum • Drawback of SGD: can be slow when gradient is small • Observation: when the gradient is consistent across consecutive steps, can take larger steps • Metaphor: rolling marble ball on gentle slope Momentum Contour: loss function Path: SGD with momentum Arrow: stochastic gradient Figure from Deep Learning, by Goodfellow, Bengio, and Courville Momentum • work with a small batch of 푏 points (푥푡푏+1,푦푡푏+1),…, (푥푡푏+푏,푦푡푏+푏) • Keep a momentum variable 푣푡, and set a decay rate 훼 • Update rule 1 푣 = 훼푣 − 휂 훻 ෍ 푙 휃 , 푥 , 푦 + 푅(휃 ) 푡 푡−1 푡 푏 푡 푡푏+푖 푡푏+푖 푡 1≤푖≤푏 휃푡+1 = 휃푡 + 푣푡 Momentum • Keep a momentum variable 푣푡, and set a decay rate 훼 • Update rule 1 푣 = 훼푣 − 휂 훻 ෍ 푙 휃 , 푥 , 푦 + 푅(휃 ) 푡 푡−1 푡 푏 푡 푡푏+푖 푡푏+푖 푡 1≤푖≤푏 휃푡+1 = 휃푡 + 푣푡 • Practical guide: 훼 is set to 0.5 until the initial learning stabilizes and then is increased to 0.9 or higher..

View Full Text

Details

  • File Type
    pdf
  • Upload Time
    -
  • Content Languages
    English
  • Upload User
    Anonymous/Not logged-in
  • File Pages
    36 Page
  • File Size
    -

Download

Channel Download Status
Express Download Enable

Copyright

We respect the copyrights and intellectual property rights of all users. All uploaded documents are either original works of the uploader or authorized works of the rightful owners.

  • Not to be reproduced or distributed without explicit permission.
  • Not used for commercial purposes outside of approved use cases.
  • Not used to infringe on the rights of the original creators.
  • If you believe any content infringes your copyright, please contact us immediately.

Support

For help with questions, suggestions, or problems, please contact us