基于支持向量机的手写数字识别研究外文翻译资料

 2021-11-15 09:11

英语原文共 7 页

基于支持向量机的手写数字识别研究

摘要

本文提出了一种基于SVC的手写数字识别机器学习模型。并且在本文中还分析了样本数量、核函数参数、惩罚系数等等对预测模型的影响。结果表明,训练样本对模型有着十分显著的影响,这其中包含着一个可以接受的训练数值。不同的核函数对模型的精度会产生不同的影响。在这其中,径向函数是最佳的识别模型。随着模型中C值的不断增加,识别率不断提高;而随着伽马值的增加,识别率呈现出一种先上升后下降的过程,其中拐点处称为伽马的阈值。

  1. 介绍

图像是信息表达、存储和传输的重要手段之一。随着计算机技术和数字图像处理技术的飞速发展,对数字图像的分类和识别技术提出了迫切的要求。图像识别,广泛应用于笔迹识别、人脸识别、车牌识别等,是利用人工智能技术使计算机能够识别图像中的信息。例如,识别手写日期、账户数字等数字信息的方法是图像识别的关键技术。

支持向量机(SVM)是由Vapnik提出的一种基于统计学习理论的学习方法。基于结构风险最小化原理,支持向量机可以尽可能提高学习机器的泛化能力,即使是从有限的训练样本中获得的决策规则,对于独立的测试数据集,仍然会得到较小的错误。近年来,SVM在模式识别、回归分析和特征提取等方面得到了广泛的应用。vapnikthat发现不同的核函数对SVM性能影响不大,而影响SVM性能的关键因素是核函数参数和惩罚系数。因此,核函数参数和惩罚系数的研究是提高机器学习性能的一个重要领域。本文建立了一种基于SVC的手写数字识别机器学习模型,然后分析了训练次数、核函数和惩罚效率参数对预测模型的影响,为提高机器学习模型的效率和精度提供参考。

  1. 基于SVC的手写数字识别

2.1 SVC算法理论基础

SVM分类器通过选择训练一组成为支持向量的特征子集,使得对支持向量集的线性划分等同于对整个数据集的分割,实现了降低运算复杂度的同时,保证了分类识别的精度。

利用支持向量机构造了一个或一组高维或无限维空间中的超平面,可以用于分类、回归或其他任务。一般情况下,由于边缘越大分类器的泛化误差越小,因此距离任何类中最近的训练数据点距离都最大的超平面能够实现很好的分离。支持向量机包括C-SVC、v-SVC、一类支持向量机、e-SVR、v-SVR等,是一套有监督的支持向量机用于分类、回归和边界检测的学习方法。而SVCs是其中唯一一个能够对数据集执行多类分类的类。

给定训练向量,在两个类中,其中一个向量,。SVC算法主要解决了以下的两个首要的问题:

通过化简,我们可以得到如下的式子:

在这其中是归一化的向量。是上限解,是一个的半定义正矩阵。就是我们所说的核函数。在这里,训练向量通过函数隐式映射到一个更高的(可能是无限的)维空间。

决策函数为:

2.2 SVM的优点

S V M以统计学习理论为基础,它具有很强的学习能力以及泛化性能。S V M学习结果是支持向量的集合,一般是学习样本集中的一小部分,支持向量集可以充分的体现整个样本集的属性。大致归纳为:

(1)非线性映射是S V M方法的理论基础,S V M将输入空间中的非线性问题通过引用核函数映射到高维特征空间,然后在高维空间中构造线性函数以作判别。

(2)对特征空间划分的最优超平面是S V M的目标,最大化分类边际的思想是S V M方法的核心,S V M算法可最终转化为凸优化问题,因而可保证算法的全局最优性,避免了神经网络无法解决的局部极值问题。

(3)支持向量机是基于结构风险最小化的原则,保证了学习机器具有良好的泛化能力。

(4)S V M是一种有坚实理论基础的新颖的小样本学习方法。它能够自动识别出训练集中的一个子集,此子集基本上可以代表训练集中的全部信息,也就是说只有这个子集对分类及回归问题的求解起作用。从本质上看,它避开了从归纳到演绎的传统过程,实现了高效的从训练样本到预报样本的“转导推理”,大大简化了通常的分类和回归等问题。

(5)S V M的最终决策函数只由少数的支持向量所确定,计算的复杂性取决于支持向量的数目,而不是样本空间的维数,它将实际问题通过非线性变换转换到高维的特征空间,在高维空间中构造线性判别函数来实现原空间中的非线性判别函数,特殊性质能保证机器有较好的推广能力,这在某种意义上避免了“维数灾难”。

