实验指导书(模式识别)

上传人:d**** 文档编号:224583283 上传时间:2023-08-01 格式:DOCX 页数:34 大小:661.87KB
返回 下载 相关 举报
实验指导书(模式识别)_第1页
第1页 / 共34页
实验指导书(模式识别)_第2页
第2页 / 共34页
实验指导书(模式识别)_第3页
第3页 / 共34页
点击查看更多>>
资源描述
模式识别实验指导书河北工业大学信息工程学院模式识别课程组2008年1月 A前言模式识别是电子信息工程专业的一门重要的专业选修课。其目的是通过对模式 识别基本理论、概念和方法的学习,使学生能够灵活运用所学知识,借助计算机解 决实际工程应用中的自动识别问题。而模式识别实验是本门课程重要的教学环节 , 其目的是使学生掌握统计模式识别中常见分类方法的算法设计及其验证方法,通过 接受实验的训练,以提高学生的分析和解决问题的能力。为此,河北工业大学信息 工程学院编写了模式识别实验指导书。在编写中由于可供参考的实验指导资料 有限,因此本书肯定存在不少不妥之处,恳请读者予以批评指正。本实验指导书共包含三个实验。第一个实验为安装并使用模式识别工具箱,通 过本次实验可以让学生了解模式识别软件的具体形态、基本设置以及运行流程,了 解一些基本识别方法的工作过程。第二个实验为用人工神经网络对二维样本进行分 类,通过本次实验可以让学生掌握人工神经网络的运行机理,了解神经网络在解决 实际问题时如何进行参数设置和模型选择。第三个实验为用支持向量机进行人脸识 别,通过本次实验可以让学生掌握支持向量机的运行机理、参数选择与快速算法等, 了解在实际分类中学习样本库的重要性。目录实验一安装并使用模式识别工具箱4实验二用人工神经网络对二维样本分类13实验三用支持向量机进行人脸识别22实验一 安装并使用模式识别工具箱 (2 学时)一、实验目的1掌握安装模式识别工具箱的技巧,能熟练使用工具箱中的各项功能; 2熟练使用最小错误率贝叶斯决策器对样本分类;3熟练使用感知准则对样本分类; 4熟练使用最小平方误差准则对样本分类; 5了解近邻法的分类过程,了解参数 K 值对分类性能的影响(选做); 6了解不同的特征提取方法对分类性能的影响(选做)。二、实验内容1安装模式识别工具箱;2用最小错误率贝叶斯决策器对呈正态分布的两类样本分类;3用感知准则对两类可分样本进行分类,并观测迭代次数对分类性能的影响; 4用最小平方误差准则对云状样本分类,并与贝叶斯决策器的分类结果比较; 5用近邻法对双螺旋样本分类,并观测不同的 K 值对分类性能的影响(选做); 6观测不同的特征提取方法对分类性能的影响(选做)。三、实验仪器、设备1. PC机一系统最低配置512M内存、P4 CPU;2. Matlab仿真软件 一7.0 / 7.1 / 2006a等版本的Matlab软件。四、实验原理1 .模式识别工具箱 模式识别工具箱是学习模式识别基本原理、灵活应用既有的模式识别方法、开 发研制新的识别方法、提高学生分析和解决问题能力的一个良好平台。本实验采用 的模式识别工具箱是由Elad Yom-Tov, Hilit Serby和David G. Storka等人开发的。2. 最小错误率贝叶斯决策器 在模式识别领域,贝叶斯决策通常利用一些决策规则来判定样本的类别。最常见的决策规则有最大后验概率决策和最小风险决策等。设共有K个类别,各类别用 符号c (k = 1,2,K)代表。假设C类出现的先验概率p(c )以及类条件概率密度kkkp(x| c)是已知的,那么应该把X划分到哪一类才合适呢?若采用最大后验概率决策k规则,首先计算X属于c类的后验概率kP (c ) P (x I c ) P (c ) P (x I c )kP (x)工 P (c )P (x I c )kk k=1然后将x判决为属于c类,其中k = arg max P (c I x)k1k 0。n感知准则通过使-aT x) 0最小而求出向量a,其中R是被解向量a错分的样本集。上式一般用梯度下降法求解。4最小平方误差准则设有一组样本x ,x,.,x,其中x是规范化增广样本向量。现欲寻找一个解向12 Nn量a,使得aT x = b 0。最小平方误差准则通过使nnJ(a)= Cx b )s n nn=1最小而求出向量a。上式一般用最小二乘法求解。5近邻法原理 近邻法是一种经典的模式识别方法。正如其名所示,近邻法在分类时运用如下“最近邻分类规则”对测试样本X进行分类:在X的周围找出离其最近的k个近邻样 本,该k个样本中最频繁出现的那一类样本所对应的类别就是X所属的类别。以图 1-1为例,图中存在两类样本,第一类记为c并用黑点表示,第二类记为c并用方框12表示。现欲用NN判决x是属于c类还是c类。假设取k = 5,则可找出X的5个近邻12样本并用圆圈围住,圆圈中有3个样本属于c类(目标值t = 1,n = 1,2,3),2个样本1n属于c类(目标值t =1,n = 4,5),那么x根据规则应属于c类。2n1图 1-1 近邻法的分类原理示意图6特征提取特征提取是模式识别中的关键一环。因为原始的特征数量可能很大,或者说样 本处于一个高维空间中,因此可以通过映射或变换的办法在低维空间中来表示样本, 这个过程就是特征提取。常见的特征提取方法有主成分分析(PCA)与主曲线等。 更详细的内容可参见教材第 8 章。五、实验步骤1安装模式识别工具箱。首先将工具箱文件拷贝至指定文件夹里,然后在MATLAB环境下将该文件夹设置成“current directory”(即当前文件夹);最后在MATLAB 命令行状态下,键入 Classifier 并按回车键;则可得到如图 1-2 所示 主界面。在该主界面上,可以装入样本文件(见界面“Filename”处),可以选 择特征提取方式(见界面“preprocessing”处),可以选择不同的模式识别方法(见 界面“algorithms”处),识别结果(识别错误率)显示在界面“classification errors” 处。图 1-2 模式识别工具箱主界面 2用最小错误率贝叶斯决策器对呈正态分布的两类样本分类。首先点击界面 “Filename”处的下拉式菜单,在文件列表中选择双螺旋样本文件XOR.mat;然 后在界面“preprocessing”处下拉式菜单中选择“None”,在界面“Algorithm”处下 拉式菜单中选择“None”,最后点击界面上的“Start”按钮,得到如图1-3所示的 分类结果。使用屏幕拷贝方式将该分类结果保存于 WORD 文档里,并如实记 录界面“classification errors ”处显示的分类错误率。图 1-3 最小错误率贝叶斯决策器的分类结果3. 用感知准则对两类可分样本进行分类。首先点击界面“Filename”处的下拉式 菜单,在文件列表中选择可分样本文件 Seperable.mat ;然后在界面 “preprocessing ”处下拉式菜单中选择“None”,在界面“Algorith m”处下拉式菜单 中选择“Perceptron”,在界面“Num of iteration”处填入数字“300”,最后点击界面 上的“Start”按钮,得到如图1-4所示的分类结果。使用屏幕拷贝方式将该分类 结果保存于WORD文档里,并如实记录界面“classification errors”处显示的分类 错误率。图1-4用感知准则对两类可分样本分类后的结果现在界面“Num of iteration”处重新填入数字T0000”,然后点击界面上的“Start”按钮,可得到新的分类结果。使用屏幕拷贝方式将该分类结果保存于 WORD文档里,并如实记录界面“classification errors”处显示的分类错误率。最 后比较不同迭代次数情形下分类效果的异同。4. 用最小平方误差准则对两类样本进行分类。首先点击界面“Filename”处的下 拉式菜单, 在文件列表中选择可分样本文件 Clouds.mat ;然后在界面 “preprocessing ”处下拉式菜单中选择“None”,在界面“Algorith m”处下拉式菜单 中选择“LS”,最后点击界面上的“Start”按钮,得到如图1-5所示的分类结果, 其中黑线为最小平方误差准则的分类结果,红线为贝叶斯决策器的分类结果。 将这两种分类结果的比较(分类效果好坏,能否将样本完全分开等)记录下来, 并使用屏幕拷贝方式将分类结果保存于 WORD 文档里,最后如实记录界面 “classification errors ”处显示的分类错误率。图 1-5 用最小平方误差准则对两类可分样本分类后的结果5. 用近邻法对双螺旋样本进行分类。首先点击界面“Filename”处的下拉式菜单, 在文件列表中选择双螺旋样本文件Spiral.mat;然后在界面“preprocessing”处下 拉式菜单中选择“None”,在界面“Algorithm”处下拉式菜单中选择“Nearest Neighbor”,在界面“Num of nearest neighbor”处填入数字“3”,最后点击界面上的 “Start”按钮,得到如图1-6所示的分类结果。使用屏幕拷贝方式将该分类结果 保存于WORD文档里,并记录界面“classification errors”处显示的分类错误率。图 1-6 近邻法对双螺旋样本分类后的结果在界面“Num of nearest neighbor”处重新填入数字T2”,然后点击界面上的 “Start”按钮,可得到新的分类结果。使用屏幕拷贝方式将该分类结果保存于 WORD文档里,并如实记录界面“classification errors”处显示的分类错误率。最 后比较“k=3”与“k=12”两种情形下分类效果的异同。6特征提取方法对分类效果的影响。用感知准则对两类可分样本进行分类。首 先点击界面“Filename”处的下拉式菜单,在文件列表中选择可分样本文件XOR.mat;然后在界面“preprocessing”处下拉式菜单中选择“PCA”,在界面“New data dimension”处填入数字2,在界面“Algorithm”处下拉式菜单中选择“Nearest Neighbor”,在界面“Num of nearest neighbor”处填入数字“3”,最后点击界面上的 “Start”按钮,得到如图1-7 (a)所示的分类结果。使用屏幕拷贝方式将该分类 结果保存于WORD文档里,并如实记录界面“classification errors”处显示的分类 错误率。现在界面“New data dimension”处重新填入数字1,其它条件不变,然后点 击界面上的“Start”按钮,可得到新的分类结果如图1-7 (b)所示。使用屏幕拷 贝方式将该分类结果保存于 WORD 文档里,并如实记录界面 “classification errors”处显示的分类错误率。最后比较提取的特征数目不同的情形下分类效果 (即图1-7 (a)(b)两个图)的异同。(a)主成分分析提取2个特征(b)主成分分析提取1个特征图 1-7 特征提取方法对分类结果的影响六、实验报告要求1 按照固定格式(见附录 1)撰写实验报告;2 在实验报告中,必须对实验指导书中所列思考题给予回答;3 详细写出实验总结与心得体会,可以根据自己的实验情况,在实验设置等 方面给出合理化建议。七、实验注意事项1.在实验中如遇到问题,可仔细阅读该工具箱自带的用户指南(User guide)。八、思考题1. 在图1-7中使用主成分分析进行特征提取,为什么提取的特征数目为1时(见图 1-7 ( b ),分类效果不尽人意?附录1:实验报告固定格式实验报告班级:姓名:学号:组别:同组人:课程名称:实验室:实验时间:(使用实验报告纸的,以上内容可按照实验报告纸格式填写)实验一 实验项目名称一、实验目的:二、实验内容与原理:三、实验器材(设备、元器件、软件工具、平台):四、实验步骤:五、实验数据及结果分析:六、实验结论:七、思考题:八、其他(实验总结、心得体会及对本实验方法、手段及过程的改进建议等)。实验二 用人工神经网络对二维样本分类(2 学时)一、实验目的1掌握人工神经网络的运行机理、参数设置和模型选择等; 2熟悉感知器的原理、特性与功能; 3熟悉误差反传网的原理、特性与功能; 4熟悉径向基函数网的原理、特性与功能;二、实验内容1.观察人工神经元的输出随权值w与b的变化;2生成两类样本,然后用感知器对两类样本进行分类;3. 用误差反传网实现函数逼近,观察参数设置和拓扑结构对逼近性能的影响;4. 用径向基函数网逼近任意函数;三、实验仪器、设备1. PC机一系统最低配置512M内存、P4 CPU;2. Matlab 仿真软件 7.0 / 7.1 / 2006a 等版本的 Matlab 软件。四、实验原理1 人工神经网络:人工神经网络(artificial neural networks, ANN )学习,在模式识别领域占有重 要地位。现在的计算机尽管有很高的计算速度与超大的存储容量,但它却缺乏感知、 识别、联想、决策和适应环境等人脑具备的能力,因此能否让计算机象人脑那样工 作多少年来一直是不同领域的学者试图认识并回答的问题。人脑是由极大量的的生 物神经元经过复杂的相互连接而成的一种非线性并行信息处理系统,尽管单个生物 神经元的反应速度比构成计算机的基本单元逻辑门慢五六个数量级,但人 脑中神经元数目巨大且连接复杂,因此对有些问题的处理速度比计算机还快。由此 看来人脑的组织结构和运行机制有其绝妙的特点,从模仿人脑出发,探究更接近人 类智能的信息处理系统具有重大意义,这促使人们大力研究人工神经网络学习方法 与模型。人工神经网络是用大量的简单计算-处理单元(神经元)构成的非线性系统,它 具有学习能力、记忆能力、计算能力以及各种智能处理功能,在不同程度和层次上 模仿人脑神经系统的信息处理、存储及检索功能。当然这种模拟是粗略而且简单的, 无论是在规模上还是功能上都与人脑差得太远,但这并不妨碍它在一些实际工程应 用领域显示出威力。2 一个典型的人工神经元模型:生物神经元是生物神经系统总最基本的单元,是构成生物神经系统的基石。它 由细胞体、树突和轴突组成,轴突与其它神经元形成功能性接触。当外界刺激达到 一定阈值时,神经元处于兴奋状态并经轴突输出,否则处于抑制状态。人工神经元 是生物神经元的某种简化和抽象,下面以 M-P 神经元为例介绍其基本原理。图2-1 (a)是一个M-P神经元模型,它有d个输入结点,一个输出结点。若输 入x = (1),.,xQ),则输出y = f任小)_订,其中w为第i个输入结点与输出结点(J 丿1间的连接权值,f为激活函数,d为激活阈值。2yw. nx(1)x(2)x(d)ymy1Kywm图2-1神经网络模型拓扑结构图。(a) M-P神经元;(b)感知器;(c)径向基函数网3 两个重要的学习规则:学习是神经网络最重要的特征之一。神经网络通过学习改变其内部状态,使输 入与输出呈现出某种规律性。学习是按照一定的学习规则进行的, Hebb 规则和误差 修正规则是两种最重要的规则。Hebb规则可以归结为:如果神经网络中某一神经元与另一直接与其相连的神经 元同时处于兴奋状态,那么这两个神经元间的连接强度(权值)应增强。假设第i和j个神经元的状态分别为u和u,则两个神经元间的权值修正量为Aw =n uu,耳称ijiji j为学习因子。误差修正规则的最终目的是使网络中某一神经元的实际输出在均方意义上最逼近于期望输出,令第j个神经元的期望输出为e,实际输出为y,则第i个 jj 输入结点与第j个神经元间的权值修正量为Aw =n(e - y )xG)。ijj j4 三种经典的网络模型:在神经网络的研究中经常提到神经网络学习模型的概念,神经网络模型是关于 一个神经网络的综合描述,包括网络的拓扑结构、信息传递方式、学习方式和学习 算法等。目前人们已提出了上百种神经网络模型,表 2-1 列出了其中最经典的三种。 神经网络模型按学习方式可分为有监督学习和无监督学习;按拓扑结构可分为前向 网和反馈网,前向网有明显的层次,信息的流向由输入层到输出层,反馈网没有明 显的层次,存在输出单元到输入单元的反馈连接;按网络活动方式可分为确定型网 和随机型网,确定型网由确定性输入经确定性作用函数,产生确定性输出,随机型 网由随机输入或随机作用函数,产生遵从一定概率分布的随机输出。网络模型感知器误差反传网径向基函数网英文缩写BPRBF提出时间195719861988学习方式有监督有监督有监督拓扑结构前向前向前向活动方式确定型确定型确定型表 2-1 三种经典的神经网络模型比较感知器感知器在神经网络乃至整个机器学习领域都有重要意义。即使是对其持激烈批 评态度的Minsky,在1988年重版其名著感知器时也在扉页上写上了“仅以此纪 念Rosenblatt”。图2-1 (b)就是一个感知器示意图,它是一个双层网络,输入层有 n个结点,输出层有m个计算单元,采用误差修正规则作为学习准则。误差反传网误差反传网(BP网)得名于运行其上的BP算法,它又名多层前向网或者多层 感知器(multi-layer perceptron, MLP)。与经典的感知器只有输入层与输出层相比, BP网在输入层与输出层间还有若干隐层,通过BP算法从后向前修正各层之间的连 接权值,能求解感知器所不能解决的问题。经典的感知器的收敛性不受权值的初值影响,但 BP 网权值的初值选择会影响 收敛速度,而且有时会陷入局部极小点,不能保证收敛到全局最优点;当 BP 网的层数大于三层时,陷入局部极小点的可能性很大,此时需利用先验知识缩小搜索范 围。另外 BP 网的输入层与输出层结点数由问题本身决定,例如在模式识别中输入 层结点数为特征维数,输出层结点数为类别数;但中间隐层的结点数只能靠经验确 定。一般而言,要解决的问题越复杂,需要的隐层的结点数越多,但过多的结点会 导致“过学习”,从而使网络的泛化能力变差。径向基函数网1988年Broomhead等将径向基函数(radial basis function, RBF)首先用于神经 网络设计,从而构成了 RBF网。RBF网如图2-1 (c)所示,它与感知器很相似, 只是感知器多了一个隐层,因此是一种三层网。隐层单元采用径向基函数K作为其 输出特性,输入层到隐层的权值固定为 1,输出结点为线性求和单元,隐层到输出结点间的权值w可调。假设RBF网输入层有d个结点,隐层有m个结点,若输入ix =以几x(d),K (x, x ) = exp (lx - xL/26),x是基函数的中心,b为基函数的宽度, c则输出为w expi(-1 x - x Lci/2b2。一个函数可以表示成一组基函数的加权和,因此RBF网可以看作是用隐层单元的输出函数构成的一组基去逼近一个函数。五、实验步骤1.在MATLAB命令行状态下,键入DEMO并按回车键;得到如图2-2所示的 界面。然后点击“Toolboxes”,打开MATLAB工具箱。再点击“Neural networks”, 选定神经网络工具箱,如图 2-3所示。砖 HelpEEFileView Go FavoritesDeskt op WindowHelpHelp NavigatorX - o a mContents Index Search DemosTitle: Toolbox DemosQ Getting Started with Demos4 MATLABToolboxesToolbox Demos电Simi血ik|$ BlocksetsToolboxes are specialized collections of M-files (MATLAB language programs) built for solving particular classes of problems.Our toolboxes represent the efforts of some of the worlds top researchers in fields such as controls, signal processing, system identification, and others.%开始 Q c 丨08看木一课程( 勁6卖谢片导书.XmmSHelp寻 15:24Demos are available for the toolboxes listed in the following table. Your particular installation might not include all of these toolboxes. To see which toolboxes your installation includes, expand the Toolboxes entry in the left pane. From there, select a toolbox to view its demos, and then select individual demos you want to view and run. To get more information for any of these products, visit www.mathworks. com/products, or contact Sales.ToolboxDescriptionBioinformaticsRead, analyze, and visualize genomic, proteomic, and micro array dataCotwiunicat-ionsDesign and analyze algorithms for the physical layer of communication systemsControl 摯t已mDesign and analyze controllers for closed-loop dynamic systemsCurve FittingPerfbmi model fitting and:analysisData AcquisitionAcquire and send out data from plug-in data acquisition boardsDatabaseExchange data with relational databasesDistributed ComputingRun MATLAB and Simulink applications on a computer clusterFilter DesignDesign and analyze fixed-point, adaptive, and multirate filtersAData Acquisition花1d Nav1 eatorContentsImage AcquisitionImage ProcessingInstrument ControlLink for Code Composer StLink for ModelSimNeiuonsModel Predictive ControlNeural Network;rential EquationRobust ControlSystem IdentificationVirtu;al 及亡 alityB M-GTJIP| M-GUIH M-GUIH M-GUI1E M-file图 2-2 打开 MATLAB 工具箱Neural Network DemosThis toolbox provides a complete set of functions and a graphical user interface for the design, implementation, visualization, and simulation of neural networks. It supports the most commonly used supervised and unsupervised network architectures and a comprehensive set of training and learning functions.;and DirecProduct page at mathworks, com图 2-3 选定神经网络工具箱2观察并记录人工神经元(Neurons)的特性与功能。首先在如图2-3所示界 面上,将鼠标移至“simple neuron and transfer function”并双击之,得到如图2-4所示 界面。然后双击如图2-4所示界面上的文字“run this demo”,得到图2-5。图 2-4 选定神经元演示程序Neural Network DESIGNOne-Input NeuronChapter 2iWatch the change to the neuron function and its output.Pick the transfer function with the F menu.Alter the weight, bias and input by dragging the triangular shaped indicators.Linear Neuron: a = purelin(w*p+b)wP图 2-5 神经元演示模块在如图2-5所示界面上,拖动与w与b对应的沁符号,从而改变w与b的值, 观察神经元的输出随权值w与b的变化情况,并将改变后的界面保存下来(在菜单 “Edit”中选择“Copy figure”,再粘贴至WORD文档中)。3观察并记录感知器(Perceptrons)的特性与功能。在如图2-3所示界面上,将鼠标移至“Decisions Boundaries”并双击之,得到一个界面;然后双击界面上的文 字“run this demo”,得到图2-6。仔细阅读该图上的英文说明,并照该说明一步步操作, 以此实现用感知器对两类样本分类的目标,最后将分类结果保存下来。Dec i或on BoundariesNeural Network DESIGN1.79 0.8941.79W=b=Move the perceptron decision boundary by dragging its handles.Try to divide the circles so that none of their edges are red.The weights and bias will take on values associated with the chosen boundary.Drag the white and black dots to define different problems.CcrriHiiiChapter 4图 2-6 感知器演示模块4.观察并记录误差反传网(Back propagation Networks)的特性与功能。在如图2-3所示界面上,将鼠标移至“Generalization”上并双击之,得到一个界面;然后双击界面上的文字“run this demo”,得到图2-7。仔细阅读该图上的英文说明,并照该说明进行操作,以此达到用误差反传网逼近函数的目标,最后将逼近结果保存下来。Neural Network DESIGNGeneralization1.50.5Function Approximation+0-2-1.5-1-0.500.511.52InputNumber of Hidden Neurons S1:Difficulty Index:Click the Train button to train the logsig-linear network on the data points at left.Use the slide bar to choose the number of neurons in the hidden layer.TMCcrriBils:Chapter 11图 2-7 误差反传网演示模块5.观察并记录径向基函数网(Radial Basis Networks)的特性与功能。在如图 2-3所示界面上,将鼠标移至“Radial basis approximation”并双击之,得到图2-8。现 将该图上的所有源代码拷贝至一个新文件“Raba.m”中,并在MATLAB命令行状态 下执行Raba,以此实现用径向基函数网逼近函数的目标,最后将逼近结果保存下来。屢 Help團冈File Edit View Go Favorites Desktop Window HelpHe 1 d Navi EEit orXo|a 圖Contents Index Search DemosTitle: Radial Basis ApproximationOpeii dEmorbLm in thE EditorRun in thE Command Window厂 Getting Started with Demos壬卜砂MATLABWS Toolboxes旺 4 Eloiiifbrmatics 4 Communications-抄 Control System砂 4 Curve FittingSi 4 Data AcquisitionS 4 DatabaseS) Distributed Computing 4 Filter DesignS)d Filter Design HDL Coder 田 4 Financial 甲硕 Fixed-Point田 4 Fuzzy Logic d GAKCH 4 Genetic Algorithm and Direct Search 创歩 Image Acquisition+i 4 Image ProcessingS) 4 Instrument Control * Link for Code Composer Studio(tm) S) Link for ModelSim 車 MappingModel Predictive Control白 4 Neural Networkj j E-fi Neurons1)-1111 PerceptronsLJ Line;ai NetworksB ackpropagationI? Q Radial Basis Networks1 Q Selforganizing Networks 申” LVQ Networksi Cj Hopfield Networks11 IB麼1 Acnliu令fieri E畑molesRadial Basis ApproxiinatioiiThis demo uses the NEWKB function to create a radial basis network that approximates a function defined by a set of data points.Define 21 inputs P and associated targets T.P = -1:. 1:1;T =-. 9602- 5770-0729.3771.6405. 6600. 4609 .133620134344500039301647. 0988 .3072. 3960 .3449.1816031221893201;plot (P, TU ;title Training Vectors,);xlabelC Input Yector P);ylabelC Target Vector TJ);Training Vectors0.8 -6 4 2 T.-nJ_oe 1A图 2-8 径向基函数网演示模块六、实验报告要求1按照固定格式(见实验一的附录 1)撰写实验报告; 2在实验报告中,必须对实验指导书中所列思考题给予回答; 3详细写出实验总结与心得体会,可以根据自己的实验情况,在实验设置等 方面给出合理化建议。七、实验注意事项1. 如果实验有充裕时间,可在如图2-3所示界面上,用鼠标双击“Application examples”中的几个例子,进一步加深对人工神经网络的理解。八、思考题 1.请详述感知器、误差反传网与径向基函数网等三种经典的网络模型间的联 系与区别。实验三 用支持向量机进行人脸识别(2 学时)一、实验目的1. 掌握支持向量机(SVM)的原理、核函数类型选择以及核参数选择原则等;2熟悉人脸识别的一般流程与常见识别方法;3. 熟悉不同的特征提取方法在人脸识别的应用;4. 了解在实际的人脸识别中,学习样本数等参数对识别率的影响;5. 了解非人脸学习样本库的构建在人脸识别的重要作用。二、实验内容1.构建非人脸学习样本库;2. 观测不同的特征提取方法对人脸识别率的影响;3. 观测不同的学习样本数对人脸识别率的影响;4. 观测支持向量机选用不同的核函数(线性核或径向基核)后对人脸识别率的 影响;5. 观测支持向量机选用不同的核参数后对人脸识别率的影响。三、实验仪器、设备1. PC机一系统最低配置512M内存、P4 CPU;2. Matlab 仿真软件 7.0 / 7.1 / 2006a 等版本的 Matlab 软件3. CBCL 人脸样本库;四、实验原理1. 人脸识别: 人脸识别也就是利用计算机分析人脸图象,进而从中提取出有效的识别信息 , 用来“辨认”身份的一门技术。人脸识别技术应用背景广泛,可用于公安系统的罪犯 身份识别、驾驶执照及护照等与实际持证人的核对、银行及海关的监控系统及自动 门卫系统等。常见的人脸识别方法包括基于 KL 变换的特征脸识别、基于形状和灰度分离的 可变形模型识别、基于小波特征的弹性匹配、基于传统的部件建模识别、基于神经 网络的识别、基于支持向量机的识别等。其中特征脸方法、神经网络方法、基于支 持向量机的方法等是基于整体人脸的识别,而基于提取眼睛等部件特征而形成特征 向量的方法就是基于人脸特征的识别。虽然人类的人脸识别能力很强,能够记住并辨别上千个不同人脸,可是计算机 则困难多了。其表现在:人脸表情丰富;人脸随年龄增长而变化;人脸所成图象受 光照、成象角度及成象距离等影响;而且从二维图象重建三维人脸是病态过程,目 前尚没有很好的描述人脸的三维模型。另外,人脸识别还涉及到图象处理、计算机 视觉、模式识别以及神经网络等学科,也和人脑的认识程度紧密相关。这诸多因素 使得人脸识别成为一项极富挑战性的课题。通常人类进行人脸识别依靠的感觉器官包括视觉、听觉、嗅觉与触觉等。一般人 脸的识别可以用单个感官完成,也可以是多感官相配合来存储和检索人脸。而计算 机的人脸识别所利用的则主要是视觉数据。另外计算机人脸识别的进展还受限于对 人类本身识别系统的认识程度。研究表明,人类视觉数据的处理是一个分等级的过 程,其中最底层的视觉过程(视网膜功能)起信息转储的作用,即将人眼接收的大量 图象数据变换为一个比较规则的紧凑表达形式。生理学的研究表明,人眼视网膜上 存在着低层次和高层次的细胞。其中,低层次的细胞对空间的响应和小波变换的结 果相似;而高层次的细胞则依据一群低层次细胞的响应,而作出具体的线、面乃至 物体模式的响应。以此为依据,在计算机人脸识别中,可以将那些通过大量图象数 据简单处理后获得的特征定义为低层次特征,而将线、面、模式等描述特征定义为 高层次特征。由此图象变换后的系数特征、小波变换特征及一些统计特征均属低层 次特征的范畴,而人脸部件形状分析的结果则为高层次特征。由于视觉数据经传输 后的重建,需依赖于人脑中早期形成的先验知识,因此在人的识别系统中,人脸的 检测是一个整体识别和特征识别共同作用的结果。具体说来,远处辨认人,主要是 整体识别,而在近距离的人脸识别中,特征部件的识别则更重要。另外,人脸的各部件对识别的贡献也不相同,如眼睛和嘴巴的重要程度大于人的 鼻子,人脸上半部分重要性大于人脸下半部分,其中特别的人脸更容易被识别记住, 比如说歪嘴,或是独眼龙等人脸就更容易为人记起,没有个性的人脸相对就需要更 长的时间来辨认。根据对人脑的研究表明,人脸的表情识别和人脸识别虽然存在联系,但总体说是分开的、并行的处理过程。这些结论对于设计有效的识别方法起到 了一定启发作用。人脸识别是一个跨学科富挑战性的前沿课题,但目前人脸识别还只是研究课 题,尚不是实用化领域的活跃课题。人脸识别难度较大,主要难在人脸都是有各种 变化的相似刚体,由于人脸部件不仅存在各种变形,而且和皮肤之间是平缓过渡, 因此人脸是不能用经典的几何模型来进行识别分类的典型例子。如今人脸识别研究 人员已经慢慢地将研究重点从传统的点和曲线的分析方法 ,过渡到用新的人脸模型 来表达和识别人脸,其中弹性图匹配就是较成功的尝试。2支持向量机:SVM 近年来成为模式识别领域发展最快的研究方向之一,并且在各个领域得到 了广泛应用。SVM通过一个非线性映射将输入空间中的学习样本映射到高维特征空 间F中,然后利用结构风险最小化原则在F中求取线性分类超平面,巧妙地引入核 函数实现特征空间中的内积运算。SVM的基本原理可用图3-1来说明。如图3-1 (a)所示,如果N个独立样本(x ,t ),(x , t),,(x , t )e R x t不是线性1 12 2N N可分的,这时可以通过一个未知的映射函数申:RTF将样本映射到某特征空间F中, 得到G(x ), t ),G(x ),/),G(x ), t )e F x T,然后在F中构造线性最优分类面(图1122N N(b),从输入空间R的角度看,所得最优分类面是非线性的(图(C)。可记x , x ,x12 N的集合为咒,旅x加(x ),.血)的集合为点)。x(a)(a)输入空间R中的N个待分类样本(b)样本被映射到特征图 3-1 SVM 基本原理示意图(c)从输入空间r的角度看,分类面是非线性的空间F中,并构建最优分类面在F中构造线性最优分类面的方式与上节在输入空间R中构造最优分类面的方 式是一样的。设与佟对应的线性判别函数表达式为f(x)= w 申(x)+ b(3.1)上式中求取w与b可归结为求解下面的约束优化问题min丄| |w2s.t.t Wp(x )+ bl 1 i = 1,2Nii上式的解由下面的拉格朗日函数的鞍点给出(3.2)G(w,b,a)= 1 iwil2 -牙a 百(wq(x)+ bL 12i ii=1上式中a 0,i = 1,2, N为拉格朗日乘子。为得到鞍点令i(3.3)= 0 n w = Xa t qQ )6Wi i i笛=0 nZt a = 0dbi ii=1将(3.4)和(3.5)一起代入到(3.3)中可得(3.2)的对偶规划max-G (a) =XXN XNa a t t (qx ) (xq ) i 2i j i jiji=1i=1 j =1s.t.X t a = 0 a 0i iii=1(3.4)(3.5)(3.6)上式含有映射函数申。若在 F 中定义内积K(x ,x )=e(x )* (x )i j i j将之代入到(3.6)后有(3.7)max -G (a )=Z a- 1 艺另i2i=1i=1 j =1s.r.为 t a = 0a 0i iii=1aa tt K(x ,x )i j i ji j(3.8)又设 a = C ,a, d = (1,1, ,1)t,1 2 i NQ =tt(x,x ),则(3.8)可写成矩阵形式。 ij i j i j到(3.1)中可得f中的线性判别函数表达式t =(t ,t,t )t,矩阵Q的第i行第j列为N 1 2 N解(3.8)可得a的最优值,并将(3.4)代入i(3.9)f (x)=另a t KQ, x )+ bi iii=1式(3.7)中的K(x ,x )被称为核函数,它欲成为f中的内积必须满足Mercer条件: ij使得积分算子(Tf)(x)jKQx )f Q )dx为正。如果f的维数很高,(3.7)等号右边的计kii jj j算量会很大,甚至会陷入“维数灾难”而使得计算不可行;但通过上述代换,F中的 内积可基于R中的变量通过给定的核函数直接计算得到,即使F的维数非常高,SVM 本身也并没有增加多少计算复杂度。特别是对某些映射函数而言,F的维数是无限 的,此时内积必须用积分来计算,这种代换的作用就更为明显。另外从以上推导过 程可看出,在特征空间中构造最优分类面,并不需要以显式形式来考虑特征空间, 也没有必要知道映射函数的形式,只需通过(3.7)计算内积即可。(3.10)值得指出的是,以上推导的假设前提是N个样本被映射到F中以后能够线性可 分,如果该前提不满足,则必须在F中构造广义最优分类面。相应地(3.2)要改成min丄|WII2 + C段 g2ii=1s.t.t Wq(x )+ b! 1 -giii在(3.9沖,假设输入空间R内的向量为x =C)x(2)x(d),另有s个向量x , x,x12对应的不为零,它们被称为支持向量,则SVC的拓扑结构如图3-2所示,从图中i看出SVM的计算复杂度取决于支持向量的数目。SVC 拓扑结构图图 3-2五、实验步骤1将 CBCL 人脸样本库放在硬盘上的指定位置;构建非人脸学习样本库并将 之放在硬盘上的指定位置;2. 观测不同的特征提取方法对人脸识别率的影响。在MATLAB命令行状态下, 首先键入faceclassifyl(l)并按回车键,记录不采用任何特征提取时,程序的执 行结果;然后键入faceclassify1(2)并按回车键,记录采用主成分方法进行特征 提取时程序的执行结果;最后键入faceclassify1(3)并按回车键,记录采用核主 成分方法进行特征提取时程序的执行结果;3. 观测不同的学习样本数对人脸识别率的影响。将源代码中的一个语句“face_lean=200”(见本实验附录1中的源代码片段),分别修改成“face_lean=20”、 “face_lean=50”、“face_lean=100”、“face_lean=300”后,再在 MATLAB 命令行状 态下键入faceclassifyl(l)并按回车键,记录程序的执行结果;4观测支持向量机选用不同的核函数(线性核或径向基核,后对人脸识别率的 影响。先将源代码中的一个语句“ker=linear;”(即线性核),修改成“ker=rbf”(即径向基核),再在MATLAB命令行状态下键入faceclassifyl(l)并按回车键, 记录程序的执行结果;5观测支持向量机选用不同的核参数后对人脸识别率的影响。先将源代码中 的一个语句 “pl =sqrt(sumsqr(svm_xlean( l,:)-mean(svm_xlean( l,:)./idlean) ;” ,分 别修改成“pl=0.5”、“pl=l”、“pl=2”(即改变核参数pl的值),再在MATLAB 命令行状态下分别键入faceclassifyl(l)并按回车键,记录程序的执行结果。六、实验报告要求l.按照固定格式(见实验一的附录l)撰写实验报告;2在实验报告中,必须对实验指导书中所列思考题给予回答; 3.详细写出实验总结与心得体会,可以根据自己的实验情况,在实验设置等 方面给出合理化建议。七、实验注意事项l . 在 人 脸 识 别 源 代 码 中 ( 见 附 录 一 , 有 一 行 语 句 为 “face_pname=D:userdatasetfacefacel9Xl9_mit_cbcl” ,从该语句看出人脸学 习样本库在硬盘上的具体位置为D:userdatasetfacefacel9Xl9_mit_cbcl。如果 人脸学习样本库在硬盘上的具体位置改变,上述语句也应随之修改,否则程序 运行时会出现找不到人脸样本的情形。八、思考题1.为什么用计算机识别人脸比起人类自己识别人脸要困难得多?
展开阅读全文
相关资源
正为您匹配相似的精品文档
相关搜索

最新文档


当前位置:首页 > 图纸设计 > 毕设全套


copyright@ 2023-2025  zhuangpeitu.com 装配图网版权所有   联系电话:18123376007

备案号:ICP2024067431-1 川公网安备51140202000466号


本站为文档C2C交易模式,即用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。装配图网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知装配图网,我们立即给予删除!