分类堆栈式

堆栈式  时间:2021-05-08  阅读:()
DOI:10.
11991/yykj.
201712011网络出版地址:http://kns.
cnki.
net/kcms/detail/23.
1191.
U.
20180223.
1246.
008.
htmlStackingLearning在高光谱图像分类中的应用徐凯1,崔颖1,21.
哈尔滨工程大学信息与通信工程学院,黑龙江哈尔滨1500012.
黑龙江省农业科学院遥感技术中心,黑龙江哈尔滨150001摘要:高光谱图像分类研究中,集成学习能够显著地提高分类效果.
但是传统的并行多分类系统对基础分类器有较高要求,即要求差异性及分类均衡.
为了解决这一问题,采用StackingLearning的堆栈式学习方式,首先使用K-Fold和交叉验证的方式进行数据分割和训练,将原始特征进行特征变换,重新构建二级特征.
再使用新特征进行对Meta分类器进行训练得到判决分类器,用于样本的最后分类判断.
实验结果表明,采用的StackingLearning方法不依赖基础分类器,且相比较于传统的多分类系统具有更高的精度和良好的稳定性.
关键词:高光谱图像;多分类系统;StackingLearning;集成学习;交叉验证;图像分类;特征变换;K-Fold中图分类号:TP75文献标志码:A文章编号:1009671X(2018)06004207ApplicationofStackingLearninginhyperspectralimageclassificationXUKai1,CUIYing1,21.
CollegeofInformationandCommunicationEngineering,HarbinEngineeringUniversity,Harbin150001,China2.
RemoteSensingTechnologyCenter,HeilongjiangAcademyofArgiculturalSciences,Harbin150001,ChinaAbstract:Inthestudyofhyperspectralimageclassification,integratedlearningcansignificantlyimprovetheclassificationeffect.
However,traditionalparallelmultipleclassifiersystemhashigherrequirementsforthebasicclassifier,namely,thediversityofrequirementandtheequalizationofclassification.
Inordertosolvethisproblem,weuseStackingLearningmethod.
Firstly,K-Foldandcross-validationwereusedtosegmentandtrainthedata.
Theoriginalfeaturesweretransformedandthesecondaryfeatureswerereconstructed.
FurtherthenewfeaturewasusedtotraintheMetaclassifiertoobtainadecisionclassifierforthefinalclassificationofthesample.
ExperimentalresultsshowthattheStackingLearningmethoddoesnotrelyonbasicclassifierandhashigheraccuracyandstabilitythantraditionalmultipleclassiersystem.
Keywords:hyperspectralimage;multipleclassifiersystem;StackingLearning;ensemblelearning;cross-validation;imageclassification;featuretransformation;K-Fold多分类系统(multipleclassifiersystem,MSC)通过对基分类器的选择与组合,能够获得比任何一个单一分类器更好的分类性能[1],近年来在高光谱图像中得到较为广泛的应用[2].
构建多分类系统主要有3种结构:并行结构、串行结构和混合结构.
目前高光谱图像分类中主要应用并行结构为主,即使用多个分类器进行并行训练,然后结合某种选择和权值策略进行结果的组合.
组合策略主要有投票法[3]、贝叶斯平均法[4]、统计意见一致法[5]、证据理论[4]和模糊积分法[6].
Du等[7]对这些组合策略进行了全面的比较,发现其精度相当,但是投票的方式操作简单,而且不需要先验知识,因此得到广泛的应用.
但是基于投票的分类器同样存在限制,即要求差异化的分类器和相似的分类性能作为前提保障,因此在实际的分类过程中,需要一定的经验进行分类器的挑选和参数训练.
Wolpert[8]提出的StackingLearning是一种类串连形式多层集成系统,它使用交叉验证和K-Fold的方式进行后验概率特征重组,形成Meta数据进行二级训练,目前被应用于多个领域.
Escalera等[9]使用StackedSequentialLearning结合音频和视屏中人物的面对面谈话,将对话中的笑声进行识别收稿日期:20171220.
网络出版日期:20180223.
基金项目:国家自然科学基金项目(61675051).
作者简介:徐凯(1992),男,硕士研究生;崔颖(1979),女,副教授,博士.
通信作者:崔颖,E-mail:cuiying@hrbeu.
edu.
cn.
第45卷第6期应用科技Vol.
45No.
62018年12月AppliedScienceandTechnologyDec.
2018检测,实验结果表明该方法的表现要好于AdaBoost.
Razmara和Sarkar[10]将StackingLearning的衍生算法应用到机器翻译系统中,在2个语种的翻译评估中表现要好于贝叶斯平均法构成的组合分类器.
Stackinglearning还在神经医学、药物学等领域起到重要作用,它帮助医生进行多医疗器械诊断结果的结合,如区分阿尔茨海默病和良性的认知障碍、简易精神状态检测等[11],实验显示,使用StackingLearning的方式比传统k-NN方法提高了7%.
但StackingLearning鲜有在图像领域尝试,本文将StackingLearning引入到高光谱图像的分类中,采用目前较为流行和新型的3种有监督算法支持向量机(supportvectormachine,SVM),旋转森林(RotationForest)[12]和ExtremeGradientBoosting(XGBoost)[13]当做基分类器构建Stacking过程,与传统并行集成学习进行比较,获得了更好的分类效果.
1相关工作1.
1旋转森林旋转森林最早是由Rodriguez[14]提出的,是一种基于随机森林(RandomForest,RF)的方法.
它先将原始数据变换投影到新的特征空间,然后用来训练每个基础分类器(决策树),目的是为了每个基础分类器获得较高的准确率和多样性.
其中特征变换方法包括主成分分析、最大噪声比变换、独立成分分析和局部Fisher判别分析等.
RotationForest过程描述如下:训练样本集包含了n个特征,用X代表大小的训练集矩阵.
使用代表数据的类别标签,其中类别包含,c是类别总数.
定义为用于集成的分类器,F为特征集,训练基础分类器.
其步骤如下.
1)将F分割成K个特征子集,每个特征子集包含了M=n/K个特征.
2)表示第j个特征子集,其中.
根据从X中找到对应的训练集,对每组按75%进行Bootstrap采样,将新的采样样本定义为.
然后使用特征变换的方法将其转化为对应系数是一个的矩阵.
3)稀疏旋转矩阵由上述系数构成,表现形式如下:矩阵的各列数据都是原始特征经过变换后的数据,然后训练集就会变成X的形式,之后再由基础分类器进行并行训练.
当给定一个测试样本,使用式(1)能够计算出每一类的置信度.
式中:表示分类器给出的样本,属于类别k的后验概率.
最后一步,会将后验概率最大的类当做判断的类别,旋转森林过程结束.
Xia等[15]在高光谱图像的实验中表明,Rotation-Forest方法要优于传统的随机森林、AdaBoost、SVM等分类器,故在本次实验中作为基础分类器使用.
1.
2XGBoost方法XGBoost和迭代决策树(gradientboostingdeci-siontree,GBDT)同为Boosting方法,但XGBoost在大规模机器学习上有着无与伦比的优势.
因此XGBoost在世界范围内的数据挖掘及机器学习竞赛中炙手可热.
限于篇幅原因,XGBoost原理推导不再赘述,可参考文献[13].
这里给出相较于其他传统的提升决策树,XGBoost所具有的优势.
1)XGBoost在代价函数时进行二阶泰勒展开,同时用到了一阶和二阶导数,在损失函数的定义上更加精确.
而GBDT则只使用了一阶导.
2)XGBoost在代价函数中加入了正则项,能够很好地控制模型的训练过程,防止训练出来的模型存在过拟合现象.
其正则项中包含了树的叶子节点个数等.
3)XGBoost使用类似随机森林的方式采用列抽样,使之减少计算量的同时还能防止过拟合.
4)XGBoost是Boosting的方法,本身并不支持并行计算,但是它会对特征进行分块处理,形成多块Block并排序,能够在迭代过程中不断使用这个中间件寻找最佳的分裂点,极大地减少了计算时间.
简单说就是在特征的粒度上进行了并行化处理而非算法本身.
总体来说,XGBoost是一种高度可扩展的树结构增强模型,能够很好地处理稀疏数据,在超大规模的数据训练中能够极大提升算法速度及压缩计算内存.
由于XGBoost应用于图像的研究较少,本文在此对其实验算法进行研究.
第6期徐凯,等:StackingLearning在高光谱图像分类中的应用·43·2StackingLearningStacking是StackedGeneralization的简称[8],最先由Wolpert提出,实质上是一种串行结构的多层学习系统,StackingLearning前期使用交叉验证的形式进行原始特征向二级特征进行转化,之后对转化后的二级新特征进行常规训练和分类过程.
与其他传统的集成学习如Bagging、Boosting不一样,StackingLearning使用不同的基分类器进行组合.
由于不同分类器对数据的训练存在差异,因此将从不同的角度探索假设空间,从而产生一个不同的分类器池,当他们的预测结合在一起时,预期的结果模型比每个基分类器更加准确.
为了更好地描述Stacking的多级处理过程,StackingLearning引入了基分类器(Base-Classifier)和元分类器(Meta-Classifier)概念,其中基分类器使用原始特征进行训练,其输出结果作为二级新的特征;而元分类器将重新训练二级特征并形成最终的判决分类器.
StackingLearning结构框架主要分为Level-0和Level-1这2层,如图1所示.
图1StackingLearning算法框架在Level-0层首先对训练集使用类似J-Fold的方式将数据分成J个部分.
对于第j次训练,先将这一部分数据保留出来,然后将用来训练每一个基础分类器Kj,训练完成后,使用每个基础分类器对数据进行预测分类,产生该数据的所属各类别的后验概率.
若训练数据存在N个类别,那么每个基础分类器将会产生N个由后验概率组成的新的特征维度pkj,K个分类器将组成K*N个新维度,这些新增的特征维度将作为Level-1中的训练数据,称之为Meta-data.
根据J-Fold的原理,算法结束时将会计算J次,直至训练集中的所有数据都被转换成由后验概率构成的新数据,Level-0阶段结束.
由于使用到了交叉验证技术,故训练集并不会存在数据泄露问题.
值得注意的是,在Level-0阶段,Metadata是由基分类器对原始训练集的预测判断,相较于原始的特征集,属于强特征,同时也达到了降维的作用.
在Level-1阶段,可以使用任何分类器进行训练,最后获得一个MetaClassifier模型,基本的StackingLearning过程结束.
当需要验证模型效果时,首先需要对验证集的数据进行同样的特征变换.
原因在于MetaClassifier学习到的特征是由BaseClassifier对原始训练集交叉验证的结果,Metadata数据特征空间已经发生变化,故测试集也要先经过K个分类器重新生成新的特征,然后再使用MetaClassifier进行预测.
3实验与分析3.
1实验数据及设置3.
1.
1实验数据AVIRIS印第安纳数据集是IndianPine实验区的高光谱图像数据.
它是通过机载可见光/红外成像光谱仪器得到的.
波段数目是224,空间分辨率是20m,图像尺寸是像素,波长为0.
4~2.
5μm.
去除24个噪声波段和水汽吸收波段后,图像剩余波段数目为200个,共包含16种地物,共10249个样本.
3.
1.
2实验设置实验数据使用IndianPines的16类全地物进行实验,评价指标采用总体分类精度(overallaccuracy,OA)、平均分类精度(averageaccuracy,AA)和Kappa系数.
对比算法包括SVM、XGBoost、RotationForest、·44·应用科技第45卷RF、GBDT.
根据文献[7]的研究表明不同组合策略构成的并行集成算法精度相当,故使用基于投票的并行集成算法进行比较实验.
3.
2实验结果分析实验结果如图2所示,其中VoteCombine-XGBoost-SVM-RotationForest表示使用投票机制的集成分类器曲线,其中3个分类器分别是XGBoost、SVM和RotationForest.
当3个分类器判断不一致时,采用XGBoost当做主分类器.
Stacking-XGBoost-SVM-RotationForest表示Stacking算法,其中3个level-0分类器即基础分类器分别是XGBoost、SVM和RotationForest,本次试验采用SVM为Meta分类器.
图2不同训练样本集下的算法比较从图2中可以明显看出,XGBoost算法的表现效果要比RF要更出色.
在训练集为10%时,两者保持相同的水准;当训练集开始上升,XGBoost和RF表现效果开始出现巨大差异;当训练集占比到达50%时,XGBoost已经领先RF的OA达到2.
4%;在训练样本占比到70%时,OA差距扩大到2.
65%.
XGBoost算法虽然在训练样本较少的前期效果不及SVM和RotationForest,但是当训练样本占比超过50%,XGBoost和SVM几乎持平;在70%训练样本的情况下还稍领先于SVM,这足以显示XGBoost在高光谱图像分类中的适用性.
而RotationForest在单一算法中始终保持着领先的优势,甚至在较低训练样本的情况下好于投票的MCS系统;在25%的训练样本情况下,RotationForest在OA上领先XGBoost、RF和SVM分别为3.
85%、5.
13%和1.
87%,可见RoationForest优异的分类效果.
从单一分类器的效果进行分析,在较少训练样本情况下,SVM和Rotation-Forest具有更强的泛化性能及更好的分类效果,随着训练样本的增多,XGBoost的分类效果提升最大,最后与SVM保持相近的分类效果.
而RF在众多优异的分类器比较中,性能较差,所以在将RF分类加入MCS系统和Stacking系统会存在一些问题.
对投票的MCS和StackingLearning进行比较,两者使用的分类器种类保持一致、参数保持一致,StackingLearning从10%的训练样本起就领先于基于投票的MCS.
在表1中70%训练样本时,StackingLearning相较于MCS,OA增幅1.
6%,AA增幅4.
74%,Kappa增幅0.
0184.
对于最优的传统的单一算法RotationForest,OA增幅2.
67%,AA增幅4.
97%,Kappa增幅0.
0308,StackingLearning在各个训练样本阶段都表现出了优秀的稳定性.
表1StackingLearning、MCS、RotationForest、XGBoost在不同训练集上的表现训练集算法StackingLearningMCSLearningVotingRotationForestXGBoostOA/%AA/%KappaOA/%AA/%KappaOA/%AA/%KappaOA/%AA/%Kappa10%82.
4374.
720.
799380.
5169.
780.
775782.
2674.
230.
796474.
4960.
730.
705820%87.
0082.
500.
851785.
5077.
130.
833685.
9579.
410.
839181.
1667.
970.
783330%89.
7787.
770.
883487.
6781.
050.
858787.
5783.
950.
857884.
1772.
070.
818140%91.
0490.
290.
897889.
1485.
040.
875688.
4785.
840.
868086.
2976.
960.
842850%91.
7791.
340.
906290.
2486.
680.
888389.
1087.
010.
875387.
5476.
880.
857360%92.
5192.
880.
914690.
9687.
510.
896589.
6888.
210.
881988.
6380.
380.
869870%92.
8593.
220.
918491.
2588.
480.
900090.
1888.
250.
887689.
2981.
870.
8774第6期徐凯,等:StackingLearning在高光谱图像分类中的应用·45·当使用的基础分类器分类效果参差不齐时,基于投票的MCS形成的判断决策会收到较大的影响,即集成效果可能弱于基础分类器.
以OA为例,如图3所示,使用RF、GBDT和SVM组成分类器时,集成的效果并没有得到提升,甚至低于SVM,其原因可能在于2个较差效果的同质化分类器会严重影响到集成规则中的投票机制,解决方案是使用差异化模型或者分类决策更好的分类器,如图2中所示的分类器的组成形式.
而使用StackingLearning的方式进行集成,效果没有受限于分类器的种类和效果差异,依旧表现出色.
分析原因可能在于StackingLearning使用后验概率作为为Level-1的新特征,这些特征包含了判决时对样本各类的估计值,相较于单纯输出单个判决类别进行投票判决的MCS,更具有信息量,之后再使用强分类器对新的特征进行二次训练.
整个过程可以认为是一种高效率的"降维"操作,即将原高光谱图像的数百个波段进行特征变换,得到由类后验概率构成的新特征.
图3不同训练样本集下的算法比较4结论本文主要研究了新型分类器XGBoost对高光谱图像的适应性,并对StackingLearning及MCS在各个样本情况下进行了对比实验.
根据实验结果,得出以下结论:1)XGBoost能够在高光谱图像中表现出较好的性能,相较于随机森林有更好的表现.
对于小样本阶段,XGBoost无法发挥其最好的性能,弱于SVM;但当样本达到一定量级,XGBoost能获得与SVM相近的性能.
2)StackingLearning一样适用于高光谱图像分类中,且具有较好的分类效果.
相比较传统的基于投票的MCS,StackingLearning并非十分依赖于基础分类器的结构与分类性能,而传统的MCS更适用于具有较强差异性且分类效果近似的分类器组合,对于同质化的分类器集成,MCS有时并不能提升分类效果,而StackingLearning表现出了其独特的优势.
在日后的研究中可以将StackingLearning的基础分类器进行并行计算,为更大程度地降低计算时间,可以考虑使用集群计算方式进行机器学习.
参考文献:NATHSS,MISHRAG,KARJ,etal.
Asurveyofimageclassificationmethodsandtechniques[C]//Proceedingsof2014InternationalConferenceonControl,Instrumen-tation,CommunicationandComputationalTechnologies.
Kanyakumari,India,2014.
[1]杜培军,夏俊士,薛朝辉,等.
高光谱遥感影像分类研究进展[J].
遥感学报,2016,20(2):236–256.
[2]XULei,KRZYZAKA,SUENCY.
Methodsofcombiningmultipleclassifiersandtheirapplicationstohandwritingrecognition[J].
IEEEtransactionsonsystems,man,andcybernetics,1992,22(3):418–435.
[3]KUNCHEVALI.
Combiningpatternclassifiers:methodsandalgorithms[M].
NewYork,USA:Wiley-Interscience,2004.
[4]BENEDIKTSSONJA,CHANUSSOTJ,FAUVELM.
Multipleclassifiersystemsinremotesensing:frombasicstorecentdevelopments[C]//Proceedingsofthe7thInternationalWorkshoponMultipleClassifierSystems.
Prague,CzechRepublic,2007.
[5]ABDALLAHACB,FRIGUIH,GADERP.
Adaptivelocalfusionwithfuzzyintegrals[J].
IEEEtransactionsonfuzzysystems,2012,20(5):849–864.
[6]DUPeijun,XIAJunshi,ZHANGWei,etal.
Multipleclassifiersystemforremotesensingimageclassification:Areview[J].
Sensors,2012,12(4):4764–4792.
[7]WOLPERTDH.
Stackedgeneralization[J].
Neuralnetworks,1992,5(2):241–259.
[8](下转第52页)·46·应用科技第45卷