(6)少数的支持向量决定了最终结果,这帮助我们抓住了关键样本并“剔除”了大量冗余样本;而且,使用该方法不但算法比较简单,而且还具有较强的“鲁棒”性,主要体现为:

(1)增加、删减非支持向量的样本不会对模型造成影响;

(2)支持向量样本集也具有较好的“鲁棒性”;

(3)在一些应用中,S V M方法对核的选择范围比较广泛。

2.3 核函数

为了解决具体问题,选择合适的核函数是非常重要的。以下给出核函数的四种主要表现形式:

  1. 线性核函数

主要用于线性可分的数据效果较好,这种核函数的优点是参数少,而且执行速度很快。

  1. 多项式核函数

可以将低维度的样本空间映射到高维的特征空间,但参数很多且计算量大,容易导致“过拟合”。

  1. RBF (径向基核函数)

也称为高斯核函数,相对于多项核函数参数较少而且能够取得较好的性能,对于未知数据分类任务默认选择RBF核函数

  1. 两层感知器核函数

当SVM采用sigmoid核函数时,其实现的就是一个多层神经网络结构。

内核函数选择没有统一的模型。核函数只能通过实验比较来确定,根据特定样本的特点,才能获得更好的参数和更强的泛化性能。在某些情况下,内核函数的性能得到了满足,而另一些情况则相当糟糕。对于所有选择的核函数,只要设置适当的参数,就可以获得更好的精度。通常,选择径向基函数(RBF)是合适的。目前,采用交叉验证的方法来选择合适的核函数。最好的核函数是归纳误差最小的核函数。

2.4 VC 维

V C维(Vapnik-C hervonenkis Dimension)是为了研究学习过程一致收敛的速度和推广性,由统计学习理论定义的有关函数集学习性能的一个重要指标。

V C维在有限的训练样本情况下,当样本数n固定时,此时学习机器的V C维越高学习机器的复杂性越高。

模式识别中V C维的直观定义是:对一个指示函数集,如果存在H个样本能够被函数集中的函数按所有可能的Hsup2;种形式分开,则称函数集能够把H个样本打散,函数集的V C维就是它能打散的最大样本数目H,如果对于任意数目的样本都有函数可以将它们打散,则称函数集

的V C维无穷大。可以通过使用一定的阈值将之转化为指示函数来定义有界实函数的V C维。

通常说的结构风险最小化就是在保证分类精度(经验风险)的基础上减少学习机器的V C维,令学习机器在整个样本集上的期望风险得到有效控制。影响期望风险上界的因子有训练集的规模n和V C维h两个方面。可以发现,结构风险最小化的由来就是在保证分类精度的同时降低学习机器的V C维,使得学习机器得以控制在整个样本集上的期望风险。在有限的训练样本情况下,当样本数n固定时,此时学习机器的V C维越高,则置信范围就越大,此时,真实风险与经验风险之间的差别就越大,这就是会出现过学习现象的原因。机器学习过程不但要使经验风险最小,还要使其V C维尽量小,以缩小置信范围,才能取得较小的实际风险,即对未来样本有较好的推广性,它与学习机器的V C维及训练样本数有关。

V C维反映了函数集的学习能力,V C维越大则学习机器越复杂,所以V C维又是学习机器复杂程度的一种衡量。

第3章 识别过程和实验设计

3.1识别过程

手写数字识别的主要步骤如下所示:

首先对手写数字进行分析,并进行一系列预处理,提取一组特征向量。然后将这些训练特征向量发送到SVM的训练I/O中,训练参数和支持向量。然后提取需要识别的手写数字特征向量,并将其发送到SVM的预测I/O中。最后给出了预测结果,并计算识别率。算法的流程图如下图所示。

图1 SVM算法流程图

  1. 预处理:由于手写图片中的数字大小以及位置形态各异,预处理过程是消除每幅图像中无关的内容,展现图片的本质信息。首先把数据集中每幅图像z转换为二值图像,然后截取包含数字的最大区域,此时每幅图片中的数字上的像素点灰度值为1,背景中像素点值为0。

图像预处理在整个手写体数字识别中,占据十分重要的地位。预处理做的好,能将反映数字本质特征的部分得以保留,使得后期识别相对容易,识别正确率高,识别速度快;反之,将会导致后期识别变得困难,或是出现误识、拒识等后果。

  1. 特征提取:特征提取的目的是在二值或灰度值点阵图像的基础上,对数字图像点阵进行数学变换后提取的特征。常用的数学变换有小波变换、样条曲线拟合、矩、傅里叶描绘子等。统计特征主要描述手写体数字结构的本质特征。该方法区分相似字的能力较强,可以得到的识别正确率较高的分类结果,但易受到噪声等因素的干扰。

