通过之前几节,我们学习了构建一个完整卷积神经网络的所需组件。
回想一下,之前我们将softmax回归模型和多层感知机模型应用于Fashion-MNIST数据集中的服装图片,为了能够应用softmax回归和多层感知机:
- 我们首先将每个大小为的图像展平为一个784维的固定长度的一维向量
- 然后用全连接层对其进行处理。
而现在,我们已经掌握了卷积层的处理方法,我们可以在图像中保留空间结构。 同时,用卷积层代替全连接层的另一个好处是:模型更简洁、所需的参数更少。
本节将介绍LeNet,它是最早发布的卷积神经网络之一,因其在计算机视觉任务中的高效性能而受到广泛关注。
这个模型是由AT&T贝尔实验室的研究员Yann LeCun在1989年提出的(并以其命名),目的是识别图像 (LeCun et al., 1998)中的手写数字。 当时,Yann LeCun发表了第一篇通过反向传播成功训练卷积神经网络的研究,这项工作代表了十多年来神经网络研究开发的成果。
当时,LeNet取得了与支持向量机(support vector machines)性能相媲美的成果,成为监督学习的主流方法。 LeNet被广泛用于自动取款机(ATM)机中,帮助识别处理支票的数字。 时至今日,一些自动取款机仍在运行Yann LeCun和他的同事Leon Bottou在上世纪90年代写的代码呢!
1. LeNet
2. MNIST
- 50,000个训练数据
- 10,000个测试数据
- 图像大小为28 * 28
- 10类
3. LeNet详解
每个卷积块中的基本单元是一个卷积层、一个sigmoid激活函数和平均汇聚层。请注意,虽然ReLU和最大汇聚层更有效,但它们在20世纪90年代还没有出现。
每个卷积层使用卷积核和一个sigmoid激活函数。这些层将输入映射到多个二维特征输出,通常同时增加通道的数量。第一卷积层有6个输出通道,而第二个卷积层有16个输出通道。
每个池操作(步幅2)通过空间下采样将维数减少4倍。卷积的输出形状由批量大小、通道数、高度、宽度决定。
为了将卷积块的输出传递给稠密块,我们必须在小批量中展平每个样本。换言之,我们将这个四维输入转换成全连接层所期望的二维输入。这里的二维表示的第一个维度索引小批量中的样本,第二个维度给出每个样本的平面向量表示。
LeNet的稠密块有三个全连接层,分别有120、84和10个输出。因为我们在执行分类任务,所以输出层的10维对应于最后输出结果的数量。
4. 总结
- LeNet是早期成功的神经网络
- 先使用卷积层来学习图片空间信息
- 然后使用池化层来降低图片的敏感度
- 最后使用全连接层来转换到类别空间得到10个分类
- 基本就是两个卷积层,再加上一个多层感知机,得到整个的从图片到类别的映射