支持向量机在水资源质量分类评价中的应用

2016-12-12 10:15:16孙文兵
关键词:控制参数适应度网格

孙文兵

(邵阳学院 理学与信息科学系,湖南 邵阳,422000)



支持向量机在水资源质量分类评价中的应用

孙文兵

(邵阳学院 理学与信息科学系,湖南 邵阳,422000)

建立了一种支持向量机(SVM)的水资源质量分类评价模型,采用“一对一”的多类别分类算法,核函数取径向基函数,分别用网格搜索法、遗传算法和粒子群算法对SVM模型的控制参数进行寻优.农村水质分类评价实验表明:网格搜索方法能得到较高的分类准确率而且泛化能力较强,计算时间短等优点,该模型的实际应用可以推广.

支持向量机;水质分类评价;网格搜索; 参数寻优

随着经济快速发展,水资源污染严重威胁到人们的生产和生活,对水资源进行正确的分类评价成为评估水质污染程度的一项重要工作.常见的评价方法有综合评价法、灰色聚类法、经济分析法、神经网络法等[1-3].每种方法有各自特点和不足,传统方法虽然能反映水质的部分情况但难以描述评价因子与水质等级之间的复杂的非线性关系,通用性较差;神经网络有较强的处理非线性关系的能力,但是存在一些先天的缺陷,比如,网络结构难以确定,泛化能力差.

支持向量机(Support Vector Machine,SVM)是基于统计学理论,以结构风险最小化原理为基础的一种新型机器学习方法.SVM方法广泛应用于统计分类、回归预测等[4-5]问题,可以较好逼近非线性复杂系统,能够有效解决过学习、维数灾难以及局部最小等问题,具有良好的泛化能力和分类性能.本文根据测试水样物质成分的含量,尝试利用SVM方法构建水质分类模型,对农村地表水进行分类评价.

1 支持向量机分类原理

SVM是针对模式识别中的线性可分和线性不可分两类问题构造最优超平面,实现分类求解.对于线性不可分的样本,引入某种特定的非线性映射方法把样本映射到一个高维特征空间转化为线性可分问题.最优分类超平面正是通过这样一个高维特征空间构造出来,从而实现分类.

假设训练样本{xi,yi},i=1,2,…,l,xi∈Rm;yi∈{+1,-1},其中m为输入维数,即评价因子,l为样本数目、k为输出,即评价级别.

(1)

其中ξi,i=1,2,···,l,C为惩罚因子,控制对错分样本的惩罚程度.在线性可分的情况下可取ξi=1,C=0.

根据Lagrange函数,得到原优化问题的wolf对偶问题:

(2)

求解对偶问题得到最优的α,最优超平面仅依赖于不为零的α对应的训练样本,称之为支持向量,进一步得到分类函数:

(3)

得到分类函数为:

(5)

根据不同的核函数可以得到不同的SVM,由于径向基核函数在支持向量机水质分类模型中有一定的优势[6],本文采用径向基核函数:

K(x,xi)=exp(-γ‖x-xi‖2),γ>0为核参数.

2 支持向量机水资源质量分类预测模型

2.1 控制参数寻优

惩罚因子C和核参数γ是两个控制参数,而这两个控制参数是影响 SVM 性能的关键因素[8].因此,核函数参数和惩罚因子C 的选择对 SVM 的性能至关重要,只有选择合适的控制参数,SVM 的优越性才能更好地发挥出来.因此,本文分别利用网格搜索法、遗传算法(GA)和粒子群算法(PSO)对 SVM 模型的参数进行寻优选择.

2.2 SVM分类预测步骤

第一步 选定包含所有类别特征参数的训练样本集和测试样本集;

第二步 选取合适的核函数K(xi,xj),用参数寻优方法确定最佳参数C,γ,训练SVM分类器;

第三步 待检验样本输入训练好的SVM分类器,得到分类函数的输出值,对测试集进行预测验证.

3 SVM分类模型在农村水资源评价中的应用实例

3.1 水质标准和评价指标的选取

采用《国家地表水环境质量标准》(GB3838-2002)作为水质评价的标准,水质评价参数指标有很多,本文选择对水体质量影响较大的5项指标:溶解氧、化学需氧量、高猛酸盐指数、总磷和总氮,根据各种参数指标将水质分成五个等级,见表1.

