卷积神经网络的网络结构——LeNet5

《GradientBased Learning Applied to Document Recognition》

1989,LeCun et al,LeNet5,主要内容在5~9页。
图像处理都是小 patchs ,比如28*28或者36*36之类,考虑如下情形,对于一副1000*1000的图像,即,当隐层也有节点时,那么(第一层链接权值)的数量将达到级别,为了减少参数规模,加快训练速度,CNN应运而生。CNN有几个重要的点:局部链接(Local Connection)、权值共享(Weight Sharing)、池化层(Pooling)中的降采样(Down-Sampling)。
网络结构:
这里写图片描述
包含了深度学习的基本模块:卷积层、池化层、全连接层。是其他深度学习模型的基础。
LeNet5的特性:三个卷积层+两个全连接层
(1)每个卷积层包含三个部分:卷积、池化和非线性激活函数
(2)使用卷积提取空间特征
(3)降采样的平均池化层
(4)双曲正切(Tanh)或S(Sigmoid)的激活函数
(5)层与层之间的稀疏连接减少计算复杂度
LeNet5的输入图像为32*32的灰度值图像,后面有三个卷积层,一个全连接层和一个高斯连接层。它的第一个卷积层C1包含6个卷积核,卷积核尺寸为5*5,即总共(5*5+1)*6=156个参数,括号中的1代表1个bias,后面是一个2*2的平均池化层S2用来进行降采样,再之后是一个Sigmoid激活函数用来进行非线性处理。而后是第二个卷积层C3,同样卷积核尺寸是5*5,这里使用了16个卷积核,对应了16个Feature Map。需要注意的是:这里的16个Feature Map不是全部连接到前面的6个Feature Map的输出,有些只连接其中的几个Feature Map,这样增加了模型的多样性。
这里写图片描述
第二个池化层S4和第一个池化层S2一致,都是2*2的降采样。接下来的第三个卷积层C5有120个卷积核,卷积大小同样为5*5,因为输入图像大小刚好也是5*5,因此构成了全连接,也可以算作卷积层。F6层是全连接层,拥有84个隐含节点,激活函数为Sigmoid。LeNet5最后一层由欧式径向基函数单元组成,它输出最后的分类结果。注:现在普遍使用softmax函数作为最后的分类输出。
W权值初始化(Xavier):其中n(j)为输入维度,n(j+1)为输出维度。

这里写图片描述

析:为什么tanh收敛更快?

这里写图片描述
1.左为Sigmoid:
Sigmoid是常用的非线性激活函数,他的数学形式如下:
这里写图片描述
它能够把输入的连续实值”压缩“到0-1之间。
特别的,如果是非常大的负数,那么输出就是0;如果是非常大的正数,输出就是1.
Sigmoid 函数曾经被使用的很多,但现在,用它的人越来越少了。主要是因为它的一些 缺点:
(1)Sigmoids saturate and kill gradients,这就是我们常常提到的梯度消失问题。sigmoid 有一个非常致命的缺点,当输入非常大或者非常小的时候(saturation),这些神经元的梯度是接近于0的。如果你的初始值很大的话,大部分神经元可能都会处在saturation的状态而把gradient kill掉,这会导致网络变的很难学习。
(2)Sigmoid 的 output 不是0均值。这是不可取的,因为这会导致后一层的神经元将得到上一层输出的非0均值的信号作为输入。

2.右为tanh;
tanh是Sigmoid的变形:
这里写图片描述
与Sigmoid不同的是,tanh是0均值的。因此,实际应用中,tanh会比Sigmoid更好。

对应的导数:
这里写图片描述
这里写图片描述
可知,的区间范围在(0,1)
的区间范围在(0,1/4)。
综上,tanh(x)的梯度消失问题比Sigmoid要轻,所以收敛的要快。

Feature Map大小计算公式:

这里写图片描述


注:博众家之所长,集群英之荟萃。

猜你喜欢

转载自blog.csdn.net/u013841196/article/details/80473654