深度学习—卷积神经网络LeNet

本文介绍了卷积神经网络LeNet的历史、经典结构及卷积过程。LeNet由卷积层、降采样层和全连接层组成,主要用于手写数字识别。在LeNet-5网络结构中,详细分析了卷积核参数更新和网络逐层结构,探讨了参数数量,并提及MNIST数据集上的实验结果。
摘要由CSDN通过智能技术生成


在这一讲中,我们将讲解目前深度学习领域最常用的一个模型—卷积神经网络( Convolutional Neural Network, CNN)。

1. CNN的历史

CNN的历史可以追溯到1980年Fukushima发明的神经认知机(neocognitron),这是第一个通过自动学习卷积核的人工神经网络系统,具备了CNN最基础的性质。在1998年,在贝尔实验室工作的Yann LeCun开发了一套能够识别手写数字的系统,即识别一张二值图片是0到9数字当中的哪一个。Yann LeCun以自己的名字命名了这个CNNLeNet,这是CNN第一次走入实际的应用领域,Yann LeCun的工作基本上定义了目前CNN当中常用的技术,包括自动学习卷积核、多层结构、降采样和全连接技术等等组成部分。

在这里插入图片描述

图1 Yann LeCun与LeNet结构

2. 卷积神经网络LeNet

2.1 经典的LeNet结构

下图2是经典的LeNet的结构,它包含7层,首先是一个输入层,输入一张32×32的二值图像,LeNet有2个卷积层,分别用C1C3表示,同时它有2个降采样层S2S4,最后它有2个全连接层C5F6,1个输出层。
在这里插入图片描述

图2 LeNet-5网络结构

2.2 卷积过程

首先,我们了解一下卷积的概念,如下图3(a)所示,假设输入是一张32×32的彩色图片,这张图片有RGB三个颜色的分量。在图中,我们可以把这张图片表示成一个长(height)、宽(width)都是32,而通道数channel3的一个张量(tensor)。我们将图像和一个卷积核(convolutional kernal)进行卷积运算,假设这个卷积核是另一个5×5×3的张量,如图3(b)所示,这个卷积核从左上到右下以步长stride=1进行滑动,每滑到一个位置,我们把卷积核与该位置图像重合的像素值相乘然后再相加得到一个数(如图3(b)示意图,仅示意非本例),将每次滑动的数排列起来将得到一个28×28×1的张量。我们把获得的这个28×28×1的张量叫作特征图(Feature Map),如图3(a)的右边所示,这就是一幅图像经过卷积核卷积运算的全过程。

在这里插入图片描述

图3(a) 卷积运算示意图

在这里插入图片描述

图3(b)卷积动态运算示意图(仅示意非本例)

在这个例子中,为什么获得的特征图长和宽都是28呢?

我们简要说一下其中的道理,我们先看特征图的长,特征图的第1个数是卷积核在最左上端的时候与图像相乘再相加的结果,由于卷积核的长是5,因此,这个时候它覆盖的图像长这个方向第1到第5个像素。接下来,特征图以步长stride=1向右移动了一个步数,那么此时卷积核覆盖的图像长这个方向第2到第6个像素,以此类推,卷积核不断向右移动,直到移动28次后,覆盖的图像长这个方向第28到第32个像素,此时,卷积核的最右边已经到达了图像的最右边,即图像的第32个像素,因此特征图的长就是28。同样的道理可以推出,特征图的宽也是28。卷积过程动态示意图如下图4所示(仅示意非本例)。

在这里插入图片描述

图4 卷积过程动态示意图(仅示意非本例)

3. LeNet-5网络结构分析

3.1 卷积核参数更新

LeNet中,第一层卷积层C1,我们用了6个卷积核卷积原来的图像,因此我们获得了6个28×28的特征图,用简化的画法可以看到,我们可以直接把这6个特征图并到一起作为最后的显示结果。由于这6个卷积核的参数是待定的,所以我们需要在训练过程中通过后向传播算法对他们进行更新

在这里插入图片描述

图5 LeNet第一层卷积简化

接下来,我们简要的讲一下如何求解卷积核中参数的梯度,从而完成对卷积核参数的更新,如下图6所示。

在这里插入图片描述

图6 二维卷积参数化示例

假设我们计算一个3×3的图像与一个2×2的卷积核卷积,stride=1,图像的像素值分别用x1x9表示,卷积核的参数分别用w1w4表示,最终我们得到的2×2的特征图,它的参数用p1p4表示。根据前面卷积操作的流程,我们可以把 p1p4 写成如下的形式:

在这里插入图片描述
写出来稍微有点复杂,但是在图6上利用卷积的性质我们很容易获得这些式子。以上这4个式子等价于如下权值共享网络。

在这里插入图片描述

图7 权值共享网络

在图7中,w1,w2,w3,w4各自被用了4次。因此我们假设整个LeNet最终的目标函数为 E E E,那么通过链式求导法则,我们可以很方便的得到 ∂ E ∂ w 1 , ∂ E ∂ w 2 , ∂ E ∂ w 3 , ∂ E ∂ w 4 \frac {∂E}{∂w_1},\frac {∂E}{∂w_2},\frac {∂E}{∂w_3},\frac {∂E}{∂w_4} w1E,w2E,w3E,w4E,如下式所示:

∂ E ∂ w 1 = ∂ E ∂ p 1 x 1 + ∂ E ∂ p 2 x 2 + ∂ E ∂ p 3 x 4 + ∂ E ∂ p 4 x 5 \frac {∂E}{∂w_1}=\frac {∂E}{∂p_1}x_1+\frac {∂E}{∂p_2}x_2+\frac {∂E}{∂p_3}x_4+\frac {∂E}{∂p_4}x_5 w1E

评论 16
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值