表1 地表水环境质量标准Table 1 Standards of surface water environmental quality

3.2 数据采集以及标准化

本文以邵阳市某农村生活生产用水的调查数据为例,主要检测以上五项参数指标值,选取池塘、水库、居民自建水井等10处样本进行检测,数据见表2,用SVM分类算法对10件样品进行分类评价.训练数据根据地表水环境质量标准数据(表1)采用等隔均匀内插方式生成,分类级别输出,取0~1.5,1.5~2.5,2.5~3.5,3.5~4.5,4.5~5分别对应水质评价的1,2,3,4,5级,总共生成250个训练样本.取1-200号样本训练SVM模型,201-250号样本作为测试数据,检验SVM分类的准确性,最后用训练好的SVM分类算法对10件采集的样本进行分类预测.

由于数据纲量的差异,为了提高训练速度和预测精度,对250组训练测试数据和10组采样数据分别用如下公式进行归一化处理,使得归一化后的数据分布在[0,1]之间.

(6)

3.3 三种参数优化模型的分类评价结果及分析

3.3.1 模型参数寻优

SVM分类参数寻优,目前并没有统一的模式,本文根据前人的研究经验尝试利用网格搜索法、遗传算法和粒子群算法对SVM模型的参数进行优选.

(1)网格搜索(Grid Search),先采用K-CV(取K=3)方法在一个大范围内粗略寻找较优的参数结果为c=0.143587 Best g=36.7583(g即为参数γ),再通过观察粗略寻优结果在参数附近较小范围内再次精细寻优,结果为Best c=1.41421 Best g=5.65685.利用Libsvm-mat-2.89软件包的函数SVMcgForClass实现这一过程,精细寻优结果见图1,测试集的分类准确率为98%(49/50),对真实数据的预测结果见表2.

SVC参数选择结果图(3D视图)[GridSearchMethod]

Best c=1.4142 g=5.6569 CVAccuracy=98.5%

图1 网格搜索参数精细寻优结果图Fig.1 Fine optimization results of grid search parameters

(2) 遗传算法(GA)寻优,GA是一种基于生物遗传和进化机制的自适应概率优化技术,本文将训练集在CV(交叉验证)意义下的准确率作为遗传算法的适应度函数,利用Libsvm-mat -2.89软件包的函数gaSVMcgForClass来实现这一过程,遗传算法中的参数设置采用函数gaSVMcgForClass的默认参数便可,得到最佳参数为Best c=75.2239 Best g=90.3403,适应度曲线随进化代数的变化关系如图2,测试集的分类准确率为98%(49/50),对真实数据的预测结果见表2.

适应度曲线Accuracy[GAmethod]

(终止代数=200,种群数量pop=20)

Best c=75.2239 g=90.3403 CVAccuracy=99%

图2 GA寻优的适应度曲线Fig.2 Fitness curve of GA optimization

(3)粒子群算法(PSO)寻优,PSO是一种基于群体智能的优化算法,粒子通过搜索空间中每一个可能解,以更新自己,并对模型推广能力的估计值作出评价,使得泛化误差最小化,对训练集进行CV意义下的准确率作为PSO的适应度函数.利用Libsvm-mat -2.89软件包的函数psoSVMcgForClass来实现这一参数寻优过程,粒子群算法中的参数设置采用函数psoSVMcgForClass的默认参数,得到最佳参数为c=5.50832 Best g=1000,适应度曲线随进化代数的变化关系如图3,测试集的分类准确率为98%(49/50),对真实数据的预测结果见表2.

适应度曲线Accuracy[PSOmethod]

(参数c1=1.5,c2=1.7,终止代数=200,种群数量pop=20)

Best c=5.5083 g=1000 CVAccuracy=99%

图3 PSO寻优的适应度曲线Fig.3 Fitness curve of PSO optimization

3.3.2 分类结果以及模型评价

利用三种参数寻优方法寻找最佳控制参数,并用所得的SVM分类模型对10个样本数据进行分类预测,结果如表2.

表2 农村水质评价指标实测值以及分类结果Table 2 The classification results and measured values of rural water quality evaluation index

