一种基于机器学习方法的手写数字识别技术

(整期优先)网络出版时间:2018-11-21
/ 2

一种基于机器学习方法的手写数字识别技术

余志臻

嘉兴一中浙江嘉兴314000

摘要:手写数字识别技术是OCR技术的一个重要分支,在生活中的很多方面的应用都会此为基础,同时,手写数字识别也是对机器学习方法中的典型案例。本文就手写数字识别的发展和存在的问题展开了讨论,并简要叙述了其实现过程与原理,包括数据收集,特征处理。方法确定,模型训练与测试等多个步骤。

关键词:机器学习;数字识别;随机森林;特征提取

1.引言

人工智能是二十一世纪三大尖端技术之一,而手写数字识别技术作为人工智能的一种典型运用,是将机器学习由理论过渡到实践的一种方式。手写数字识别技术的目的是识别图像中的手写阿拉伯数字,并将其转化为计算机能识别并使用的字符。作为当前研究的热门,其具有很高的实际价值,主要体现在:

1)阿拉伯数字可以在全世界范围内正常流通,文化的差异并不影响数字的使用和识别;

2)手写数字识别的应用范围较广,在大规模数据统计、银行票据录入等工作中要求处高频的识别手写数字,因此可以极大地提高这些工作的效率;

3)阿拉伯数字类别较少,识别过程相对简单,能够帮助快速的验证新的理论,并且较容易推广到其他相关问题。

2.关于手写数字识别的研究现状

2.1国内外手写数字识别的研究现状

当前,国内对手写数字的研究主要是采用支持向量机和神经网络等算法,正确率比以往有所提升。陈昊等人采用卷积神经网络算法,对MNIST数据集中的测试集达到99.36%的正确率;曾水玲等人采用支持向量机算法,对USPS数据库达到99.8%的正确率。

在国外,1962年,Hubel和Wiesel研究猫视觉结构,提出视觉结构模型和感受野的概念;1974年,PaulWerbos提出反向传播算法,让神经网络的训练变得可能,神经网络研究进入热潮,到了90年代,由于神经网络计算开销非常大,人工神经网络的研究陷入低谷[1]。不过在近几年里,随着硬件水平和算法的不断更新迭代,神经网络的发展又迎来了新的机遇。

2.2手写数字识别的研究难点

阿拉伯数字的类别虽然只有区区10种,但对于脱机手写数字的识别仍有一定难度:

1)数字字符不存在上下文信息,且笔画简单、字符差异小,这导致个别字符在识别过程中难以区分;

2)数字手写风格具有区域性,不同国家、不同地区的手写风格不同,数字写法千变万化,还可能存在书写变形、笔画粘连等情况,数字识别很难完全兼顾各种写法;

3)手写数字识别主要应用于财务、金融等较为严格的领域,对识别的精度要求非常高,甚至不允许出现错误。而大批量的数字处理,又对于手写数字识别的速度有一定的要求,所以兼顾手写数字识别系统的精度和效率也是其研究的一大难点。

3.关于手写数字识别的实现过程

数字识别从识别过程来说可分为联机识别和脱机识别两类,联机识别是通过记录手写设备上数字的有序轨迹来进行处理,现研究已比较成熟。相对而言,本文所研究的脱机识别仅仅通过图像来进行处理,其正确率较低,难度更大,研究也更有价值。本文手写数字识别系统的一般过程为:数据收集与特征提取、方法确定、模型训练以及模型测试与评估。

3.1数据收集与特征提取

手写数字识别的第一个环节是数据收集,MNIST数据集包含0-9的手写阿拉伯数字,由美国国家标准与技术局收集,是本文研究的手写数字识别系统模型数据的主要来源。首先我们需要将其格式由文本转换为图片(分辨率为28*28,每位颜色深度为0-255),我们将其中42000个数据按4:1的比例划分为训练集和验证集,分别用于之后的模型训练和验证工作。另外还提供28000个未带标签的测试集,用于之后的模型测试与评估。

特征提取是手写数字识别过程中的一个重要环节,它指的是通过人为设定,选取图片中的属性,决定每个图像的点是否属于一个图像特征。根据采用的特征提取方法的不同,可以将目前常见的脱机手写数字识别大致分为两类:基于统计特征和基于结构特征的方法[2]。结构特征根据集合和结构知识来描述数据的结构,对规范单一的数字识别率高;统计特征的分类器易于训练,抗噪能力强[3]。

