您好,欢迎访问三七文档
当前位置:首页 > 学术论文 > 大学论文 > 第11章 独立于算法的机器学习
模式识别–独立于算法的机器学习第十一章独立于算法的机器学习模式识别–独立于算法的机器学习11.1模式识别中的哲学这里讨论的是一些独立于具体识别算法的一般性原理,但可以适用于任何一个特定的识别方法:1.没有免费午餐定理;2.丑小鸭定理;3.Occam剃刀原理。模式识别–独立于算法的机器学习没有免费的午餐定理(NFL,NoFreeLunchTheorem)不存在一个与具体应用无关的,普遍适用的“最优分类器”;学习算法必须要作出一个与问题领域有关的“假设”,分类器必须与问题域相适应。模式识别–独立于算法的机器学习丑小鸭定理(UglyDuckling)不存在与问题无关的“最优”的特征集合或属性集合;也同样不存在与问题无关的模式之间的“相似性度量”。模式识别–独立于算法的机器学习Occam剃刀原理设计者不应该选用比“必要”更加复杂的分类器,“必要”是由训练数据的拟合情况决定的;在对训练数据分类效果相同时,“简单的”分类器往往优于“复杂的”分类器;根据“没有免费午餐定理”,不能说“简单的”分类器对“复杂的”分类器具有天生的优越性,但在现实世界中遇到的各种问题,这种优越性往往是存在。模式识别–独立于算法的机器学习11.2分类设计的重采样技术分类器设计的重采样技术也被称为“自适应的权值重置和组合(arcing,adaptivereweightingandcombining);这类方法的主要思想是利用同一个训练样本集合构造多个分类器,然后以某种方式将这些分类器组合成一个分类器;主要方法包括:bagging算法和boosting算法模式识别–独立于算法的机器学习bagging算法1.从大小为n的原始数据集D中独立随机地抽取n’个数据(n’n),形成一个自助数据集;2.重复上述过程,产生出多个独立的自助数据集;3.利用每个自助数据集训练出一个“分量分类器”;4.最终的分类结果由这些“分量分类器”各自的判别结果投票决定。模式识别–独立于算法的机器学习boosting算法boosting算法同样是利用训练样本集合构造多个分量分类器,它只要求这个分量分类器是一个弱分类器—准确率比平均性能好即可。2类问题,3个分量分类器的训练算法:1.在数量为n的原始样本集D中随机选取n1个样本构成D1,利用D1训练出一个分类器C1;2.在样本集D-D1中选择被C1正确分类和错误分类的样本各一半组成样本集D2,用D2训练出一个分类器C2;3.将样本集D-D1-D2中所有C1和C2分类结果不同的样本组成样本集D3,训练出一个分类器C3;模式识别–独立于算法的机器学习boosting的分类算法对新的样本x进行分类,如果C1和C2判别结果相同,则将x判别为此类别,否则以C3的结果作为x的类别;原始样本集分量分类器组合分类器模式识别–独立于算法的机器学习AdaBoost方法AdaBoost(adaptiveboosting)是boosting方法的一个重要变形,一般所说的boosting方法均是指AdaBoost;AdaBoost方法中,设计者可以不断地增加分量分类器,直到达到足够小的错误率为止;总体分类结果是由各分量分类器加权平均得到,权重由分量分类器的错误率确定。模式识别–独立于算法的机器学习AdaBoost方法1.begininitializeD,kmax,W1(i)1/n,i=1,…,n;2.k0;3.dokk+14.训练使用按照Wk(i)采样D的弱分类器Ck;5.Ek用Wk(i)采样D的样本集测量Ck的训练误差;6.7.8.untilk=kmax;9.end1ln12kkkEE1,,kkkkkWieWiZe正确分类错误分类模式识别–独立于算法的机器学习AdaBoost方法算法中Wk(i)为每一步迭代中对每个样本的加权,Zk是归一化因子,Ck为第k个分量分类器,αk为对Ck的加权;总体的判别函数由各分量分类器的加权平均得到:其中为Ck分类器给出的判别结果。max1kkkkghxxkhx模式识别–独立于算法的机器学习AdaBoost方法的推广能力AdaBoost方法实际上是增加了分类器的复杂程度,但实践表明此方法出现“过拟合”的现象极少,这是此方法最吸引人的地方。模式识别–独立于算法的机器学习针对特征的Boosting算法特征选择:就是从一组数量为n的特征中选择出数量为m的最优特征;1.最优特征组合的评价标准;2.选择出最优特征组合的算法;Boosting可以作为特征选择的方法。模式识别–独立于算法的机器学习AdaBoost特征选择算法Givenexamples(x1,y1),…,(xn,yn),whereyi=0,1fornegativeandpositiveexamplesrespectively;Initializeweightsw1,i=1/2m,1/2lforyi=0,1respectively,wheremandlarethenumberofnegativesandpositivesrespectively;Fort=1,…,T:1.Normalizetheweights:sothatwtisaprobabilitydistribution.,,,1ntititjj模式识别–独立于算法的机器学习AdaBoost特征选择算法2.Foreachfeature,j,trainaclassifierhjwhichisrestrictedtousingasinglefeature.Theerrorisevaluatedwithrespecttowt,3.Choosetheclassifierht,withthelowesterror4.Updatetheweights:whereei=0ifexamplexiisclassifiedcorrectly,ei=1otherwise,andThefinalclassifieris:jijiiiwhxyt11,,ietititww1ttt1111,20,TTttttthxhxotherwise1logtt模式识别–独立于算法的机器学习11.3分类器的评价和比较在分类器设计好后,我们只能计算出分类器在训练样本集上的错误率,而不能计算出在测试样本集上的错误率;可以采用统计量估计中的重采样技术来对测试样本错误率进行估计,具体方法有:1.交叉验证;2.刀切法;3.自助法;模式识别–独立于算法的机器学习交叉验证(CrossValidation)简单验证:将数量为n的训练样本集D分成两部分,一部分作为训练集,用于训练分类器,另一部分作为验证集,用于估计测试错误率;m-重交叉验证:将D分成m个集合,每个集合包含n/m个样本,每次用m-1个集合的样本训练分类器,用剩余的一个集合测试,最后将m个测试结果平均,作为测试错误率的估计;模式识别–独立于算法的机器学习刀切法(Jackknife)刀切法实际上是m=n时的m-重交叉验证。在数量为n的样本集D中每次留一个样本,用其它样本训练分类器,用留下的一个样本测试错误率,测试错误率为:p=k/n其中k为测试错误的样本数。模式识别–独立于算法的机器学习自助法(bootstrap)1.从数量为n的样本集D中随机选出n个样本(样本可能重复)组成一个“自助样本集”;2.用一个“自助样本集”训练分类器,用另外一个独立的“自助样本集”测试分类器;3.重复上述过程B次,每次均可得到一个错误率pb;4.总的测试错误率:11BbbppB
本文标题:第11章 独立于算法的机器学习
链接地址:https://www.777doc.com/doc-4021480 .html