通常,采用单一的特征提取方法可以利用的手写数字信息量有限,这样不可以避免地存在一些识别的四角,即存在l利用该特征向量难以区分的手写体数字。因此,现在普遍采用将多种特征提取方法相结合,取长补短的方法来获取最优特征向量。

3.2 实验设计

3.2.1数据集信息

收集手写数字数据集是一项非常耗时的工作。在本次实验过程中所使用到的数据集是UCI ML手写数字数据集测试集的副本。该数据集由1797幅图像组成,其中每幅图像为8*8像素,并且代表一个手写数字。数据集中的图像被划分为10个类,每个类表示一个0-9之间的数字。如下图所示。

图2 训练数据(左)和测试数据(右)示例

3.2.2 机器学习库

目前,Python中有很多可以供人们取使用的机器学习库,在这其中最著名、最简单、最高效的数据挖掘和数据分析工具就是scikit-learn,它可以被所有人访问,并且可以在各种许许多多的场合环境下使用,十分的便捷有效。在scikit-learn库中,分类估计器是一个Python对象,它不仅实现了fit (x, y)方法,还实现了predict (T)方法,并且一些预测结果显示如图2所示。

我们给出了10个可能的类的每个类的样本(数字0到9),同时我们会拟合一个估计值,以便能够预测不可见样本所属的类。缓存的大小设置为500MB,当利用RBF核函数训练SVM时,一定要记得考虑C和伽马的值。

第4章实验结果分析

4.1训练样本数的影响

通过实验结果分析表明,训练样本的数量对模型具有很大的影响。当训练样本的数量不断增加时,运行的时间就会显著增加。除此以外,随着预测次数的不断增加,模型的运行时间也会增加,但是造成的影响与训练样本数量相比不是很显著。

尽管训练样本数量提高给运行时间带来负担,但是模型的整个精度将对之前会显著提高。而当预测模型达到一定精度时,增加训练样本的数量并不能提高模型的精度。当预测数为300、500和800时,随着训练样本的数量由100跃至600,识别的准确率从原先的不足90%增加到94%以上。但是从图三我们可以看出当训练次数增加到600次时,模型的精度变化就开始趋于平稳。因此,我们在训练的过程中,不能一味的增加训练样本数,以追求更高的准确率,事实上,样本训练数有一定的阈值,在这范围内,模型识别的准确率才是最高的。

图3 训练次数与运行时间(左)、精度(右)的关系

4.2 核函数的影响

通过实验结果分析发现不同的核函数对模型的识别精度有着不同的影响。实验结果表明,RBF核函数的性能最好。手写数字的识别精度可以达到93% -100%,平均识别精度为97%(图4)。线性和多项式的识别精度也可以达到83%-100%,平均识别精度分别为93%和94%。但是,两层感知器核函数的泛化性能较弱,识别精度从48%到95%不等,数字2、3、8的精度要差得多(不超过55%),平均精度只有70%。综上所述,RBF学习能力最强,线性函数和多项式函数学习能力最强,而两层感知器学习能力最弱。

图4 不同核函数对应的模型精度

4.3 SVM参数的影响

在SVM训练过程中,初始参数的设置是十分重要的,参数的选取会直接影响到SVM的泛化能力。因此,通过试验选择合适的参数来训练SVC模型是必要的。

在使用RBF核函数训练SVM时,我们需要考虑到C和伽马的值。随着C值不断的增加,模型的识别准确率也在不断提高。而当C值增加到一定程度时,识别率的变化渐渐趋于稳定,最大的准确率为97%。而随着gamma值的增大,识别率先增大,当gamma值增大到一定值(约为0.001-0.002)时,准确率开始下降。如图5中所示。

图5 模型识别精度与C值(左)和伽马(右)的关系

  1. 总结
  2. 训练样本对模型有显著影响。随着训练样本数量的增加,模型的精度将显著提高。当预测模型达到最佳精度时,增加训练样本的数量并不能提高模型的精度。因此,训练样本数有一个阈值,超过阈值范围,将不会增加模型精度。
  3. 训练样本对模型有显著影响。随着训练样本数量的增加,模型的精度将显著提高。当预测模型达到最佳精度时,增加训练样本的数量并不能提高模型的精度。不同的核函
原文和译文剩余内容已隐藏,您需要先支付 20元 才能查看原文和译文全部内容!立即支付

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