手写数字识别三重调整结构反向传播算法参数分析外文翻译资料

 2022-03-14 20:43:41

英语原文共 5 页,剩余内容已隐藏,支付完成后下载完整资料


手写数字识别三重调整结构反向传播算法参数分析

摘要:近年来,一种常用的基于BP神经网络的手写体数字识别应用方法得到了广泛的应用。但是,原始算法及其修改包含许多影响特定网络不同的自由参数,而选择这些参数时的轻微错误率可能会导致问题。因此,本文利用简单向后传播,动量项反向传播和使用共轭梯度下降方法的后向传播三种不同结构,给出了输入参数对BP神经网络的影响。为此,本文确定了不同的参数,例如学习率,动量项甚至每个结构中存在的隐藏层中的单位数。UCI数据库的数据用于MATLAB程序的实验。结果表明,具有动量项的后向传播可以表现得非常好,导致99%的识别率。Simple算法虽然获得了较高的识别率,但需要提高学习速率,而使用共轭梯度下降的反向传播算法在改善隐藏的神经节点的情况下提供较高的结果。因此,结果证实相关参数的调整是显著的,以获得更好的识别效果和更高的准确性。

关键词:组件; 手写数字识别; 后向传播算法; 学习率; 动量术语;MATLAB。

一、引言

近年来,随着科学技术的飞速发展,人工神经网络在信息处理,系统识别,自动控制和模式识别等领域得到了广泛的应用。 特别是对手写数字的识别[1],由于其在现实世界中的实际应用,该发展的主要动机已被不断提出。因此,这个领域一直是深入研究的课题。

然而,我们发现手写数字的自动识别是一个难题,因为写作风格和形状差别很大。因此,最近人们对应用ANN算法解决复杂性和效率问题倍感兴趣。[2]

反向传播算法(BPA)尤其变得越来越流行。BPA是目前应用最广泛的神经网络之一,因为它具有传统技术所不具备的一些优点,如速度快,分类能力强,识别效果好。

但是原始算法及其修改有许多自由参数,这些参数对特定网络的影响是不同的,而选择这些参数时的轻微错误率可能会导致问题。[3]

因此,研究反向传播算法例如动量项,角色函数,隐节点数,学习率等,需要研究的识别率非常高。

在本文中,我们将分析使用不同的权重调整结构(如简单向后传播,动量项反向传播和使用共轭梯度下降方法的向后传播),学习参数如何影响手写识别问题的后向传播算法。输入参数包括学习速率,动量项和隐藏层隐藏神经元数。

为此,我们首先从UCI机器学习库[4]中对手写数字数据集进行光学识别,分析已经从32x32位图到8x8位图的各种分类技术。另外,我们还在1.60GHz和3G RAM上使用MATLAB实现了使用MATLAB的算法。

本文结构如下:下一节介绍手写数字分类应用分析输入参数的相关工作。第3节讨论后向传播算法。然后,我们比较每个结构的分类准确性,并分析第4节的实验结果。最后,第5节包含结论和未来的工作讨论。

二、文献评论