特征是分类的准则,不能提取出合适的特征就无法对数字进行分类。所以对于手写数字识别来说,一个好的特征提取非常重要。而对于本文所使用的MNIST数据集,图像本身是28*28的灰度图像,其展开后的维度是784维,是大部分机器学习算法所能够接受的。因此本文选择基于其统计特征中的像素特征作为研究的对象。

3.2方法对比与确定

手写数字的识别过程中需要应用到一些机器学习的方法,机器学习的方法很多,并且存在很大的差异。该领域涉及到的机器学习方法主要有:支持向量机,人工神经网络,决策树等。支持向量机在20世纪90年代初由Vapnik等人提出,其优点主要是能在样本较少的情况下保持较高的泛化能力,但也具有训练算法速度慢、算法复杂的缺点。人工神经网络在20世纪40年代左右就已提出,80年代又出现了反向传播算法,为人工神经网络增添了活力,该算法具有容错能力强的特点,但训练时间较长,对硬件要求较高。决策树算法是一种应用较为广泛的分类算法,其过程相对简单、理解容易,但在数据不足的情况下容易出现过拟合的现象。

随机森林算法由LeoBreiman在1996年提出,它是由多颗决策树构成的一个集成学习模型。它克服了决策树过拟合问题,对噪声和异常值有较好的容忍性,准确率较高,且能够处理高维度数据,不需要做特征选择。且该算法的理解较为简单直接,因此本文取其作为机器学习方法来进行手写数字识别。

3.3模型训练

决策树是随机森林算法中最基本的分类器,本质上是利用某种函数关系对数据进行分类。其基本原理是建立一棵树,从根结点输入数据,在分支节点利用特征的差异对样本进行划分,将样本不断向下传递,最终达到某一个叶结点,该叶结点所代表的样本的类型即为该决策树的输出。建立一棵决策树的过程非常重要,它关乎到整个算法的效率和正确率,其基本过程主要是通过不断地从属性集中划分最优属性来建立分支结点,使从根节点输入的训练集样本被不断分类成样本纯度更高的子集合,并在子集合样本纯度无法继续提高或继续分类会导致过拟合现象后生成叶结点,该叶结点所代表的样本类型为上一分支结点样本中数量最多的样本类型。以不同的训练样本集和属性集训练出多棵决策树后,根据这些决策树的输出来决定最后的输出,即为随机森林算法。

利用上文收集的数据,确立的特征和方法,我们将对手写数字识别进行训练以得到一个一般模型。主要过程为:抽取100组样本(最终将生成一百颗决策树),每组样本中随机抽取67%的训练集数据作为初始训练数据,将每张图片的784个像素点对应的灰度值表示为特征向量输入到算法中进行训练。

3.4模型测试与评估

训练后模型后,将待测数据输入到该模型中,对每一棵决策树的输出进行统计,若输出最多的类别比例高于整体类别的80%,则该测试数据的类别即为最高比例的结果,否则拒绝识别该数字。手写数字识别作为一个识别系统,我们最终要用一些指标来评判其高低。常见的评价指标有三种:正确率、替代率和拒识率,其公式定义如下:

但是在数字识别的应用中,人们发现“识别精度”这个指标往往更能体现一个模型的性能高低,其定义如下:

在将测试集数据带入已建立好的模型后,我们主要通过以上指标进行评估。一个理想的系统应是R,S尽量小,而P,A尽可能大。而在一个实际系统中,S,R是相互制约的,拒识率R的提高总伴随着误识率S的下降,与此同时识别率A和识别精度P的提高[4]。若识别精度较低,则可对模型训练过程中的参数进行修改,如增加随机森林中决策树的棵数;若拒识率较高,则可以在保证正确率的情况下提高拒识标准,对模型进行改进。

4.结语

本文研究并介绍了采用随机森林算法的手写数字识别系统,零误识率和低拒识率的手写数字识别系统仍是该领域的目标。同时随机森林算法的完善,手写数字识别系统在金融、银行等领域应用的推广也是未来有待研究的问题。

参考文献

[1]孙祥瑜.机器学习方法在手写数字识别中的应用[J].中国战略新兴产业,2017(44).

[2]张玉叶,王尚强,王淑娟,等.脱机手写数字识别技术研究[J].电脑知识与技术,2016,12(29):195-197.

[3]胡玲琳,张若男,李培年,等.手写数字体自动识别技术的研究现状[J].浙江万里学院学报,2015(2):72-78.

[4]任丹,陈学峰.手写数字识别的原理及应用[J].计算机时代,2007(3):17-18.