从试验结果可以看出,三种方法对SVM分类模型控制参数寻优得到验证集的分类准确率很高均为98%,50个验证样本中只有一个分类出现失误,其余49个分类正确,然而两个控制参数中的惩罚因子C的值一般不宜过大,因为C值过大会导致过学习状态发生,即 C 越大,训练样本数据的拟合程度越高,但泛化能力反而降低.三种寻优方法中网格搜索法和粒子群算法找到的C值较小,网格搜索法得到的C值仅为1.41421,而且网格搜索法计算时间最短,粒子群方法计算时间最长.因此,SVM分类模型对农村水质分类预测采用网格搜索方法对参数寻优结果是最理想的.

4 结语

本文采用SVM多分类算法对农村地表水质量分级进行预测评价,在只能获得水质物质含量的前提下可以比较客观准确的对水质进行分类评价.利用三种方法对SVM模型的控制参数进行寻优比较,发现网格搜索法能得到较高的分类准确率高而且泛化能力较强,计算时间短等优点,实际应用中可以推广.

[1]王高骏,王晓昌,刘言正,等.基于熵权-集对分析的多级生态塘功效综合评价[J].环境 工程学报,2016,10(4):2093-2098.

[2]王学超,刘海滢.基于矢量量化神经网络模型的水环境质量评价研究[J].水利发展研究,2015,10:21-24.

[3]谭洪涛,黄 胜,朱琳.基于灰色聚类法的安昌江绵阳段水环境质量评价[J].西南科技大 学学报,2014,29(3):33-39.

[4]武雪玲,沈少青,牛瑞卿.GIS支持下应用PSO-SVM 模型预测滑坡易发性[J].武汉大学学报(信息科学版).2016,41(5):665-671.

[5]李小琳,孙 玥,刘 洋. 基于SVM修正的模糊时间序列模型在沪指预测中的应用[J]. 中国科学技术大学学报,2016,46( 3) :238-246.

[6]刘坤,刘贤赵,孙 瑾,等.基于支持向量机的水环境质量综合评价[J].中国环境监测,2007,23(3):81-84.

[7]MATLAB中文论坛编著.MATLAB神经网络30个案例分析[M].北京:北京航空航天大学出版社.2010.

[8]Vapnik V N.统计学习理论的本质[M].北京:清华大学出版社,2000.

Application of support vector machine in classification and evaluation of water resources quality

SUN Wenbing

(Department of Science and Information Science ,Shaoyang University,Shaoyang 422000,China)

A water quality classification and evaluation model based on support vector machine (SVM) was established.Multi class classification algorithm was designed by using "one against one" method and taking radial basis function (RBF) as kernel function.Grid search method,genetic algorithm(GA) and particle swarm optimization (PSO)algorithm were used to optimize the control parameters of SVM.The rural water quality classification evaluation experiment show that Grid search method can achieve higher classification accuracy and better generalization ability,and the computation time is shortest.The practical application of the SVM model can be popularized.

support vector machine (SVM); classification and evaluation of water quality; grid search; parameter optimization

1672-7010(2016)02-0011-05

2015-12-09

邵阳市科技计划项目(2015NC43)

孙文兵(1978-),男,湖南隆回人,硕士,讲师,从事智能算法及应用研究

O234;X824

A

猜你喜欢
控制参数适应度网格
用全等三角形破解网格题
改进的自适应复制、交叉和突变遗传算法
计算机仿真(2022年8期)2022-09-28 09:53:02
高超声速飞行器滑模控制参数整定方法设计*
飞控与探测(2022年6期)2022-03-20 02:16:14
Birkhoff系统稳定性的动力学控制1)
力学学报(2020年4期)2020-08-11 02:32:12
反射的椭圆随机偏微分方程的网格逼近
重叠网格装配中的一种改进ADT搜索方法
基于PI与准PR调节的并网逆变器控制参数设计
黑龙江电力(2017年1期)2017-05-17 04:25:08
基于曲面展开的自由曲面网格划分
基于空调导风板成型工艺的Kriging模型适应度研究
中国塑料(2016年11期)2016-04-16 05:26:02
少数民族大学生文化适应度调查