后向传播算法已被广泛应用于函数逼近(如[5] [6] [7]),数据预测(如[8] [9] [10]图像处理(如[11] [ 12]),特别是模式识别(例如[13] [14] [15] [16])。

BP算法具有简单的内部架构,可将输入分类为一组目标类别。它使分层网络学习了一组输入模式和它们各自的输出之间的功能映射。要做到这一点,它使用激活功能和监督培训,它包含许多步骤来处理数据。[3] [14]

在实践中,该算法使用原始梯度下降法来训练它们的神经网络。然而,该方法及其修改具有许多自由参数(例如,学习速率,动量项),其以不同的方式影响特定网络的收敛。也就是说,它们的参数可能对泛化精度有重要影响。[3]

例如,小或大的学习速率的选择直接影响网络架构的泛化精度和训练。在使用动量项的情况下,它允许网络潜在地跳过局部最小值问题。也就是说,这项的调整会影响网络。

因此,在BP算法中研究这些参数非常重要。但对于任何应用特别是数字识别应用而言,涉及BP算法分析速率的研究很少。
在[1]中,作者提出了一种新的改进的学习率算法,并采用串行动态自适应学习率。作者还将该算法应用于手写数字识别。结果表明,这种改进的学习率BP算法具有较高的准确率。然而,通过实验来确定隐藏层神经数量的确定,也就是说,在改变某些参数的情况下可以提高识别率。

在[17]中,作者提出了具有适应性学习速率和动量项的后向传播(BPALM)。作者着重于自适应学习率和动量项,每次迭代调整学习率和动量因子以减少训练时间。

在[18]中,为了加快权重调整过程,提出了除了反向传播的学习率和动量因子之外的附加项,比例因子。

在[19]中,作者改进了BP算法,其中每个训练模式都有自己的隐含层神经元激活函数,以避免局部最小值。

在[20]中,作者改进了用于车牌字符识别的BP算法。为此,作者修改了动作函数,规定了学习率并选择了初始权重。结果表明,它们的改进算法在收敛速度快的优点上具有一定的优势。但是,一些参数(例如动量项或神经节点)是恒定的。

在[21]中,作者分析了手写数字识别的学习率。在算法分析过程中使用各种参数,例如学习速率,隐藏层和动量项。结果显示参数可以影响应用程序。但笔者只是试验了一些学习结构,其价值范围也是有限的。

尽管所有这些文献研究都提高了速度或获得了高识别率,但仍存在其他一些问题。例如,如何对一个大或小的学习速率进行定量分析,如何在不同的学习结构上作用于不同的学习结构,或者如何在不识别常量节点的情况下如何找到隐含层神经的数量等等。

因此,本文研究分析不同权重调整结构下可能影响BP算法性能的学习率,动量项或隐含节点数等参数。

三、后向传播学习算法

Rumelhart等人开发的BPNN。 在1986年,是最常见的神经网络学习算法。它由输入层,(一个或多个)隐藏层和输出层组成。不同层次的节点之间的连接称为权重。该结构如图1所示:

图1 BP 神经网络布局示例

通常,训练课程中有两个通行证,即向前和向后通行证。正向传递从输入层进入输出层,并在隐藏层产生中间输出,在输出层产生网络输出。另一个传球在前锋传球结束后立即开始。 所需的网络输出在输出层引入系统。输出误差与期望输出和实际输出之间的差值成正比,反馈到网络的下层。计算每层的误差信号并将其反馈到下面的图层。错误信号产生后,权重会更新。

A.传播

这个过程包含两个步骤; 第一步是正向传播。其通过神经网络确定每个单元的输出以生成传播的输出激活。

另一个步骤称为反向传递,它从输出层开始向后传播错误信号。方程的推导和误差信号形式可以在[3]中找到。

B.权重更新

在传播阶段计算错误信号之后,可以更新层之间的权重。 它们根据本机的误差信号和与本机连接的当前重量以及学习速率进行修改。

使用前进和后退过程的结果来更新权重和偏差。该过程计算学习速率中的梯度矢量并更新权重和偏差。训练可以通过在这个方向上少量改变网络中的所有权重来实现。

错误函数在哪里,是一个学习率。但是,这是一种调整体重的简单形式,也就是说,这种训练过程可以按几种方式进行组织,例如,反向传播与动量项,增加额外项作为动量。 该值可以使重量的变化取决于过去的体重变化。在(5)和(6)中可以计算出权重的调整,其中是误差函数,T是训练的时代,是动量。

使用共轭梯度下降方法的后向传播,该方法从最小化过程中去除最终的自由参数。 换句话说,学习速率用于确定权重更新(步长)的长度,并在每次迭代时进行调整,并且还找到某种方式来确定本地最优值。这将在[3]中描述。

四、实验结果和评估

A.数据库和实验描述

这个实验的目的是比较和分析BP算法中的参数。相关参数包括学习值,动量项以及其他值,如一些隐藏节点,这些值将被试验和分析以找到参数调整对手写数字应用识别率的影响。

为此,我们使用MATLAB实现了三组权重调整结构。简单向后传播,动量项的反向传播和使用共轭梯度下降方法的向后传播,如下所示

我们从简单结构开始。但是,这种方法只有一个重要的参数就是学习率。因此,我们首先看看不同的学习率如何影响识别率。另外,我们在不同的隐藏节点上检查它们的结果。

然后,我们通过改变动量值来试验第二种方法的有效性,隐藏节点的数量也将根据不同的值来考虑。

最后一种方法是使用共轭梯度下降的后向传播。没有自由参数,它们都是在任何输入值(如上述两种方法)的每个步骤中确定的,它们的识别率仍然被跟踪。但是,训练模型的隐藏节点的数量是正确的

此外,我们首先从UCI机器学习库(http://archive.ics.uci.edu/ml/datasets/)以文本文件的形式下载数据集,手写数字数据集的光学识别。数据来自43个人,其中30人为训练组贡献了力量,另外13人参加了测试组。每个数字都以8x8矩阵的形式编写,并包含64个连续格式的输入属性,其大小从32x32位图标准化。[4]这些数据现在由NIST(美国国家标准与技术研究院)提供。手写数字的标准化位图是从预先打印的表格中提取的。像素的值被归一化。目标值是16个尺寸为8x8的灰度图像。也就是说,他们生成一个8x8的输入矩阵,其中每个元素是一个范围为0到16的整数,最后一个数字是从0到9的分类代码。一些样本来自UCI数据库[4]的数据如图2所示:

图2 UCI数据库中的手写数字示例

使用的手写数字总数为2,400个实例。在训练阶段,使用1800个手写数字作为训练模式,分别使用200和400个不同数字的模式作为验证模式和测试模式。

为了构建网络,MATLAB已经用于在Windows 7下在1.60GHz和3G RAM上执行的PC上。我们采用前馈神经网络和后向传播网络结构,其具有三层,包括输入层,隐藏层 和输出层,因为具有一个隐含层的神经网络算法被证明是一种快速和高效的处理[1] [2]。 并在下一小节中报告不同实验的结果。

B.使用简单的后向传播

这个训练过程只是学习率的一个自由参数。 所以我们分析了这个术语如何对精度泛化有重要影响。此外,我们还使用隐藏节点的数量测试了这种方法。 为此,我们在数据集上设置恒定的迭代次数以得到250 [3]的结果。结果如图3所示:

图3 使用不同的学习速率和隐藏节点的速率

图3显示了不同学习率和隐藏节点的识别率(注册率)。 它开始时的正确率很低,约为90%。但是,当我们调整学习率时,数字继续稳步上升,达到95%以上。它表明,随着我们提高隐藏层的学习速率值和隐藏节点的数量,结果会很高。另一方面,当我们逐渐降低学习速度时,速度也下降了。

C.使用反向传播和动量项

这个学习算法使用动量项来简单地将前一个权重更新的分数动量添加到当前的动量项,以防止系统收敛到局部最小值[3]。因此,我们分析了动量术语如何对这个过程产生重大影响。

从前面的方法中,我们选择20的隐藏节点的高精度结果来模拟具有不同动量和学习速率的模型。结果如图4所示:

图4 在使用不同的学习率和动量项的情况下的比率

正如我们所看到的,整个学习率在97%到98%之间波动。此外,他们甚至在每个动力期限中适度上涨。因此,高动量值和学习率的选择提供了高识别率,而大动量值更好,因为它可以提供高识别率。 特别是在0.2,这个比率达到99%。但是,这些结果仍然取决于隐藏节点的选择。

D.使用共轭梯度下降的后向传播

这种方法基本上没有自由参数,例如 学习速率或动量项,如上所述。 然而,隐藏层的隐藏节点的数量是不同的。之后,建立训练阶段并计算测试集的识别率并列入其中。

图5 在使用不同数量的隐藏节点的情况下的速率

从图5可以看出,隐层节点的识别率随着8层隐层节点的低值开始下降,但在30隐层节点再次下降之前,识别率正常上升并达到98%以上。 这意味着随着我们增加隐藏节点的值直到它达到一个点,识别的价值适度上升。之后,价值会稍微下降。在这个实验中,应该注意的是,18-25个节点中的隐藏节点的数目具有特别高的识别率。

五,结论和未来的工作

本文对学习值,动量项和其他一些隐含节点等参数进行了实验分析,以发现参数调整对手写数字应用识别率的影响。为此,将三种具有不同权重调整的算法(例如简单向后传播,带动量项的向后传播和使用共轭梯度下降方法的向后传播)应用于该区域并获得该实验的UCI数据集。从实验结果来看,动量项的网络识别率最高,达到99%。简单向后传播算法提供了其中低识别率当使用低学习率时。另一种方法在改善隐藏的神经节点的情况下提供高的结果。因此,结果表明,反向传播学习算法的这些参数调整对识别率有显着影响。我们在这方面的未来工作将分析反向传播算法的改进,并结合更好的识别准确性。另一方面,我们将尝试应用一些算法来隔离和连接手写泰语字母中存在的一些数字。

参考文献

[1] Z. Xinbo和W. Lili,“基于改进的学习率BP算法的手写数字识别”.第二届信息工程与计算机科学国际会议(ICIECS),第1-4页,2010.

[2] J. Ahmed和E. M.Alkhalifa。“通过优化算法的有效单层手写数字识别”,第9届国际神经信息处理会议(ICONIP)会议记录。第5卷。第2464-2468页,2002年.

[3] S.罗素和P.诺维格。“人工智能:现代方法”第2版.普伦蒂斯霍尔,2002年.

[4] UCI机器学习库光学识别手写的数字数据集 ,http://archive.ics.uci.edu

全文共7004字,剩余内容已隐藏,支付完成后下载完整资料


资料编号:[16273],资料为PDF文档或Word文档,PDF文档可免费转换为Word

原文和译文剩余内容已隐藏,您需要先支付 30元 才能查看原文和译文全部内容!立即支付

以上是毕业论文外文翻译,课题毕业论文、任务书、文献综述、开题报告、程序设计、图纸设计等资料可联系客服协助查找。