第6章 卷积神经网络
很多最新的神经网络模型都包含卷积神经网络。在很多领域有它们的身影,但是用得最多的地方是图像分类和特征提取。
本章中将包括以下主题:
- 了解卷积函数和卷积网络的运行原理,掌握构建卷积网络的操作;
- 在图像数据上使用卷积神经网络,并掌握提升准确率的数据预处理技术;
- 使用卷积神经网络对MNIST数据集进行分类;
- 使用卷积神经网络对CIFAR数据集进行分类。
6.1 卷积神经网络的起源
Fukushima教授在1980年发表了一篇文章,提出了一种新识别器,这是卷积网络的最早实现。该网络是一种自组织的神经网络,拥有平移和扭曲不变性。
1986年Rumelhart等人在反向传播(back propagation)那篇论文的书籍版中提到了这个思想。在1988年的一篇关于语言识别中的暂态信号的文章中,也使用了卷积神经网络。
1988年,LeCun在他的文章《基于梯度学习的文本分类》中回顾了之前的卷积神经网络的设计,提出了LeNet-5网络,该网络还可以用于手写数字识别。当时几种变种SVM算法在手写数字识别上取得最好的效果,但是LeNet-5仍然超过了它们。
后来在2003年,有一篇文章《基于层次神经网络的图像解释》对该模型做了扩展。但是,本章中,我们主要使用LeCun的LeNet架构。
6.1.1 卷积初探
要想理解卷积操作,我们首先学习卷积函数,然后再将该函数应用于信息领域。
遵循卷积的发展历史,我们首先从连续域开始。
1.连续卷积
卷积最早的历史能够追溯到18世纪;通俗点讲,卷积就是两个操作在时间维度上的融合。
用数学公式可以表示如下:
如果我们从算法的角度来理解这个概念,这个操作能够被分解为如下步骤:
1)信号翻转:对应这个部分的符号。
2)信号平移:对应于函数
Get TensorFlow构建机器学习项目 now with the O’Reilly learning platform.
O’Reilly members experience books, live events, courses curated by job role, and more from O’Reilly and nearly 200 top publishers.