第13卷第1期 智能系统学报 Vol.13 No.I 2018年2月 CAAI Transactions on Intelligent Systems Feb.2018 D0:10.11992/tis.201707011 网络出版地址:http:/kns.cnki.net/kcms/detail/23.1538.TP.20180130.1109.002.html 群智能算法优化支持向量机参数综述 李素,袁志高',王聪,陈天恩2,郭兆春 (1.北京工商大学食品安全大数据技术北京市重点实验室,北京100048:2.国家农业信息化工程技术研究中心,北 京100097) 摘要:支持向量机建立在统计学习的理论基础之上,具有理论的完备性,但是在应用上仍然存在模型参数难以选择 的问题。首先,介绍了支持向量机和群智能算法的基本概念:然后,系统地叙述了各种经典的群智能算法进行支持向 量机参数优化取得的最新研究成果以及总结了优化过程中存在的问题和解决方案:最后,结合该领域当前研究现状 提出了群智能算法优化支持向量机参数研究中需要关注的问题,展望了这一研究方向在未来的发展趋势和前景。 关键词:支持向量机:统计学习;群智能:参数优化:全局寻优:并行搜索:收敛速度:寻优精度 中图分类号:TP181文献标志码:A 文章编号:1673-4785(2018)01-0070-15 中文引用格式:李素,袁志高,王聪等.群智能算法优化支持向量机参数综述.智能系统学报,2018,13(1):70-84. 英文引用格式:LISu,YUAN Zhigao,WANG Cong,etal.Optimization of support vector machine parameters based on group in- telligence algorithm[J].CAAl transactions on intelligent systems,2018,13(1):70-84. Optimization of support vector machine parameters based on group intelligence algorithm LI Su',YUAN Zhigao',WANG Cong2,CHEN Tianen',GUO Zhaochun' (1.Beijing Key Laboratory of Big Data Technology for Food Safety,Beijing Technology and Business University,Beijing 100048. China;2.National Engineering Research Center for Information Technology in Agriculture,Beijing 100097,China) Abstract:The support vector machine is based on statistical learning theory,which is complete,but problems remain in the application of model parameters,which are difficult to choose.In this paper,we first introduce the basic concepts of the support vector machine and the group intelligence algorithm.Then,to optimize the latest research results and sum- marize existing problems and solutions,we systematically describe various classical group intelligence algorithms that the support vector machine parameters identified.Finally,drawing on the current research situation for this field,we identify the problems that must be addressed in the optimization of support vector machine parameters in the group in- telligence algorithm and outline the prospects for future development trends and research directions. Keywords:support vector machine;statistical study;group intelligence algorithm;optimization of parameters,global optimization;parallel search;convergence speed;optimization accuracy 在20世纪70年代,由Vapnik等提出的统计 面具有较强的并行处理能力,寻优速度快,同时具 学习理论是研究有限样本情况下机器学习规律的理 有全局寻优等特点。使用群智能算法是当前支持向 论,而支持向量机的发展则是基于该理论的。随着 量机参数优化方法的研究前沿。 支持向量机发展得越来越成熟,其不完善的地方仍 1支持向量机理论 需要进一步研究。参数的优化选择一直以来是支持 向量机的一个研究热点。群智能算法在参数优化方 基于数据的机器学习是现代智能技术的一个重 收稿日期:2017-07-06.网络出版日期:2018-01-30. 要方面,机器学习本质上就是一种问题真实模型的 基金项目:国家自然科学基金项目(31101088,91546112):北京市 教育委员会科技计划面上项目(KM201310011010). 逼近,研究从观测数据(样本)出发寻找用来对未知 通信作者:陈天恩.E-mail:chente@nercita.org.cn. 数据进行预测的规律
DOI: 10.11992/tis.201707011 网络出版地址: http://kns.cnki.net/kcms/detail/23.1538.TP.20180130.1109.002.html 群智能算法优化支持向量机参数综述 李素1 ,袁志高1 ,王聪2 ,陈天恩2 ,郭兆春1 (1. 北京工商大学 食品安全大数据技术北京市重点实验室,北京 100048; 2. 国家农业信息化工程技术研究中心,北 京 100097) 摘 要:支持向量机建立在统计学习的理论基础之上,具有理论的完备性,但是在应用上仍然存在模型参数难以选择 的问题。首先,介绍了支持向量机和群智能算法的基本概念;然后,系统地叙述了各种经典的群智能算法进行支持向 量机参数优化取得的最新研究成果以及总结了优化过程中存在的问题和解决方案;最后,结合该领域当前研究现状, 提出了群智能算法优化支持向量机参数研究中需要关注的问题,展望了这一研究方向在未来的发展趋势和前景。 关键词:支持向量机;统计学习;群智能;参数优化;全局寻优;并行搜索;收敛速度;寻优精度 中图分类号:TP181 文献标志码:A 文章编号:1673−4785(2018)01−0070−15 中文引用格式:李素, 袁志高, 王聪, 等. 群智能算法优化支持向量机参数综述[J]. 智能系统学报, 2018, 13(1): 70–84. 英文引用格式:LI Su, YUAN Zhigao, WANG Cong, et al. Optimization of support vector machine parameters based on group intelligence algorithm[J]. CAAI transactions on intelligent systems, 2018, 13(1): 70–84. Optimization of support vector machine parameters based on group intelligence algorithm LI Su1 ,YUAN Zhigao1 ,WANG Cong2 ,CHEN Tianen2 ,GUO Zhaochun1 (1. Beijing Key Laboratory of Big Data Technology for Food Safety, Beijing Technology and Business University, Beijing 100048, China; 2. National Engineering Research Center for Information Technology in Agriculture, Beijing 100097, China) Abstract: The support vector machine is based on statistical learning theory, which is complete, but problems remain in the application of model parameters, which are difficult to choose. In this paper, we first introduce the basic concepts of the support vector machine and the group intelligence algorithm. Then, to optimize the latest research results and summarize existing problems and solutions, we systematically describe various classical group intelligence algorithms that the support vector machine parameters identified. Finally, drawing on the current research situation for this field, we identify the problems that must be addressed in the optimization of support vector machine parameters in the group intelligence algorithm and outline the prospects for future development trends and research directions. Keywords: support vector machine; statistical study; group intelligence algorithm; optimization of parameters; global optimization; parallel search; convergence speed; optimization accuracy 在 20 世纪 70 年代,由 Vapnik 等 [1]提出的统计 学习理论是研究有限样本情况下机器学习规律的理 论,而支持向量机的发展则是基于该理论的。随着 支持向量机发展得越来越成熟,其不完善的地方仍 需要进一步研究。参数的优化选择一直以来是支持 向量机的一个研究热点。群智能算法在参数优化方 面具有较强的并行处理能力,寻优速度快,同时具 有全局寻优等特点。使用群智能算法是当前支持向 量机参数优化方法的研究前沿。 1 支持向量机理论 基于数据的机器学习是现代智能技术的一个重 要方面,机器学习本质上就是一种问题真实模型的 逼近,研究从观测数据 (样本) 出发寻找用来对未知 数据进行预测的规律。 收稿日期:2017−07−06. 网络出版日期:2018−01−30. 基金项目:国家自然科学基金项目 (31101088,91546112);北京市 教育委员会科技计划面上项目 (KM201310011010). 通信作者:陈天恩. E-mail:chente@nercita.org.cn. 第 13 卷第 1 期 智 能 系 统 学 报 Vol.13 No.1 2018 年 2 月 CAAI Transactions on Intelligent Systems Feb. 2018
第1期 李素,等:群智能算法优化支持向量机参数综述 。71 支持向量机(support vector machine,SVM)是 k(x1,x2)=(《x1,x2〉+R) (2) 20世纪90年代中期发展起来的一种机器学习方法。 高斯核函数: 该方法是基于统计学习理论,通过寻求结构化风险 k()=exp (3) 最小来提高学习机泛化能力,完成经验风险和置信 2w2 范围的最小化,从而达到在统计样本数量较少的情 线性核函数: 况下,也能获得优良统计规律的目的。因为其学习 k(x1,x2)=(x1,x2) (4) 性能突出,所以该领域成了大量学者的焦点。该技 根据问题和数据的不同,选择不同的参数,实际上 术目前也成为机器学习界的研究热点,并在很多领 就得到了不同的核函数,同时核函数的参数选取不 域都得到了成功的应用,如人脸识别、手写数字识 同,会直接影响支持向量机的预测精度和分类性能。 别、文本自动分类以及机器翻译等。 2群智能算法 SVM的基本思想是使用核函数把输入样本空 间映射到高维特征空间,在高维空间中求得一个最 随着人类对生物启发式计算的研究,一些社会 优分类面,得到输入与输出变量间的非线性关系, 性动物的自组织行为引起了科学家的广泛关注。这 如图1所示。 些社会性动物在进化过程中形成了一个共同的特 点:个体的行为都很简单,但当它们一起工作时,却 能够表现出非常复杂的行为特征。 群智能算法的基本思想是模仿自然界当中生物 的种群行为来构造随机优化算法。该算法主要是将 优化和搜索过程模拟成种群中个体的觅食或进化过 程,用搜索空间中的点模仿自然界当中的种群个 输入空间 特征空间 体,将求解问题的目标函数度量成种群中个体对环 图1寻找到的最优分类面 境的适应能力:将种群中个体的优胜劣汰过程或觅 Fig.1 Finding the optimal classification surface 食过程类比为搜索过程中用较优的可行解取代较差 假设给定一个特征空间上的训练数据集 的可行解的寻优迭代过程。因此,群智能算法是一 T={(x1y1),(x2y2),…,(xw,yw)l,其中,x:∈R为第i个 种具有生成+检验”特征的迭代搜索优化算法。 特征向量,也称为实例;y:∈(1,-1,i=1,2,…N,为 群智能算法包括遗传算法、蚁群算法、粒子群 x的类标记,当y:=1时,称x为正例,当y:=-1时,称 算法、人工鱼群算法、人工蜂群算法、萤火虫算法以 x:为负例。(x,y)称为样本点。算法的关键是建立 及蝙蝠算法等,作为一类新型进化算法,以其分布 一个分类超平面作为决策面,使得正例和反例的隔 性、自组织性、强的鲁棒性等优点,已经成功地应用 离边缘最大化。其中分类超平面就是求函数: 于函数优化等领域。群智能算法从一出现便引起了 p(w)=三Ilw 研究者的广泛关注,其理论研究在不断深人的同 (1) s.t.ya(w…x+b)≥1,i=1,2,,N 时,其应用领域也在随之不断扩展,例如交通流模 式中:w是超平面的法向量,b是超平面的常数项, 型验证问题、分布式高效定位问题以及配电系统 x为训练样本,为样本的类别。 中的电容器分配问题,充分说明了群智能算法所 实际中,学者们会经常遇到线性不可分的样 蕴藏的巨大潜力。同时,群智能算法在SVM参数 例,此时常用的做法是把样例特征映射到高维空间 优化方面也得到了广泛的应用,进一步提高了SVM 去。如果凡是遇到线性不可分的样例,一律映射到 的分类预测精度以及泛化能力。 高维空间,那么这个维度大小就会特别高,处理起 3群智能算法优化支持向量机参数 来就会特别困难。此时核函数在处理该问题上面发 挥重要作用,它的价值在于:虽然也是将特征从低 参数优化是SVM研究中的一个重要问题,参 维到高维转换,但不同的是该方法事先会在低维上 数选择的不同会直接影响SVM模型的分类预测精 进行计算,然后将实质上的分类效果表现在了高维 度和泛化能力。常用的传统SVM参数优化方法有 上,这样就避免了直接在高维空间中的复杂计算。 实验法、网格法、梯度下降法等。但是这些算法 在实际应用中,往往依赖先验领域理论知识才 已经难以满足人们需求,存在各种各样的问题。 能选择有效的核函数。广泛使用的核函数主要有: 实验法主要原理是通过不断尝试不同的参数, 多项式核函数: 最后选出一个最适合问题的参数。实验选择方法缺
支持向量机 (support vector machine, SVM) 是 20 世纪 90 年代中期发展起来的一种机器学习方法。 该方法是基于统计学习理论,通过寻求结构化风险 最小来提高学习机泛化能力,完成经验风险和置信 范围的最小化,从而达到在统计样本数量较少的情 况下,也能获得优良统计规律的目的。因为其学习 性能突出,所以该领域成了大量学者的焦点。该技 术目前也成为机器学习界的研究热点,并在很多领 域都得到了成功的应用,如人脸识别、手写数字识 别、文本自动分类以及机器翻译等。 SVM 的基本思想是使用核函数把输入样本空 间映射到高维特征空间,在高维空间中求得一个最 优分类面,得到输入与输出变量间的非线性关系, 如图 1 所示。 T = {(x1, y1),(x2, y2),···,(xN, yN)} xi ∈ R n yi ∈ {1,−1} i = 1,2,···,N xi yi = 1 xi yi = −1 xi (xi , yi) 假设给定一个特征空间上的训练数据集 ,其中, 为第 i 个 特征向量,也称为实例; , ,为 的类标记,当 时,称 为正例,当 时,称 为负例。 称为样本点。算法的关键是建立 一个分类超平面作为决策面,使得正例和反例的隔 离边缘最大化。其中分类超平面就是求函数: φ(w) = 1 2 ∥w∥ 2 s.t. yi(w· xi +b) ⩾ 1,i = 1,2,· · ·,N (1) 式中:w 是超平面的法向量,b 是超平面的常数项, xi 为训练样本,yi 为样本的类别。 实际中,学者们会经常遇到线性不可分的样 例,此时常用的做法是把样例特征映射到高维空间 去。如果凡是遇到线性不可分的样例,一律映射到 高维空间,那么这个维度大小就会特别高,处理起 来就会特别困难。此时核函数在处理该问题上面发 挥重要作用,它的价值在于:虽然也是将特征从低 维到高维转换,但不同的是该方法事先会在低维上 进行计算,然后将实质上的分类效果表现在了高维 上,这样就避免了直接在高维空间中的复杂计算。 在实际应用中,往往依赖先验领域理论知识才 能选择有效的核函数。广泛使用的核函数主要有: 多项式核函数: k(x1 , x2) = (⟨x1 , x2⟩+R) d (2) 高斯核函数: k(x1 , x2) = exp{ − ∥x1 − x2∥ 2 2σ2 } (3) 线性核函数: k(x1, x2) = ⟨x1, x2⟩ (4) 根据问题和数据的不同,选择不同的参数,实际上 就得到了不同的核函数,同时核函数的参数选取不 同,会直接影响支持向量机的预测精度和分类性能。 2 群智能算法 随着人类对生物启发式计算的研究,一些社会 性动物的自组织行为引起了科学家的广泛关注。这 些社会性动物在进化过程中形成了一个共同的特 点:个体的行为都很简单,但当它们一起工作时,却 能够表现出非常复杂的行为特征。 群智能算法的基本思想是模仿自然界当中生物 的种群行为来构造随机优化算法。该算法主要是将 优化和搜索过程模拟成种群中个体的觅食或进化过 程,用搜索空间中的点模仿自然界当中的种群个 体,将求解问题的目标函数度量成种群中个体对环 境的适应能力;将种群中个体的优胜劣汰过程或觅 食过程类比为搜索过程中用较优的可行解取代较差 的可行解的寻优迭代过程。因此,群智能算法是一 种具有“生成+检验”特征的迭代搜索优化算法。 群智能算法包括遗传算法、蚁群算法、粒子群 算法、人工鱼群算法、人工蜂群算法、萤火虫算法以 及蝙蝠算法等,作为一类新型进化算法,以其分布 性、自组织性、强的鲁棒性等优点,已经成功地应用 于函数优化等领域。群智能算法从一出现便引起了 研究者的广泛关注,其理论研究在不断深入的同 时,其应用领域也在随之不断扩展,例如交通流模 型验证问题[2] 、分布式高效定位问题[3]以及配电系统 中的电容器分配问题[4] ,充分说明了群智能算法所 蕴藏的巨大潜力。同时,群智能算法在 SVM 参数 优化方面也得到了广泛的应用,进一步提高了 SVM 的分类预测精度以及泛化能力。 3 群智能算法优化支持向量机参数 参数优化是 SVM 研究中的一个重要问题,参 数选择的不同会直接影响 SVM 模型的分类预测精 度和泛化能力。常用的传统 SVM 参数优化方法有 实验法、网格法、梯度下降法[5-6]等。但是这些算法 已经难以满足人们需求,存在各种各样的问题。 实验法主要原理是通过不断尝试不同的参数, 最后选出一个最适合问题的参数。实验选择方法缺 䒿ڑ金䬠 ➥ᒭ⾦䬠 φ 图 1 寻找到的最优分类面 Fig. 1 Finding the optimal classification surface 第 1 期 李素,等:群智能算法优化支持向量机参数综述 ·71·
·72· 智能系统学报 第13卷 乏理论指导,全凭经验,导致最终获得的参数不一 等还提出了一种可以自动选择核参数并且进行 定是最优的。网格参数优化算法的基本原理是:首 SVM训练的GASJ算法,该算法将随机搜索引入 先对指定的网格范围内的每一个点进行遍历,然后 到遗传算法当中,有效地提高了遗传算法的效率, 将每一个点转换为SVM的参数进行验证,最后选 使SVM具有较高的分类性能。 择误差最小网格点作为SVM的最优参数,该方法 为了提高SVM的精度和最小化训练时间, 十分耗时。梯度下降算法对初始值的选择十分敏 K.S.Sajan等6提出了使用遗传算法来获取SVM参 感,并且有些时候实验结果误差十分大,所以这些 数的最优值,并且应用到在线电压稳定性监控。 算法已经难以满足人们需求。因此设计高效的优化 J.S.Chou等1m提出了一种利用快速杂乱遗传算法 算法成为众多科研工作者的研究目标。 对SVM的参数进行优化,并且将其用于早期预测 群智能算法在参数优化方面取得了很多重要成 公私合作项目初始阶段的争议倾向当中。Li Duan 果,所以使用群智能算法来对SVM参数进行优化 等提出了一种使用遗传算法优化SVM参数,并 是一个不错的选择。下面主要讨论不同的群智能算 且该算法应用于7种柑橘草药的区分和分类当中。 法在SVM参数优化领域中的研究成果。 遗传算法在首次被提出用于SVM参数优化方 3.1遗传算法 法的时候,存在很多的问题,使得SVM的预测与分 3.1.1遗传算法简介 类精度不高。经过国内外学者不断地改进与研究, 遗传算法(genetic algorithm,GA)是一类模仿 提出了各种各样的改进遗传算法用于SVM参数优 生物界的进化规律演化而来的随机化搜索方法,是 化,使得SVM具有较高的分类预测性能,不会在一 由美国的J.H.Holland"教授提出的。遗传算法的主 定程度上过早陷人局部最优。遗传算法的应用研究 要原理是以C.R.Darwin的生物进化论和G.Mendel 显得格外活跃,而且利用遗传算法进行优化的能力 的遗传变异理论为基础,通过模仿自然界生物进化 也显著提高。 机制达到随机全局搜索和优化的目的。 3.2蚁群算法 遗传算法的主要特,点是直接对结构对象进行操 3.2.1蚁群算法简介 作、具有更好的全局寻优能力以及能自动获取和指 蚁群算法(ant colony optimization,.ACO)又称 导优化的搜索空间,自适应地调整搜索方向,不需 蚂蚁算法,是一种用来寻找最优解决方案的概率型 要确定的规则。由于基于遗传算法的这些优点,已 技术。它由意大利学者Marco Dorigo等9:20首次提 被广泛地应用于飞机间的冲突解脱问题,、集成供 出。蚁群算法的主要原理是:种群中单个蚂蚁在觅 应链问题以及机器学习等领域。 食的过程中可以在其经过的路径上留下一种称为信 3.1.2遗传算法优化支持向量机参数 息素的物质,并且在觅食的过程中能够感知到信息 在2006年,E.Avci和C.L.Huang'首次提出 素的强度,同时它们朝着信息素强度高的方向移 了基于遗传算法的支持向量机参数优化方法。 动,因此蚂蚁种群组成的集体觅食就表现为一种对 2015年,王琼瑶等提出了一种基于改进遗传算法 信息素的正反馈现象,从而逐渐逼近最优路径,找 的SVM参数优化模型,该模型将遗传算法与SVM 到最优路径。 结合,利用遗传算法将对SVM具有重要意义的惩 蚁群算法主要特点是通过正反馈、分布式协作 罚参数、核参数和损失函数同时优化。解决了SVM 来寻找最优路径。蚁群算法就是根据这一特点,通 算法在回归预测时参数选取不当导致过学习和欠学 过模仿蚂蚁的行为,从而实现寻优。自蚁群算法提 习的问题。实验结果也表明改进的算法较大地提高 出以来,引起了国内外研究人员的极大兴趣,对该 了SVM算法整体的寻优能力。 算法进行了广泛的研究,并且该算法成功应用于机 针对基于遗传算法对SVM参数优化出现的训 器人避障问题2)、路径规划问题22以及工作车间计 练时间较长以及分类精度较低等问题,孟滔等通 划问题21等领域。 过重新定义遗传算法参数的寻优范围,提出了一种 3.2.2蚁群算法优化支持向量机参数 自适应遗传算法。算法通过网格搜索法确定最佳参 最初蚁群算法是针对离散优化问题而提出的一 数的最小寻优范围,有效地帮助常规遗传算法避免 种智能算法,但是SVM参数优化是一个连续优化 陷入局部最优解,同时保证了搜索的效率,并且改 的问题。因此,在2003年汪镭等2首次提出了一种 善了基于常规遗传算法得到的惩罚参数C过大,导 应用在连续空间寻优问题求解的蚁群算法,该算法 致分类准确率较低的问题。针对此问题,高雷阜 有效地解决了蚁群算法所存在的问题,为SVM
乏理论指导,全凭经验,导致最终获得的参数不一 定是最优的。网格参数优化算法的基本原理是:首 先对指定的网格范围内的每一个点进行遍历,然后 将每一个点转换为 SVM 的参数进行验证,最后选 择误差最小网格点作为 SVM 的最优参数,该方法 十分耗时。梯度下降算法对初始值的选择十分敏 感,并且有些时候实验结果误差十分大,所以这些 算法已经难以满足人们需求。因此设计高效的优化 算法成为众多科研工作者的研究目标。 群智能算法在参数优化方面取得了很多重要成 果,所以使用群智能算法来对 SVM 参数进行优化 是一个不错的选择。下面主要讨论不同的群智能算 法在 SVM 参数优化领域中的研究成果。 3.1 遗传算法 3.1.1 遗传算法简介 遗传算法 (genetic algorithm, GA) 是一类模仿 生物界的进化规律演化而来的随机化搜索方法,是 由美国的 J.H.Holland[7]教授提出的。遗传算法的主 要原理是以 C.R.Darwin 的生物进化论和 G.Mendel 的遗传变异理论为基础,通过模仿自然界生物进化 机制达到随机全局搜索和优化的目的。 遗传算法的主要特点是直接对结构对象进行操 作、具有更好的全局寻优能力以及能自动获取和指 导优化的搜索空间,自适应地调整搜索方向,不需 要确定的规则。由于基于遗传算法的这些优点,已 被广泛地应用于飞机间的冲突解脱问题[8] 、集成供 应链问题[9]以及机器学习[10]等领域。 3.1.2 遗传算法优化支持向量机参数 在 2006 年,E. Avci[11]和 C.L.Huang[12]首次提出 了基于遗传算法的支持向量机参数优化方法。 2015 年,王琼瑶等[13]提出了一种基于改进遗传算法 的 SVM 参数优化模型,该模型将遗传算法与 SVM 结合,利用遗传算法将对 SVM 具有重要意义的惩 罚参数、核参数和损失函数同时优化。解决了 SVM 算法在回归预测时参数选取不当导致过学习和欠学 习的问题。实验结果也表明改进的算法较大地提高 了 SVM 算法整体的寻优能力。 针对基于遗传算法对 SVM 参数优化出现的训 练时间较长以及分类精度较低等问题,孟滔等[14]通 过重新定义遗传算法参数的寻优范围,提出了一种 自适应遗传算法。算法通过网格搜索法确定最佳参 数的最小寻优范围,有效地帮助常规遗传算法避免 陷入局部最优解,同时保证了搜索的效率,并且改 善了基于常规遗传算法得到的惩罚参数 C 过大,导 致分类准确率较低的问题。针对此问题,高雷阜 等 [15]还提出了一种可以自动选择核参数并且进行 SVM 训练的 GA_SJ 算法,该算法将随机搜索引入 到遗传算法当中,有效地提高了遗传算法的效率, 使 SVM 具有较高的分类性能。 为了提高 SVM 的精度和最小化训练时间, K.S.Sajan 等 [16]提出了使用遗传算法来获取 SVM 参 数的最优值,并且应用到在线电压稳定性监控。 J.S.Chou 等 [17]提出了一种利用快速杂乱遗传算法 对 SVM 的参数进行优化,并且将其用于早期预测 公私合作项目初始阶段的争议倾向当中。Li Duan 等 [18]提出了一种使用遗传算法优化 SVM 参数,并 且该算法应用于 7 种柑橘草药的区分和分类当中。 遗传算法在首次被提出用于 SVM 参数优化方 法的时候,存在很多的问题,使得 SVM 的预测与分 类精度不高。经过国内外学者不断地改进与研究, 提出了各种各样的改进遗传算法用于 SVM 参数优 化,使得 SVM 具有较高的分类预测性能,不会在一 定程度上过早陷入局部最优。遗传算法的应用研究 显得格外活跃,而且利用遗传算法进行优化的能力 也显著提高。 3.2 蚁群算法 3.2.1 蚁群算法简介 蚁群算法 (ant colony optimization, ACO) 又称 蚂蚁算法,是一种用来寻找最优解决方案的概率型 技术。它由意大利学者 Marco Dorigo 等 [19-20]首次提 出。蚁群算法的主要原理是:种群中单个蚂蚁在觅 食的过程中可以在其经过的路径上留下一种称为信 息素的物质,并且在觅食的过程中能够感知到信息 素的强度,同时它们朝着信息素强度高的方向移 动,因此蚂蚁种群组成的集体觅食就表现为一种对 信息素的正反馈现象,从而逐渐逼近最优路径,找 到最优路径。 蚁群算法主要特点是通过正反馈、分布式协作 来寻找最优路径。蚁群算法就是根据这一特点,通 过模仿蚂蚁的行为,从而实现寻优。自蚁群算法提 出以来,引起了国内外研究人员的极大兴趣,对该 算法进行了广泛的研究,并且该算法成功应用于机 器人避障问题[21] 、路径规划问题[22]以及工作车间计 划问题[23]等领域。 3.2.2 蚁群算法优化支持向量机参数 最初蚁群算法是针对离散优化问题而提出的一 种智能算法,但是 SVM 参数优化是一个连续优化 的问题。因此,在 2003 年汪镭等[24]首次提出了一种 应用在连续空间寻优问题求解的蚁群算法,该算法 有效地解决了蚁群算法所存在的问题,为 SVM ·72· 智 能 系 统 学 报 第 13 卷
第1期 李素,等:群智能算法优化支持向量机参数综述 。73· 选择了最优的参数且提高了SVM的分类精度。针 复杂度较高,运行时间较长,这些还是一个亟待解 对SVM参数优化是一个连续优化的问题,肖国荣 决的问题。 等2也提出了一种改进蚁群优化算法,用于SVM 3.3粒子群算法 参数寻优。且实验结果表明,采用最优参数建立的 3.3.1粒子群算法简介 网络入侵检测模型,该模型对网络入侵的正确率和 粒子群算法(particle swarm optimization,PSO) 检测速度都有显著提高。 最早由Eberhart和Kennedy1.于1995年提出,它 随着研究的不断进步,蚁群算法拓展到解决连 的基本概念源于对鸟群觅食行为的研究。粒子群算 续域问题当中也遇到了各种各样的困难,由于连续 法的主要原理是:在对动物群体运动行为观察的基 空间的路径不是实实在在地存在,所以需要进行改 础上,借鉴群体中的个体对信息的共享使整个群体 进。在2015年,高雷阜等2提出了一种改进的蚁群 的运动在问题求解空间中产生,从无序到有序的演 算法用来优化SVM参数,主要从对信息素的定义 变过程,最终获得最优解。 方式及留存方式、蚁群搜索寻优方式、蚁群行进方 该算法是一种全局并行寻优算法,相比较于其 式三方面进行改进。改进的蚁群算法在其搜索操作 他优化算法,具有进化时间短、寻优精度高等优 中加入了有向搜索,同时将信息素的更新引入时变 点3)。自粒子群算法提出以来,已成功应用于求解 函数,采取和迭代次数、目标函数值相关的动态更 旅行商问题3、电容器分配问题以及机器学习 新策略。该算法虽然为SVM的核函数参数优化提 等相关领域。 供了一种可行的方法,但是算法的复杂度较大,运 3.3.2粒子群算法优化支持向量机参数 行时间较长,还有待改进。 普通的粒子群算法存在后期趋同性严重、后期 SVM是智能故障诊断中广泛使用的机器学习 收敛速度缓慢以及易陷入局部极小点等缺点。针对 方法,同时如何寻找到能够区分不同故障的有利条 普通粒子群存在的缺点,单黎黎6等提出了一种改 件和优化SVM参数后使其具有良好特征被认为是 进的粒子群算法实现SVM参数的寻优。该算法为 高度影响SVM的最终诊断精度的两个最重要问 了同时克服这些缺陷,在引入动量项的同时使得粒 题。所以Zhang Xiaoli等2n提出了一种蚁群优化算 子不仅跟随全局和局部最优解,还会跟随任意一个 法用于优化SVM参数并且应用于旋转机械的智能 粒子的个体极值以达到既缓和后期震荡又解决后期 故障诊断当中。与其他方法相比,实验结果表明本 趋同的目的。通过函数仿真实验验证了基于改进的 文提出的方法可以获得更好的效果。Han Pu等2例 粒子群算法具有寻优精度高、收敛速度快等优势。 提出了一种蚁群优化算法优化SVM的参数,并且 为了解决普通粒子群算法存在的缺点,毛耀宗等7 应用于煤灰融合温度预测当中,实验结果显示本文 也提出了一种基于粒子群算法,并且加入图形处理 器加速的SVM参数优化方法。为了快速寻找最优 中所描述的优化算法可以使SVM取得最优参数组 参数组合,该方法利用粒子群算法的收敛速度快、 合,防止陷人局部最优,最终表明此模型可以实现 简单易行等特点,并且加入图形处理器并行化处理 更好的预测性能。R.Aalizadeh等2提出了一种通 能力计算每个参数的分类准确率,进一步提升在一 过蚁群算法优化SVM参数模型并且应用于预测新 定的搜索空间内寻找最佳参数组合的计算速度。这 出现的污染物对水跳蚤毒性的影响。实验结果表 一过程避免了穷尽所有可能的情况,同时也可以得 明,该模型被成功地应用于附加的评估集,并且对 到满意的结果。实验结果表明这种方法能获得满意 于发现落入所定义的适用性域内的化合物的预测结 的预测准确率并且降低了程序的寻优时间。 果是非常准确的。HB.Alwan等o提出了一种混合 粒子群算法在SVM参数优化方面得到进一步 变量蚁群优化算法用来进行特征子集选择和调整 的研究,通过粒子群算法寻找到的最优参数使得 SVM参数,且结果表明该方法在分类精度和特征子 SVM的分类预测精度明显提高。例如,王喜宾等B涮 集选择方面较其他方法更加有效。 提出了粒子群模式搜索算法来对SVM的参数进行 综上所述,蚁群算法应用在SVM参数优化方 优化。实验结果表明,搜索到的最优参数可以达到 面取得很大进展。从最初只为了解决离散优化问题 较高的正确率;胡云艳等B提出了一种粒子群算法 被提出,到如今经过国内外学者的研究与改进,蚁 对SVM参数进行优化,此算法应用到模拟电路诊 群算法已经能很好地应用于SVM参数的连续优化 断当中,提高了模拟电路诊断的正确率。郭凤仪等0 问题当中。经过各种实验结果表明,蚁群算法在参 提出了基于粒子群算法参数优化的SVM模型,在 数优化方面具有良好的鲁棒性和较强的全局搜索能 拟合精度方面有很大的提高,并且具有较好的泛化 力。但是该算法依然存在一些问题,如算法的时间 能力
选择了最优的参数且提高了 SVM 的分类精度。针 对 SVM 参数优化是一个连续优化的问题,肖国荣 等 [25]也提出了一种改进蚁群优化算法,用于 SVM 参数寻优。且实验结果表明,采用最优参数建立的 网络入侵检测模型,该模型对网络入侵的正确率和 检测速度都有显著提高。 随着研究的不断进步,蚁群算法拓展到解决连 续域问题当中也遇到了各种各样的困难,由于连续 空间的路径不是实实在在地存在,所以需要进行改 进。在 2015 年,高雷阜等[26]提出了一种改进的蚁群 算法用来优化 SVM 参数,主要从对信息素的定义 方式及留存方式、蚁群搜索寻优方式、蚁群行进方 式三方面进行改进。改进的蚁群算法在其搜索操作 中加入了有向搜索,同时将信息素的更新引入时变 函数,采取和迭代次数、目标函数值相关的动态更 新策略。该算法虽然为 SVM 的核函数参数优化提 供了一种可行的方法,但是算法的复杂度较大,运 行时间较长,还有待改进。 SVM 是智能故障诊断中广泛使用的机器学习 方法,同时如何寻找到能够区分不同故障的有利条 件和优化 SVM 参数后使其具有良好特征被认为是 高度影响 SVM 的最终诊断精度的两个最重要问 题。所以 Zhang Xiaoli 等 [27]提出了一种蚁群优化算 法用于优化 SVM 参数并且应用于旋转机械的智能 故障诊断当中。与其他方法相比,实验结果表明本 文提出的方法可以获得更好的效果。Han Pu 等 [28] 提出了一种蚁群优化算法优化 SVM 的参数,并且 应用于煤灰融合温度预测当中,实验结果显示本文 中所描述的优化算法可以使 SVM 取得最优参数组 合,防止陷入局部最优,最终表明此模型可以实现 更好的预测性能。R.Aalizadeh 等 [29]提出了一种通 过蚁群算法优化 SVM 参数模型并且应用于预测新 出现的污染物对水跳蚤毒性的影响。实验结果表 明,该模型被成功地应用于附加的评估集,并且对 于发现落入所定义的适用性域内的化合物的预测结 果是非常准确的。H. B.Alwan 等 [30]提出了一种混合 变量蚁群优化算法用来进行特征子集选择和调整 SVM 参数,且结果表明该方法在分类精度和特征子 集选择方面较其他方法更加有效。 综上所述,蚁群算法应用在 SVM 参数优化方 面取得很大进展。从最初只为了解决离散优化问题 被提出,到如今经过国内外学者的研究与改进,蚁 群算法已经能很好地应用于 SVM 参数的连续优化 问题当中。经过各种实验结果表明,蚁群算法在参 数优化方面具有良好的鲁棒性和较强的全局搜索能 力。但是该算法依然存在一些问题,如算法的时间 复杂度较高,运行时间较长,这些还是一个亟待解 决的问题。 3.3 粒子群算法 3.3.1 粒子群算法简介 粒子群算法 (particle swarm optimization, PSO) 最早由 Eberhart 和 Kennedy[31-32]于 1995 年提出,它 的基本概念源于对鸟群觅食行为的研究。粒子群算 法的主要原理是:在对动物群体运动行为观察的基 础上,借鉴群体中的个体对信息的共享使整个群体 的运动在问题求解空间中产生,从无序到有序的演 变过程,最终获得最优解。 该算法是一种全局并行寻优算法,相比较于其 他优化算法,具有进化时间短、寻优精度高等优 点 [33]。自粒子群算法提出以来,已成功应用于求解 旅行商问题[34] 、电容器分配问题[4]以及机器学习[35] 等相关领域。 3.3.2 粒子群算法优化支持向量机参数 普通的粒子群算法存在后期趋同性严重、后期 收敛速度缓慢以及易陷入局部极小点等缺点。针对 普通粒子群存在的缺点,单黎黎[36]等提出了一种改 进的粒子群算法实现 SVM 参数的寻优。该算法为 了同时克服这些缺陷, 在引入动量项的同时使得粒 子不仅跟随全局和局部最优解, 还会跟随任意一个 粒子的个体极值以达到既缓和后期震荡又解决后期 趋同的目的。通过函数仿真实验验证了基于改进的 粒子群算法具有寻优精度高、收敛速度快等优势。 为了解决普通粒子群算法存在的缺点,毛耀宗等[37] 也提出了一种基于粒子群算法,并且加入图形处理 器加速的 SVM 参数优化方法。为了快速寻找最优 参数组合,该方法利用粒子群算法的收敛速度快、 简单易行等特点,并且加入图形处理器并行化处理 能力计算每个参数的分类准确率,进一步提升在一 定的搜索空间内寻找最佳参数组合的计算速度。这 一过程避免了穷尽所有可能的情况,同时也可以得 到满意的结果。实验结果表明这种方法能获得满意 的预测准确率并且降低了程序的寻优时间。 粒子群算法在 SVM 参数优化方面得到进一步 的研究,通过粒子群算法寻找到的最优参数使得 SVM 的分类预测精度明显提高。例如,王喜宾等[38] 提出了粒子群模式搜索算法来对 SVM 的参数进行 优化。实验结果表明,搜索到的最优参数可以达到 较高的正确率;胡云艳等[39]提出了一种粒子群算法 对 SVM 参数进行优化,此算法应用到模拟电路诊 断当中,提高了模拟电路诊断的正确率。郭凤仪等[40] 提出了基于粒子群算法参数优化的 SVM 模型,在 拟合精度方面有很大的提高,并且具有较好的泛化 能力。 第 1 期 李素,等:群智能算法优化支持向量机参数综述 ·73·
·74· 智能系统学报 第13卷 此外,粒子群算法优化SVM参数还被应用于 朱文静等so也提出了一种混沌人工鱼群算法对SVM 确定从新生儿到六岁的幼儿的骨龄、非重塑护提 参数的优化方法,在人工鱼群优化算法基础上引入 防波提的损伤水平预测以及评价产品的Kansei 混沌思想,利用混沌序列的随机性、遍历性和规律 图像等方面,同时以上参考文献中实验结果表明, 性来提高算法的效率,得到了一种性能更好的混沌 搜索到的最优参数可以达到较高的正确率,有效提 人工鱼群算法,并将通过该算法优化后的SVM的 高SVM预测与分类精度。 核参数与惩罚因子应用于语音识别系统中。冯晓琳 综上所述,粒子群算法引起国内外学者的广泛 等例也提出了一种基于改进型人工鱼群算法的SVM 研究。虽然粒子群算法依然存在各种各样的问题, 参数优化方法。该改进的人工鱼群算法实行参数动 但是通过不断地研究与改进,粒子群算法可以有效 态化,加入局部遍历算法,提高了人工鱼群算法的 地实现SVM参数的选择,是一种优秀的SVM参数 精度。 优化方法。 传统人工鱼群算法的循环体有可能出现最佳解 3.4人工鱼群算法 的缺失,为了解决此问题,Bai Jing等s提出了一种 3.4.1人工鱼群算法简介 基于并行人工鱼群算法的SVM参数优化方法。实 人工鱼群算法(artificial fish swarm algorithm, 验结果表明,该新算法是一种有效的SVM参数优 AFSA)是我国学者李晓磊44提出的一种模拟鱼类 化方法,使得SVM不仅具有良好的泛化能力,同时 觅食活动的群智能算法。人工鱼群算法主要原理是 还具有更好的鲁棒性。 通过模拟鱼群觅食、聚群、追尾三大基本行为,采用 针对传统人工鱼群算法具有陷入局部最优的缺 自下而上的思路进行寻优。 陷,Lin Kuancheng等s提出一种基于改进的人工鱼 人工鱼群算法具有寻优速度快、全局寻优能力 群算法的SVM参数优化方法。实验结果表明,与 以及较强的并行处理能力等优点,被广泛应用于车 原始人工鱼群算法相比,改进后的算法在分类精度 间调度分配46、电力系统规划列以及机器学习48割 上具有明显的优越性。 等领域。 目前仍有很多学者使用人工鱼群算法来优化 3.42人工鱼群算法优化支持向量机参数 SVM参数,并且应用于各种领域,例如僵尸网络检 使用人工鱼群算法进行SVM参数优化的实验 测当中等。通过以上领域的应用和实验结果的显 中,人工鱼群算法使用多条人工鱼同时进行寻优, 示,充分证明了人工鱼群算法在优化SVM参数方 从中选取最优的值作为此次优化的结果。由于缺乏 面具有很大优势,寻找到的最优参数有效地提高了 对SVM的参数优化问题的理论支持,所以高雷阜 SVM的分类预测精度。 等4提出了基于人工鱼群算法的SVM参数优化选 综上所述,人工鱼群算法作为新兴的群体智能 取算法。文献中利用人工鱼群的并行性,能够更快 优化算法,具有较好的并行性以及不易陷入局部极 地收敛于全局极值点,并且以分类准确率最大化作 值等优点,同时还具有良好的寻优能力,可以使SVM 为优化原则建立目标函数,实现对SVM的核参数 获得更高的预测精度。通过不断的研究与改进,人 和罚参数的优化选取。数值实验结果表明,人工鱼 工鱼群算法已成为一种可行的SVM参数优化方法。 群算法在SVM参数优化选取中具有更快的寻优性 3.5人工蜂群算法 能,同时具有较高的分类准确率。在文献的结论提 3.5.1人工蜂群算法简介 出了针对不同的具体问题只是通过现有的核函数的 人工蜂群算法(artificial bee colony algorithm, 选取,可能在某种程度上会影响SVM的性能,而且 ABC)是用于模拟蜂群智能搜索行为的一种仿生算 人工鱼群算法能较快收敛到最优解的邻域中,但是 法,由土耳其埃尔吉耶斯大学的Karabogalss1于 搜索寻优的性能仍需改进。 2005年提出。人工蜂群算法的主要原理是,模仿自 虽然人工鱼群算法具有对初值要求不高以及简 然界中蜜蜂采蜜的过程,群体中的蜜蜂根据分工不 单实现等优点,但是也存在寻优精度不高、后期收 同完成采蜜过程的各阶段任务,通过食物源信息的 敛速度较慢的缺陷。针对此问题,田海雷等4提出 收集与共享,寻找问题的最优解。 了一种基于改进人工鱼群算法,对SVM参数进行 人工蜂群算法作为一种模拟蜜蜂群智能搜索行 优化,在对人工鱼群算法进行深入分析的基础上, 为的优化算法,具有控制参数少、计算简单和易于 同时对人工鱼群算法进行改进,改进后的人工鱼自 实现等特点,已成为目前研究的热点之一,被广泛 适应地获取视野和步长,从而有效地改善算法的性 应用于飞机着陆问题56、无人机航路规划问题$以 能,实验结果表明该算法获得了更高的预测精度。 及车间调度问题8
此外,粒子群算法优化 SVM 参数还被应用于 确定从新生儿到六岁的幼儿的骨龄[41] 、非重塑护提 防波提的损伤水平预测[42]以及评价产品的 Kansei 图像[43]等方面,同时以上参考文献中实验结果表明, 搜索到的最优参数可以达到较高的正确率,有效提 高 SVM 预测与分类精度。 综上所述,粒子群算法引起国内外学者的广泛 研究。虽然粒子群算法依然存在各种各样的问题, 但是通过不断地研究与改进,粒子群算法可以有效 地实现 SVM 参数的选择,是一种优秀的 SVM 参数 优化方法。 3.4 人工鱼群算法 3.4.1 人工鱼群算法简介 人工鱼群算法 (artificial fish swarm algorithm, AFSA) 是我国学者李晓磊[44-45]提出的一种模拟鱼类 觅食活动的群智能算法。人工鱼群算法主要原理是 通过模拟鱼群觅食、聚群、追尾三大基本行为,采用 自下而上的思路进行寻优。 人工鱼群算法具有寻优速度快、全局寻优能力 以及较强的并行处理能力等优点,被广泛应用于车 间调度分配[46] 、电力系统规划[47]以及机器学习[48] 等领域。 3.4.2 人工鱼群算法优化支持向量机参数 使用人工鱼群算法进行 SVM 参数优化的实验 中,人工鱼群算法使用多条人工鱼同时进行寻优, 从中选取最优的值作为此次优化的结果。由于缺乏 对 SVM 的参数优化问题的理论支持,所以高雷阜 等 [48]提出了基于人工鱼群算法的 SVM 参数优化选 取算法。文献中利用人工鱼群的并行性,能够更快 地收敛于全局极值点,并且以分类准确率最大化作 为优化原则建立目标函数,实现对 SVM 的核参数 和罚参数的优化选取。数值实验结果表明,人工鱼 群算法在 SVM 参数优化选取中具有更快的寻优性 能,同时具有较高的分类准确率。在文献的结论提 出了针对不同的具体问题只是通过现有的核函数的 选取,可能在某种程度上会影响 SVM 的性能,而且 人工鱼群算法能较快收敛到最优解的邻域中,但是 搜索寻优的性能仍需改进。 虽然人工鱼群算法具有对初值要求不高以及简 单实现等优点,但是也存在寻优精度不高、后期收 敛速度较慢的缺陷。针对此问题,田海雷等[49]提出 了一种基于改进人工鱼群算法,对 SVM 参数进行 优化,在对人工鱼群算法进行深入分析的基础上, 同时对人工鱼群算法进行改进,改进后的人工鱼自 适应地获取视野和步长,从而有效地改善算法的性 能,实验结果表明该算法获得了更高的预测精度。 朱文静等[50]也提出了一种混沌人工鱼群算法对 SVM 参数的优化方法,在人工鱼群优化算法基础上引入 混沌思想,利用混沌序列的随机性、遍历性和规律 性来提高算法的效率,得到了一种性能更好的混沌 人工鱼群算法,并将通过该算法优化后的 SVM 的 核参数与惩罚因子应用于语音识别系统中。冯晓琳 等 [51]也提出了一种基于改进型人工鱼群算法的 SVM 参数优化方法。该改进的人工鱼群算法实行参数动 态化,加入局部遍历算法,提高了人工鱼群算法的 精度。 传统人工鱼群算法的循环体有可能出现最佳解 的缺失,为了解决此问题,Bai Jing 等 [52]提出了一种 基于并行人工鱼群算法的 SVM 参数优化方法。实 验结果表明,该新算法是一种有效的 SVM 参数优 化方法,使得 SVM 不仅具有良好的泛化能力,同时 还具有更好的鲁棒性。 针对传统人工鱼群算法具有陷入局部最优的缺 陷,Lin Kuancheng 等 [53]提出一种基于改进的人工鱼 群算法的 SVM 参数优化方法。实验结果表明,与 原始人工鱼群算法相比,改进后的算法在分类精度 上具有明显的优越性。 目前仍有很多学者使用人工鱼群算法来优化 SVM 参数,并且应用于各种领域,例如僵尸网络检 测当中[54]等。通过以上领域的应用和实验结果的显 示,充分证明了人工鱼群算法在优化 SVM 参数方 面具有很大优势,寻找到的最优参数有效地提高了 SVM 的分类预测精度。 综上所述,人工鱼群算法作为新兴的群体智能 优化算法,具有较好的并行性以及不易陷入局部极 值等优点,同时还具有良好的寻优能力,可以使 SVM 获得更高的预测精度。通过不断的研究与改进,人 工鱼群算法已成为一种可行的 SVM 参数优化方法。 3.5 人工蜂群算法 3.5.1 人工蜂群算法简介 人工蜂群算法 (artificial bee colony algorithm, ABC) 是用于模拟蜂群智能搜索行为的一种仿生算 法,由土耳其埃尔吉耶斯大学的 Karaboga[ 5 5 ]于 2005 年提出。人工蜂群算法的主要原理是,模仿自 然界中蜜蜂采蜜的过程,群体中的蜜蜂根据分工不 同完成采蜜过程的各阶段任务,通过食物源信息的 收集与共享,寻找问题的最优解。 人工蜂群算法作为一种模拟蜜蜂群智能搜索行 为的优化算法,具有控制参数少、计算简单和易于 实现等特点,已成为目前研究的热点之一,被广泛 应用于飞机着陆问题[56] 、无人机航路规划问题[57]以 及车间调度问题[58]。 ·74· 智 能 系 统 学 报 第 13 卷