中国矿业大学计算机科学与技术学院2013-2014学年第二学期模式识别大作业任课教师:陈伟1教师评价优+良+中+及格+不及格+教师签名日期2014.优良中及格不及格优-良-中-及格-不及格-模式识别特征选择与提取中国矿业大学计算机科学与技术学院电子信息科学系班级:信科11-1班,学号:08113545,姓名:褚钰博联系方法(QQ或手机):390345438,e-mail:390345438@qq.com日期:2014年06月10日摘要实际问题中常常需要维数约简,如人脸识别、图像检索等。而特征选择和特征提取是两种最常用的维数约简方法。特征选择是从某些事物中提取出本质性的功能、应用、优势等,而特征提取是对特征空间进行变换,将原始特征空间映射到低维空间中。本文是对主成分分析和线性判别分析。关键词:特征选择,特征提取,主成分分析,线性判别分析1.引言模式识别的主要任务是利用从样本中提取的特征,并将样本划分为相应的模式类别,获得好的分类性能。而分类方法与分类器设计,都是在d(变量统一用斜体)维特征空间已经确定的前提下进行的。因此讨论的分类器设计问题是一个选择什么准则、使用什么方法,将已确定的d维特征空间划分成决策域的问题。对分类器设计方法的研究固然重要,但如何确定合适的特征空间是设计模式识别系统另一个十分重要,甚至更为关键的问题。如果所选用的特征空间能使同类物体分布具有紧致性,即各类样本能分布在该特征空间中彼此分割开的区域内,这就为分类器设计成功提供良好的基础。反之,如果不同类别的样本在该特征空间中混杂在一起,再好的设计方法也无法提高分类器的准确性。本文要讨论的问题就是特征空间如何设计的问题。基于主成分分析的特征选择算法的思想是建立在这样的基础上的:主成分分析方法将原始特征通过线性变换映射到新的低维空间时,获得的主成分是去了新的物理意义,难以理解,并且主成分是所有原始特征的线性组合。所以将主成分分析与特征选择相结合,设计多种相似性度量准则,通过找到与主成分相关的关键特征或者删除冗余、不相关以及没有意义的特征,将主成分又重新映射到原始空间,来理解成主成分的实际意义。基于线性判别分析的高维特征选择将单个特征的Fisher准则与其他特征选择算法相结合,分层消除不相关特征与冗余特征。不相关特征滤波器按照每个特征的Fisher评价值进行特征排序,来去除噪音和不相关特征。通过对高维数据特征关联性的分析,冗余特征滤波器选用冗余度量方法和基于相关性的快速过滤器算法。分别在不同情境下进行数据分类实验,验证其性能。中国矿业大学计算机科学与技术学院2013-2014学年第二学期模式识别大作业任课教师:陈伟22.原理分析对一原始特征来说,特征选择的方案很多,从N维特征种选择出M个特征共有!!!MNNCMNM中选法,其中哪一种方案最佳,则需要有一个原则来进行指导。我们进行特征选择和特征提取的最终目的还是要进行识别,因此应该是以对识别最有利原则,这样的原则我们称为是类别的可分性判据。用这样的可分性判据可以度量当前特征维数下类别样本的可分性。可分性越大,对识别越有利,可分性越小,对识别越不利。人们对的特征的可分性判据研究很多下面几种常用的判据,我们需要根据实际问题,从中选择出一种。一般来说,我们希望可分性判据满足以下几个条件:1.与识别的错误率由直接的联系,当判据取最大值时,识别的错误率最小;2.当特征独立时有可加性,即:)(),,,(121KNKijNijxJxxxJijJ是第i类和第j类的可分性判据,ijJ越大,两类的可分程度越大,12,,,Nxxx为N维特征;3.应具有某种距离的特点:0ijJ,当ij时;0ijJ,当ij时;ijjiJJ;4.单调性,加入新的特征后,判据不减小:12121,,,,,,,ijNijNNJxxxJxxxx。但是遗憾的是现在所经常使用的各种判据很难满足上述全部条件,只能满足一个或几个条件。特征提取又称为特征变换,最常采用的特征变换是线性变换,即若DRx是D维原始特征,变换后的d维新特征dRy为xWyT,其中,W是dD维矩阵,称作变换阵。特征提取就是根据训练样本求适当的W,使得某种特征变换准则最优。主成分分析方法的出发点是从一组特征中计算出一组按重要性从大到小排序的新特征,他们是原有特征的线性组合,并且相互之间是不相关的。记pxxx,,,21为p个原始特征,设新特征,i=1,,p是这些原始特征的线性组合xxTijpjiji1,中国矿业大学计算机科学与技术学院2013-2014学年第二学期模式识别大作业任课教师:陈伟3为了统一i的尺度,要求线性组合的模为1,即1iTi,写成矩阵形式是xAT,其中,是由新特征i组成的向量,A是特征变换矩阵。要求解的是最优的正交变换A,它使新特征i的方差达到极值。3.理论证明或说明特征选择的基本框图为:原始特征集子集否是一个典型的特征选择算法通常包括四个人基本步骤:1.子集产生,这是一个搜索过程,通过一定的搜索策略产生候选的特征子集。2.子集评价,每一个候选的特征子集都根据一定的评价准则得到,并与先前的最优特征子集进行比较。3.终止条件,算法结束所需要满足的条件,它与子集的产生过程和评价准则的选用有关。4.结果验证,就是根据一定的先验知识或通过合成现实数据集的测试来证明所选择的特征子集的性能。子集产生子集产生子集产生终止条件中国矿业大学计算机科学与技术学院2013-2014学年第二学期模式识别大作业任课教师:陈伟4基于特征提取主成分分析变换矩阵的一般过程:训练数据全集生成变换矩阵4.实现方法或步骤流程特征选择顺序前进法每次从未入选的特征中选择一个特征,使得它与已入选的特征组合到一起所得到的可分性判据最大,直到特征数增加到M为止。用kX表示在第k步时的特征集合,搜索算法如下:1)开始时,0X,从N个特征中选择一个iJx最大的特征,加入已选特征集,1iXx;2)在第k步,kX中包含已经选择的k个特征,对未入选的Nk个特征计算,kjJXx,其中1,2,,jNk,并且按照由大到小排序,将可分性判据最大的特征lx加入kX,1kklXXx;3)直到所选的特征数等于M为止。特征抽取的方法—基于离散K-L变换(DKLT)的特征抽取:设原始特征为N为矢量12,,,TNxxxX,均值矢量EmX,相关矩阵TEXRXX,PCA处理变换矩阵分析输出特征子集中国矿业大学计算机科学与技术学院2013-2014学年第二学期模式识别大作业任课教师:陈伟5协方差矩阵TEXCXmXm。我们可以对X作如下的标准正交变换,将其变为矢量12,,,TNyyyY:12TTTNTTTY=TXXTY的每个分量:TiiyTX,其中T为一个NN的标准正交矩阵,iT为其第i个列矢量,1,0,TijijijTT。也就是说Y的每个分量是X每一个分量的线性组合。同样X可以表示为:112121NTNiiiNyyyyXTYTYTTTT我们要进行特征提取,也就是要用Y的M项来代替X,这种代替必然带来误差,下面我们来对这个误差进行估计:令:1ˆMiiiyXT,1MN,引入的均方误差为:2211NNTTiiiiMiMeMEEyEyyXXXX11NNTTTiiiiiMiMEXTXXTTRT这又变成一个优化问题,我们希望寻找到一个标准正交矩阵T,使得2eM最小,因此可以去这样的准则函数:111NNTTiiiiiiMiMJXTRTTT第一项保证均方误差最小,第二项保证T为标准正交矩阵,i为一待定常数。iiiJXRIT0T,1,,iMN即:iiiXRTT,很明显i为相关矩阵XR的特征值,iT为对应于i的特征矢量,由于XR是一个实对称矩阵,所以12,,.NTTT相互正交,T为一个正交矩阵。均方无差:中国矿业大学计算机科学与技术学院2013-2014学年第二学期模式识别大作业任课教师:陈伟62111NNNTTiiiiiiiMiMiMeMXTRTTT根据矩阵论,有这样的结论:一个NN的正定实对称矩阵有N个特征值和特征矢量,这些特征矢量之间是正交的。相关矩阵XR就是一个实对称矩阵,当训练样本足够多时,也可以满足正定性,根据上式我们知道,当要从N维特征中提取出M维特征时,我们只需要统计出特征相关矩阵XR,然后计算其特征值和特征矢量,选择对应特征值最大的前M个特征矢量作成一个NM特征变换矩阵T,就可以完成特征提取。步骤如下:1、利用训练样本集合估计出相关矩阵TEXRXX;2、计算XR的特征值,并由大到小排序:12N,以及相应的特征矢量:12,,,NTTT;3、选择前M个特征矢量作成一个变换矩阵12MTTTT;4、在训练和识别时,每一个输入的N维特征矢量X可以转换为M维的新特征矢量:TY=TX。这种方法是利用相关矩阵XR进行变换,同样也可以利用协方差矩阵XC进行变换,还可以利用样本的散度矩阵WS,BS,TS或者1WBSS进行变换。过程都是一样的,需要计算特征值和特征向量,选择最大的M个特征值对应的特征矢量作出变换矩阵。5.实验设计和结果分析基于特征相关性的特征选择算法选择c均值聚类算法来去除冗余。C均值算法的基本思想即是通过迭代寻找c个聚类的一种划分方案,使得用这c个聚类的均值来代表相应各类样本时所得到的总体误差最小。C均值算法的基础是最小误差平方和准则。若iN是第i聚类i中的样本数目,im是这些样本的均值,即iyiiyNm1把i中的各样本y与均值im间的误差平方和对所有类相加后为21eciyiimyJeJ是误差平方和聚类准则,它是样本集y和类别集的函数。C均值算法的步骤:1.选择初始划分,并计算每个聚类的均值以及误差平方和;2.选择一个备选样本y,设yi;中国矿业大学计算机科学与技术学院2013-2014学年第二学期模式识别大作业任课教师:陈伟73.若样本数目为1,则转2,否则继续;4.计算j:j≠i时,2m1jjjjyNN;j=i时,21iiiimyNN;5.考查j中的最小者k,若ik,则把y从i移到k中;6.重新计算聚类i和k的均值,并修改误差平方和;7.若多次迭代后误差平方和eJ不变,则停止,否则转到步骤2。-10-50510-505-10-50510X1thefirstresultsofkmeansX2X3-10-50510-505-10-50510X1thesecondresultsofkmeansX2X31.无论在聚类时,初始均值如何选取,在程序结果中总能得到相同的分类结果,同时eJ的结果相差很小。2.当各聚类设定的初始均值不同时,程序结果经过的步骤不同。3.eJ是随着聚类数目的增加而单调的减少的,当聚类数目等于样本数时eJ=0,即每个样本自己成一类。4.此算法是个局部搜索算法,并不能保证收敛到全局最优解,即不能保证找到所有可能的聚类划分中误差平方和最小的解。算法的结果受到初始划分和样本调整顺序的影响。6.结论模式识别技术是人工智能的基础技术,21世纪是智能化、信息化、计算花、网络化的世纪,在这个以数字计算为特征的世纪里,模式识别技术将会获得巨大的发展空间。特征选择作为数据预处理的一个必要步骤,是模式识别中的一个关键问题。一个模式识别系统的成败,首先取决于所利用的特征是否较好的反映了将要研究的分类问题。而且高维数据是特征选择的一个挑战,研究人员总是努力的寻找着各种方法来尽量提高特征选择的性能。对于特征选择与特征提取,还有许多问题期待解决:高维数据的特征选择,特别是训练样本较少而特征维数极高的数据集;在样本的类别数未知的情况下,设