论文部分内容阅读
选择性集成学习选择部分较优的个体分类器参与集成,能够获得比传统集成学习更好的分类结果。已有的选择性集成学习计算复杂、性能低并且参数敏感,因此本文提出了一种基于萤火虫群优化算法的选择性集成学习,在独立训练出多个个体支持向量机之后,利用改进的萤火虫群优化算法选择部分精度高、差异度大的个体分类器进行集成,与以往的基于优化算法的选择性集成算法相比,该算法避免了权重阈值这一参数敏感问题。应用该方法进行中国灰霾天气预报,实验结果表明与传统灰霾天气预报方法相比,本文方法具有更优的预报性能。选择性集成学习(Selective Ensemble Learning,SEL)主要包括两个步骤:(1)个体分类器的生成;(2)选择部分精度高、差异度大的个体分类器参与集成。本文也是按照这两个步骤来安排的。1、个体SVM的生成支持向量机(SVM)在解决小样本、高维、非线性数据等方面具有显著的优势,在集成中为了产生差异度较大的个体,本文采用基于样本和特征双重扰动的方法产生个体SVM。2基于萤火虫群优化算法的选择性集成学习萤火虫群优化算法(Glowworm Swarm Optimization,GSO)是通过模拟自然界中萤火虫的发光行为构造而成的群优化算法,离散型GSO算法(Discrete Glowworm Swarm Optimization,DGSO)能够解决离散型论域中的优化问题,而选择性集成学习的实质是离散组合优化问题,因此结合DGSO的优点和选择性集成学习的特点,本文提出了一种基于萤火虫群优化算法的选择性集成学习,该算法简单、易实现、鲁棒性强,为选择性集成学习提供了新的思路,并且与以往基于优化算法的选择性集成算法相比,避免了权重阈值的选择这一参数敏感问题。应用DGSO解决选择性集成问题的关键是解的构造、萤火虫个体位置的更新(解的更新)、不可行解的处理、萤火虫个体间距离的度量以及适应度函数的构造等。2.1改进的相关技术1)解的构造:解向量中每个元素分别赋值为0或1对应着该个体SVM是否被选择;2)萤火虫个体位置的更新:忽略移动步长因子,按照一定概率更新解向量中的每一维元素,从而达到整个解向量的更新,即萤火虫个体位置的更新;3)不可行解的处理:由于是选择性集成,因此个体SVM全部被选取或者全部不被选取均被视为不可行解,在此情况下进行解的随机更新;4)萤火虫个体间的距离度量:采用汉明距离来度量;5)适应度函数:集成泛化误差的倒数作为适应度函数。2.2基于萤火虫群优化算法的选择性集成学习算法流程输入:基于样本和特征双重扰动生成的M个个体支持向量机,验证集,DGSO算法的初始参数。输出:加权投票法对结论进行合成))((sign)(1T i iixfxf算法流程:Step1:计算各个萤火虫的适应度函数值,并将适应度值转换为荧光素值;Step2:计算萤火虫个体间的汉明距离,每只萤火虫在其动态决策域半径内,选择荧光素值比自己高的个体构成邻域集;Step3:计算萤火虫i向邻域集中个体移动的概率,依概率大小采用轮盘法选择移动对象;Step4:更新萤火虫个体位置;Step5:更新萤火虫个体动态决策域半径;Step 6:当满足终止条件时(即达到最大迭代次数)算法终止,得到最优解(即参与最终集成的个体分类器)。否则转入Step1;Step7:计算最优解中每个个体分类器的适应度函数值Tih),1(i,T为参与最终集成的个体分类器个数,通过适应度函数计算个体分类器的权重,最后进行加权投票集成。2.3算法流程图基于萤火虫群优化算法的选择性支持向量机集成算法的流程示意图如下:3、实验与结论将本文方法应用到中国灰霾天气的预报中,为了评价本文方法的有效性和优势性,除了与传统的霾天气预报方法(统计回归方法)进行比较之外,还与其他基于优化算法的选择性集成算法进行对比实验,如:基于遗传算法的选择性支持向量机集成(GASEL),基于人工鱼群优化算法的选择性支持向量机集成(AFSASEL)。另外,由于GA、ASFA和DGSO在运行过程中均存在一定程度的随机性,因此,在对比实验中分别进行了20组实验,最后取实验结果的平均值。样本数据来源于澳门地球物理暨气象局的观测资料,由于样本中霾日和非霾日是不平衡数据集,因此采用基于Bagging的不平衡数据抽样方法生成训练集、验证集和测试集。表1不同方法对澳门霾日的分类预报平均准确率统计回归GASEL AFSASEL DGSOSEL平均准确率73.61%75.53%76.32%77.49%从表1能够发现采用基于优化算法的选择性集成(GASEL、AFSASEL、DGSOSEL)进行灰霾预报的平均准确率均高于传统的灰霾预报方法(统计回归),并且与其他两种基于优化算法的选择性集成(GASEL、AFSASEL)算法相比,本文算法具有较高的预报准确率,并且该算法避免了权重阈值的选择这一参数敏感问题,更加客观。由图2、图3可知,三种选择性集成算法的偏差、方差均有一定程度的降低,但是DGSOSEL算法降低的幅度更大,这也是取得较高准确率的根本原因。