Python----卷积神经网络(《Gradient-Based Learning Applied to Document Recognition》论文解读、LeNet-5原理)

一、对论文进行解读

1.1、论文基本信息:

时间: 1998年

作者: Yann LeCun, Léon Bottou, Yoshua Bengio, and Patrick Haffner

1.2、论文主要主旨:

        这篇论文的主要主旨是强调基于梯度的学习方法(特别是多层神经网络和卷积神经网络)在文档识别中的有效性,并提出了图转换网络(GTN)这一新的学习范式,用于解决复杂文档识别系统中多模块的全局训练问题,以提升整体识别性能。

1.3、主要内容实现方式:

        回顾与比较手写字符识别方法: 论文回顾了应用于手写字符识别的多种方法,并通过在一个标准的手写数字识别任务上进行比较实验,证明了卷积神经网络(CNNs)在处理二维形状变异性方面的优越性。CNNs通过其特定的网络结构(卷积层、池化层等)有效地提取图像特征,并对平移、缩放等形变具有一定的鲁棒性。

        提出图转换网络(GTN)用于全局训练: 针对真实文档识别系统由多个独立训练的模块组成,难以优化整体性能的问题,论文提出了图转换网络(GTN)。GTN的核心思想是将整个多模块系统表示为一个计算图,并使用基于梯度的学习方法(如反向传播)对整个图进行端到端的训练,直接最小化最终的性能指标。这使得各个模块能够协同学习,从而优化整体性能。

        在线手写识别系统的实验: 论文描述了两个用于在线手写识别的系统,并通过实验验证了全局训练的优势以及GTN的灵活性。实验结果表明,与独立训练的模块相比,通过GTN进行全局训练能够显著提高在线手写识别的准确率。

        银行支票识别的图转换网络应用: 论文还展示了一个应用于银行支票识别的GTN系统。该系统集成了卷积神经网络等模块,进一步证明了GTN在实际复杂文档识别任务中的应用潜力。

1.4、最后的结果:

        实验结果表明,卷积神经网络(CNNs)在手写字符识别任务中优于其他传统方法。

        在线手写识别实验证明了图转换网络(GTN)进行全局训练的有效性,相较于独立训练模块的系统,GTN能够取得更好的识别性能。

        银行支票识别系统的案例展示了GTN在处理实际复杂文档识别问题上的可行性,并强调了CNNs作为其重要组成部分的价值。

1.5、论文的意义:

        这篇论文在深度学习发展的早期具有重要的意义,主要体现在:巩固了梯度学习和神经网络在模式识别领域的地位: 通过对手写字符识别的成功应用,进一步证明了基于梯度学习的神经网络在处理复杂模式识别任务上的强大能力。

        突出了卷积神经网络在图像识别中的关键作用: 论文清晰地展示了CNNs在处理图像数据(特别是具有二维结构和形变的数据)方面的优势,为后续图像识别领域的发展奠定了基础。

        开创了全局训练复杂多模块系统的先河: 图转换网络(GTN)的提出,为解决由多个模块组成的复杂识别系统的训练问题提供了一个新的思路,即通过端到端的全局优化来提升整体性能,这种思想对后来的深度学习研究产生了深远的影响。

        为实际文档识别系统的构建提供了重要的理论和实践指导: 论文通过在线手写识别和银行支票识别等实际案例,展示了所提出方法的应用价值,为构建高性能的文档识别系统指明了方向。总而言之,这篇论文是早期深度学习在文档识别领域的重要里程碑,它不仅验证了神经网络的有效性,更提出了创新的全局训练方法,对后来的模式识别和文档分析领域产生了深远的影响。

二、卷积神经网络的发展背景

        卷积神经网络(Convolutional Neural Network,简称 CNN)是一种深度学习模 型,其中的网络结构与卷积运算密切相关。

        CNN 在计算机视觉领域有着广泛的应 用,可以用来处理图像、视频和其他多维数据。

        CNN的发展可以追溯到 1980 年代,当时 Yann LeCun和他的同事们开始研究如何用 神经网络来识别手写数字。他们的研究发现,使用卷积运算来提取图像中的特征可以 提高神经网络的准确率。

        在1998年,LeCun 训练的LeNet-5网络,标志着CNN的真正面试,但是当时的硬件 跟不上。

        在2006年,Hinton在他们的Science Paper中首次提出了Deep Learning的概念。

        在2012年,Hinton的学生Alex Krizhevsky利用AlexNet在ILSVRC 2012的ImageNet 数据集上,将传统的70%多的准确率提升到80%多。

        随着计算机技术的发展,CNN 在近几十年来不断演进。许多研究人员都对 CNN 的网 络结构、训练方法和应用领域进行了探索。

        现在,CNN 已经成为计算机视觉和深度 学习领域的重要模型。

        现在,CNN可以用来做很多事情,例如:

                图像分类:将图像分类为不同类别,如狗、猫等。

                图像定位:在图像中确定物体的位置,如狗、猫等。

                视频分析:分析视频中的内容,如检测运动目标、识别手势等。

                语音识别:识别语音中的单词或语句。

        CNN在这些任务中取得了很大的进展,其准确率往往高于传统的机器学习方法。随着 技术的进步,CNN的应用领域还会有更多的拓展。

        LeNet-5模型是由杨立昆(Yann LeCun)教授于1998年在论文Gradient-Based Learning Applied to Document Recognition中提出的,是一种用于手写体字符识别的 非常高效的卷积神经网络,其实现过程如下图所示。 

        LeNet-5是一个7层的网络,当然,名称中的5可以理解为整个网络中含可训练参数的 层数。在MNIST数据集上,LeNet-5模型可以达到99.2%的正确率。 

LeNet-5地址:

        MNIST Demos on Yann LeCun's website

三、卷积

        在上图中,实现了3×3的卷积核对5×5的输入数据的卷积运算。

        输入数据中,3×3的灰色区域为卷积核,卷积核的移动步长为1,即每次卷积核向右 或者向下移动一格,在输入数据左上角的3×3区域中,计算过程为 1×1+1×0+1×1+0×0+1×1+1×0+0×1+0×0+1×1=4,当卷积核移动时,对于输出的3×3 区域中就会填充一个空格,卷积的目的是为了对输入特征图进行特征提取。

        这是一个非常独特的网络结构,与之前的全连接比,由于它是以窗口的形式对局部地 区进行滑动计算的,所以它有着局部感知的机制。 同时,在这个滑动过程中,用的是同一个卷积核,所以它具有权值共享的特性。 

卷积核个数 = 输出通道数

卷积核通道 = 输入特征的通道

四、池化

        为了降低CNN的计算负载、内存使用以及参数量等,同时也为了降低CNN过拟合的 风险,在网络中添加池化函数。 池化层主要对输入的图像进行降采样(Subsample),池化并不改变深度或维度, 只改变大小。池化函数有平均值池化和最大值池化等。 最大值池化和平均值池化的过程如下图所示。

五、偏置 

   偏置(Bias)是卷积操作中的一个可学习参数,用于调整输出特征图的基线值,增强模型的表达能力。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值