深度学习经典网络模型——LeNet

一、LeNet模型

LeNet也称为LeNet-5,是由Yann LeCun等人于1998年提出的深度学习经典网络模型,它是第一个成功应用于手写数字识别卷积神经网络模型

LeNet模型主要由两个部分组成:2个卷积层和3个全连接层(池化层没有参数不算在网络模型之中)。卷积层用于提取图像的特征,而全连接层用于对提取的特征进行分类。

二、LeNet模型每一层的输入输出变化:

   无特殊说明,默认步长stride=1;填充padding=0

 (1)输入层(Input Layer):该层接受输入图像数据,通常是灰度图像(通道数为1),尺寸为32x32。若是RGB彩色图,通道数为3。

 (2)第一个卷积层(Convolutional Layer):使用6个大小为5x5的卷积核对输入图像进  行卷积操作后,特征图的尺寸为28x28((32-5+1)x(32-5+1)),通道数为6。

 (3)第一个池化层(Pooling Layer):使用2x2的平均池化操作对卷积后的6个特征图分别进行下采样。特征图的尺寸为14x14(28/2 x 28/2),通道数为6

 (4)第二个卷积层(Convolutional Layer):使用16个大小为5x5的卷积核对第一个池化层的6个下采样后的特征图进行卷积操作。特征图的尺寸为10x10((14-5+1)x(14-5+1)),通道数为16。

(5)第二个池化层(Pooling Layer):使用2x2的平均池化操作对第二个卷积层的16个特征图进行下采样。特征图的尺寸为5x5(10/2 x 10/2),通道数为16。

(6)全连接层(Fully Connected Layer):将第二个池化层的16个下采样后的特征图展开成一维向量,并传递到一个包含120个神经元的全连接层上,用于进行分类操作。这一层的输出尺寸为120。

(7)全连接层(Fully Connected Layer):该层是一个包含84个神经元的全连接层,用于进一步处理前一层的输出。这一层的输出尺寸为84。

(8)输出层(Output Layer):该层是一个有10个神经元的全连接层,对应了手写数字识别任务中10个数字类别。最后,通过softmax函数输出预测结果。这一层的输出尺寸为10。

总的来说,LeNet模型通过卷积和池化操作逐渐抽取图像的特征信息,然后通过全连接层进行分类操作。每一层的输出都是下一层的输入,从而逐步构建了一个多层的神经网络模型。这些层之间的连接是固定的,它们共同实现了对手写数字图像的准确分类。

三、补充说明

(1)LeNet模型的优点在于其简单、有效和可解释性强,同时在手写数字识别等任务上表现优异。它为后来的深度学习模型提供了重要的参考和基础。

(2)在 LeNet-5 模型的池化层中,原论文使用的是2x2的平均池化操作进行下采样。在这种操作中,每个2x2的区域内像素的平均值被用作该区域的下采样值。这种池化方式可以有效地减少图像的尺寸,并且能够保留一些次要特征,从而提高模型的准确性。尽管如此,后来的研究表明,最大池化(Max Pooling)的效果比平均池化更好最大池化倾向于从每个2x2的区域中提取最显著的特征,这对于图像分类等任务来说可能更加有效。因此,在实践中,人们通常会将LeNet-5模型中的平均池化替换为最大池化以提高性能。

(3)高斯连接(Gaussian Connections)是指一种计算神经元输出的方法,它使用了高斯分布(正态分布)来建立连接权重,从而实现了一种平滑、连续的激活函数。这种连接方式在构建一些深度神经网络模型时常常被采用。

通过这个公式,我们可以将每个神经元作为一个空间位置向量,用高斯分布来衡量神经元之间的连接强度。如果两个神经元的位置越接近,则他们之间的连接强度就越大,否则就越小。这种连接方式可以使得神经元输出函数变得连续、平滑,有助于解决一些模型优化过程中的挑战。值得注意的是,高斯连接并不是所有情况下都会带来显著的性能提升,而且它可能会增加网络的计算复杂度。因此,在实际应用中,需要仔细考虑是否使用高斯连接,并且要进行充分的实验和比较。

(4)在 LeNet 中,卷积层和全连接层使用的激活函数是 Sigmoid 函数

 Sigmoid 函数具有将输入值映射到 0 和 1 之间的特性,因此被广泛应用于二分类问题。在 LeNet 中,Sigmoid 函数被用作卷积层和全连接层的激活函数,目的是在模型训练时引入非线性,提高模型的表达能力。

然而,在深度神经网络中,Sigmoid 函数存在一些缺陷,例如梯度弥散和梯度消失等问题,可能会影响模型性能。因此,现代的深度神经网络通常使用其他激活函数,例如 ReLU、LeakyReLU、ELU 等,以解决这些问题

插播:什么梯度弥散/梯度消失?

在神经网络训练过程中,网络的参数通过反向传播算法更新,而反向传播算法需要计算损失函数对参数的偏导数,即梯度。在深层神经网络中,由于梯度在反向传播时会不断地进行链式求导,梯度很容易因为连续多次的矩阵乘法被缩小或放大到非常小或非常大的值。

梯度变得非常小的情况被称为梯度弥散,这意味着模型的一些参数更新几乎没有效果,这将导致较大的训练时间和解决方案的低准确性。而梯度变得非常大的情况被称为梯度爆炸,造成网络权重的大幅更新,使得网络无法收敛到合理的解。

(5)Softmax 函数,作为一个输出函数,是将神经网络的最后一层的输出转化为概率分布。例如,在多分类问题中,神经网络最后一层的输出是一个向量,每个元素表示对应类别的打分值,使用 Softmax 函数将打分值转化为概率分布,可以方便地计算每个类别的分类概率,从而选择概率最大的类别作为预测结果。因此,Softmax 函数和常规意义下的激活函数有些不同,它通常被用作输出层的转换函数,而非在神经网络中的隐含层中使用。

  • 5
    点赞
  • 12
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值