[关闭]
@mShuaiZhao 2018-01-18T07:35:03.000000Z 字数 19544 阅读 843

Convolutional Neural Networks

CNN 2017.12


1. Why ConvNets?

01_7.png-9.4kB

2. Convolutional Neural Networks(CNNs/ConvNets)

2.1. Architecture Overview

There are four key ideas behind ConvNets that take advantage of the properties of natural signals: local connections, shared weights, pooling and the use of many layers. [3]

01_arch.png-51.5kB

general architecture

  1. INPUT -> [ [CONV -> ACTIVATION] * N -> POOL? ] * M -> [ FC -> ACTIVATION ] * K -> FC?

Sometimes there is no pooling layers or FC layers.

2.2. Convolutional Layer

2.2.1. discrete convolution

2.2.2. cross-correlation

The cross-correlation

We just do element-wise multiplies and sum over the results. No rotating.

2.2.3. sparse connectivity

conv_1D_nn.png-33.8kB

The unit only connects with units .

2.2.4. parameter sharing

The edges between layer and layer with same colors have same weights.

2.2.5. padding

2.2.6. convolution over volume

2_2_6_rgb.png-51.3kB

The picture is from [8].

2.2.7. More...

2.3. Activation Function

neuron_model.jpeg-36.9kB

activation funciton

The picture is from [1].

2.3.1. sigmoid function

A sigmoid function is a mathematical function having a characteristic "S"-shaped curve or sigmoid curve. Often, sigmoid function refers to the special case of the logistic function shown in the figure and defined by the formula

Logistic-curve.svg.png-11.8kB

The picture is from wiki.

2.3.2. rectifier

2.4. Pooling Layer

The role of the convolutional layer is to detect local conjunctions of features from the previous layer, the role of the pooling layer is to merge semantically similar features into one. [3]

2.4.1. max pooling

max_pooling.png-20.4kB

input :
pooling window :
stride :
output :

2.4.2. average pooling

average_pooling.png-21.9kB

input :
pooling window :
stride :
output :

3. Back-propagation

3.1. convolution layers

For a certain filter , its size is and the stride of convolution is .

3.3. pooling Layer

A pooling layer has no parameters for backprop to update, we still need to backprop the gradient through the pooling layer in order to compute gradients for layers that came before the pooling layer.

If the size of the pooling window is and the stride of pooling is .

4. Case studies

4.1. LeNet-5

LeNet-5.png-137.9kB

The picture is from [7].

Yan LeCun.jpeg-399.3kB

Yann LeCun

4.2. AlexNet

4.3. VGGNet

VGGNet.jpg-254.1kB

The picture is from [10].

4.4. Inception

The ILSVRC 2014 winner.

4.5. ResNet

Reference

[1] http://cs231n.github.io/convolutional-networks/#conv

[2] http://ufldl.stanford.edu/tutorial/supervised/FeatureExtractionUsingConvolution/

[3] Y. LeCun, Y. Bengio, G. Hinton. (2015). Deep learning.

[4] D. Vincent, V. Francesco. (2016). A guide to convolution arithmetic for deep learning.

[5] I. Goodfellow, Y. Bengio, and A. Courville. (2016). Deep learning. Book in preparation for MIT Press.

[6] J. Bouvrie. Notes on Convolutional Neural Networks.

[7] Y. LeCun, L. Bottou, Y. Bengio, and P. Haffner. (1998). Gradient-based learning applied to document recognition.

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

[9] A. Krizhevsky, I. Sutskever, G. E. Hinton. (2012). ImageNet classification with deep convolutional neural networks.

[10] K. Simonyan, A. Zisserman. (2015). Very deep convolutional networks for large-scale image recognition.

[11] C.Szegedy, W. Liu, Y. Jia, P. Sermanet et al. (2015). Going deeper with convolutions.

[12] K. He, X. Zhang, S. Ren, J. Sun. (2016). Deep residual learning for image recognition.

Log

Other

Contact Me : 1696144426@qq.com

All contents Copyright 2017. All rights reserved.

添加新批注
在作者公开此批注前,只有你和作者可见。
回复批注