一种优化的SVM竹类属种识别方法
2017-10-10许高建李绍稳
李 欣 许高建,2 李绍稳,2
(1. 安徽农业大学, 合肥 230036; 2. 农业部农业物联网技术集成与应用重点实验室, 合肥 230036)
一种优化的SVM竹类属种识别方法
李 欣1许高建1,2李绍稳1,2
(1. 安徽农业大学, 合肥 230036; 2. 农业部农业物联网技术集成与应用重点实验室, 合肥 230036)
提出了一种优化的AS-PO-SVM分类模型,用于解决竹种属的分类问题。AS-PO-SVM是一种基于属性选择(AS)和参数优化(PO)的支持向量机(SVM)分类模型。先用UCI公开数据集验证了AS-PO-SVM模型的分类性能,再将模型应用于由簕竹属、牡竹属、刚竹属和玉山竹属共46个竹种样本构建的Bamboo数据集上。实验结果显示AS-PO-SVM模型在Bamboo数据集上分类准确率达到95.65%,是一种有效的竹种分类模型。
竹种分类; 属性选择; 参数优化; 支持向量机
竹子很少开花结实,以花和果为依据的传统植物分类方法难以应用于竹亚科植物。经典的竹亚科分类研究是建立在耿氏系统之上,以花序和地下茎性状为主要指标,结合秆、枝、芽、箨等营养体特征划分属及属以上类群[1-2]。国内外学者已将维管束解剖法、生物化学分类法、胚胎分类学、DNA分子标记等现代手段运用于竹种分类研究[3-9]。随着计算科学的发展,数据挖掘技术也相继被应用到植物分类领域,如马银晓使用支持向量机算法对鸢尾属植物进行分类[10],高智慧使用模糊聚类分析方法研究中国散生竹分类[11],张汉尧等人利用聚类分析法将5个属下14个竹种划分为2个种群[12]。在以上研究基础上,提出了一种综合优化的AS(Attribute Selection)-PO(Parameter Optimization)-SVM(Support Vector Machines)分类模型。以农业部农业物联网技术集成与应用重点实验室构建的竹类种质资源数据库为研究对象,以竹子常见的56个形态学特征为分类特征,构建了AS-PO-SVM竹类属种识别方法,并在开源软件WEKA平台上进行模拟验证。结果显示,AS-PO-SVM模型提高了经典SVM模型的分类准确率,在46个竹种样本上预测准确率达到了95.65%,是一种有效的竹类属种识别方法。
1 研究方法
1.1支持向量机
SVM作为数据挖掘领域经典的分类算法,被广泛应用于小样本、非线性和高维数据的分类问题。其基本原理是通过核函数把输入向量映射到一个高维特征空间,在新空间中找到一个最大间隔超平面实现对样本空间的划分[13]。常用的SVM核函数包括径向基核函数、线性函数和神经网络核函数等,其中径向基函数(Radial Basis Function,RBF)只有一个参数且普适性高,研究选用RBF-SVM作为模型的基本算法。径向基核函数是一种沿径向对称的标量函数,一般定义为空间中任意一点x到函数中心y之间的欧式距离的单调函数,见式(1):
K(x,y)=exp(-g|x-y|2)
(1)
其中g为函数的宽度参数,控制了函数的径向作用范围。
在使用RBF-SVM算法建模时,为了提高模型的运行效率和推广能力,侧重解决2个关键问题:属性选择策略和算法参数寻优方法。
1.2 AS属性选择策略
实验数据集的属性即用于构建分类模型的特征指标。数据集中每个属性对挖掘模式的贡献程度并不是均等的,也极有可能包含与挖掘任务不相关的属性。属性子集选择就是采取某种评价标准和搜索策略搜索所有可能的属性组合,通过删除关联度小甚至负相关的属性,以找到预测效果最好的最小属性子集。其任务就是在保证分类效果的前提下降低数据维度,缩小数据规模,提高模型的运行效率。另一方面,由于竹子数据的采集难度较大,有些形态特征采集具有一定困难,属性选择对后续的模型推广具有现实意义。如在仅采集到几个特征的情况下,仍可保证分类模型的预测精度。ReliefF算法是一种运行效率较高的特征权重算法,其基本思想是:一个有效的特征能使同类样本靠近,不同类样本远离[14]。研究采取ReliefF算法结合Ranker搜索作为AS属性选择策略,对数据集进行属性选择并依权重排序,通过设置阈值得到最优属性子集。
1.3 PO参数优化
算法参数关系到分类器的性能。RBF-SVM算法受到惩罚因子C和核宽度g的影响。目前SVM参数设置主要依靠经验选择、实验试凑、梯度下降、交叉验证、基于遗传算法或粒子群算法进行优化。采用网格搜索和K-交叉验证法来确定BRF-SVM的参数。网格寻优的一般过程:(1)取定一组参数,利用K-交叉验证法得到这组参数下训练集验证分类准确率;(2)进一步细分网格重复步骤(1);(3)找到使训练集验证分类准确率最高的那组C和g,即为最佳参数[15]。K-交叉验证法是将数据集分成K份相等的子集,每次将其中K-1份数据用于训练,而剩下的1份用于测试,这样重复K次,根据K次迭代得到最优的一组参数。
1.4模型评价与指标
分类算法与模型的评价通常采用4个指标:正确率ACC、命中率P、召回率R及度量F1(召回率R和命中率P的调和平均数)。计算公式为:
ACC=(TP+TN)(TP+TN+FP+FN)
(2)
P=TP(TP+FP)
(3)
R=TP(TP+FN)
(4)
F1=2·R·P(R+P)
(5)
式中:TP—— 预测正确的正样本数量;
TN—— 预测正确的负样本数量;
FP—— 预测错误的负样本数量;
FN—— 预测错误的正样本数量。
2 结果与分析
2.1数据准备与预处理
以竹种为样本,研究竹子在属的分类问题。实验样本Bamboo数据集来自农业部农业物联网技术集成与应用重点实验室构建的竹类种质资源基础数据库。Bamboo数据集由簕竹属、牡竹属、刚竹属和玉山竹属下46个竹种构成(见表1),依据文献[2,12,16-17]所述竹子常见形态学特征,选择其中56个属性作为分类特征指标(见表2)。
表1 用于实验分析的46个竹种
数据整理:取值明确的描述性属性按照英文描述直接保存取值,如竹箨箨片形状有三角形,披针形,带状形,椭圆形及其他形状,则取值为{triangle,lanceolate,banding,oval,other};二值型属性,如有无叶耳{0,1}。
预处理方法:当属性值为连续性属性值时,采用WEKA中Discretize算法进行离散化处理,如竹竿高度、秆壁厚度。因为样本规模小,采取人工干预处理缺失值,缺失值太多的样本直接删除,数值型属性用平均值代替缺失值,非数值型属性用出现最多的值代替缺失值。
表2 用于分析的分类特征指标(Bamboo数据集的属性)
2.2 AS-PO-SVM模型的性能测试
选取UCI公开实测数据库的2组数据集Labor和Glass对AS-PO-SVM模型进行性能测试。Labor数据集包含57个实例,16个属性,2个类型,是二元分类数据集。Glass数据集包含214个实例,9个属性,7个类型,是多分类数据集。此次研究基于WEKA实验平台,用JAVA语言实现,按照前述的AS策略寻找最优子集,PO策略优化算法的惩罚因子C和参数g。实验中,Labor数据集在属性选择时阈值取0.4,保留排名前9个属性,Glass数据集在属性选择时阈值取0.02,保留排名前5个属性;Labor数据集参数优化结果为C=5.0,g=0.1,Glass数据集参数优化结果为C=7.0,g=10.0。实验结果见表3。
表3 AS-PO-SVM模型在UCI公开数据集上的测试结果对比
实验1的结果表明,AS-PO-SVM模型提高了经典SVM分类器的性能,尤其是针对多分类问题,分类评价的4个指标都得到了提高。
2.3基于AS-PO-SVM模型的竹类属种分类
实验数据集Bamboo共有246个实例,56个属性,4个类型。实验步骤如下:
(1) 载入数据集Bamboo.arff并进行预处理。
(2) 使用ReliefFAttributeEval算法结合Ranker搜索策略进行属性选择,设置阈值为0.02,去除权重低于0.05的属性,依权重排名得到最优属性子集为{55,47,54,5,17,18,51,42,22,46,27,13,1,50,12,29}(参考表2属性序号)。
(3) 以第(2)步得到的最优属性子集为输入,采用元分类器weka.classifiers.meta.GridSearch,其中设置weka.classifiers.functions.SMO为核分类器,并选用核函数weka.classifiers.functions.supportVector.RBFKernel,配置相关参数,利用十折交叉验证,得到最优参数Values:**10.0**(X coordinate),**0.1**(Y coordinate),即C取10.0,g取0.1。
(4) 以第(2)步得到的属性子集为输入,以第(3)步得到的参数C=10.0,g=0.1作为BRF-SVM的参数,利用十折交叉验证,构建AS-PO-SVM分类器,结果见表4。
实验2的结果表明,AS-PO-SVM模型在Bamboo数据集上的分类效果良好。可见AS-PO-SVM模型用于竹子属的分类是有效的。
表4 AS-PO-SVM模型在Bamboo数据集上的实验结果
3 结 语
研究提出了一种优化的AS-PO-SVM分类模型。利用WEKA实验平台验证了模型的分类性能,并在小样本数据集上展开竹种分类试验,结果表明AS-PO-SVM模型对竹子属的分类识别具有较高的精度,为竹子分类研究提供了一种基于数据的多参数定量研究方法。由于竹子数据采集难度大,目前的研究仅局限于几个属的小样本数据,后续将对更多的竹子属种进行广泛的取样与测试,以构建竹种分类识别系统。另外需要再对AS-PO-SVM模型进行进一步校正与完善,如当样本规模增大时,如何找到更快的参数寻优算法来缩短模型运行时间,提高分类建模的效率。
[1] 耿伯介,王正平.《中国植物志》九卷一分册(禾本科-竹亚科)编后记[J].竹子研究汇刊,1996(1):77-79.
[2] 王正平.中国竹亚科分类系统之我见[J].竹子研究汇刊,1997(4):1-6.
[3] 丁雨龙,赵奇僧,陈志银,等.竹叶结构的比较解剖及其对系统分类意义的评价[J].南京林业大学学报(自然科学版),1994(3):1-6.
[4] 胡成华,喻富根,陈玲.竹果胚体类型及其系统分类[J].植物分类与资源学报,1994(4):367-372.
[5] 黄京华.丛生竹黄酮类化合物的分析研究及其在分类上的应用[J].竹子研究汇刊,1993(1):18-28.
[6] 李升峰.黄酮化合物在散生竹分类中应用初探[J].竹子研究汇刊,1990(4):17-23.
[7] 方伟,童再康.部分丛生竹同工酶的研究[J].植物分类学报,1992,30(3):219-225.
[8] WATANABE M,ITO M,KURITA S. Chloroplast DNA Phylogeny of Asian Bamboos (Bambusoideae, Poaceae) and Its Systematic Implication[J].Journal of Plant Research,1994,107(3):253-261.
[9] 李桃.EST-SSR标记在竹类植物系统分类中的研究和应用[D].杭州:浙江大学生命科学学院,2008:5-10.
[10] 马银晓,姚敏.支持向量机在植物分类中的应用[J].科技通报,2007,23(3):404-407.
[11] 高智慧.利用秆维管束进行中国散生竹类的聚类分析[J].广西植物,1991(2):135-140.
[12] 张汉尧,刘小珍,孙茂胜,等.竹子形态标记聚类分析研究[J].竹子研究汇刊,2005,24(1):25-28.
[13] CRISTIANINI N, TAYLOR J S.支持向量机导论[M].李国正,王猛,曾华军,译.北京:电子工业出版社,2004:83-98.
[14] 菅小艳,韩素青,崔彩霞.不平衡数据集上的Relief特征选择算法[J].数据采集与处理,2016(4):838-844.
[15] 王健峰,张磊,陈国兴,等.基于改进的网格搜索法的SVM参数优化[J].应用科技,2012(3):28-31.
[16] 耿伯介,温太辉.试论竹类植物营养体分类[J].竹子研究汇刊,1989(2):17-29.
[17] 赖广辉.试论竹子分类和种系鉴定中的若干方法问题[J].竹子研究汇刊,2013(3):9-13.
(1.Anhui Agriculture University, Hefei 230036, China;2.Key Laboratory of Technology Integration and Application in Agricultural Internet of Things, Ministry of Agriculture, Hefei 230036, China)
Abstract:An optimized AS-PO-SVM classification model was proposed and applied in the classification of bamboo plants at the level of genus. AS-PO-SVM is a Support Vector Machines (SVM) classification model based on the attribute selection (AS) and parameter optimization (PO). The classification ability of AS-PO-SVM model was firstly verified by UCI open data set, and then the model was used in the classification of 46 bamboo species fromBambusa,Dendrocalamus,PhyllostachysandYushaniagenus from a bamboo data set. The results showed that classification accuracy of bamboo data set by AS-PO-SVM could attain 95.65%, which suggested that the model is an effective tool for the classification of bamboo plants.
Keywords:bamboo classification; attribute selection; parameter optimization; support vector machines
AnOptimizedAS-PO-SVMClassificationModelfortheIdentificationofBambooSpecies
LI Xin1XU Gaojian1,2LI Shaowen1,2
TP18
A
1673-1980(2017)05-0098-04
2017-03-22
“十二五”农村领域国家科技计划课题(2015BAD04B03)
李欣(1986 — ),女,安徽农业大学在读硕士研究生,研究方向为人工智能及其应用。
李绍稳(1962 — ),男,教授,博士生导师,研究方向为人工智能与农业信息化。