创梦云 香港沙田、长沙联通2核1G仅需29元一个月 挂机宝7元一个月

商家介绍:创梦云是来自国内的主机销售商,成立于2018年4月30日,创梦云前期主要从事免备案虚拟主机产品销售,现在将提供5元挂机宝、特惠挂机宝、香港云服务器、美国云服务器、低价挂机宝等产品销售。主打高性价比高稳定性挂机宝、香港云服务器、美国云服务器、香港虚拟主机、美国虚拟主机。官方网站:http://cmy0.vnetdns.com本次促销产品:地区CPU内存硬盘带宽价格购买地址香港特价云服务器1...

特网云57元,香港云主机 1核 1G 10M宽带1G(防御)

特网云官網特网云服务器在硬件级别上实现云主机之间的完全隔离;采用高端服务器进行部署,同时采用集中的管理与监控,确保业务稳定可靠,搭建纯SSD架构的高性能企业级云服务器,同时采用Intel Haswell CPU、高频DDR4内存、高速Sas3 SSD闪存作为底层硬件配置,分钟级响应速度,特网云采用自带硬防节点,部分节点享免费20G防御,可实现300G防御峰值,有效防御DDoS、CC等恶意攻击,保障...

CloudCone月付$48,MC机房可小时付费

CloudCone商家在前面的文章中也有多次介绍,他们家的VPS主机还是蛮有特点的,和我们熟悉的DO、Linode、VuLTR商家很相似可以采用小时时间计费,如果我们不满意且不需要可以删除机器,这样就不扣费,如果希望用的时候再开通。唯独比较吐槽的就是他们家的产品太过于单一,一来是只有云服务器,而且是机房就唯一的MC机房。CloudCone 这次四周年促销活动期间,商家有新增独立服务器业务。同样的C...

堆栈式为你推荐
信用卡appleinternalservererrorError 500--Internal Server Error如何解决?internalservererrorinternal server erroraccessdenied升级后出现Access denied 如何解决进入查看企业ssl证书ssl证书多少钱一年?重庆400年老树穿楼生长重庆的树为什么都长胡须?360免费建站聚企360建站是免费的?文档下载请问手机版wps如何把云文档下载到手机上的本地文档?腾讯公司电话腾讯公司总部电话多少传奇域名谁能帮忙查查传奇的IP和域名
虚拟主机管理软件 中文域名 vps推荐 免费二级域名申请 java主机 国外服务器网站 2014年感恩节 unsplash 国外空间 什么是刀片服务器 如何用qq邮箱发邮件 ca187 双十二促销 googlevoice windows2008 paypal兑换 rsync kosskeb4 免费网络电视直播 更多