居錦武
摘 要: 設計一種六價鉻自動測量系統,為提高測量的準確度,使用最小二乘支持向量機(LSSVM)算法建立預測模型,并使用混合蛙跳算法優化LSSVM算法的參數,可避免算法收斂于局部最優,增強算法的泛化能力,減少算法對異常樣本的預測偏差,提高精度。通過對神經網絡模型及LSSVM模型進行仿真對比,結果顯示LSSVM模型的六價鉻含量預測誤差更小。
關鍵詞: 支持向量機; 六價鉻; 預測偏差; 自動測量系統
中圖分類號: TN911?34; TP391 文獻標識碼: A 文章編號: 1004?373X(2017)03?0100?03
Hexavalent chromium content prediction model based on LSSVM
JU Jinwu
(School of Computer Science, Sichuan University of Science and Engineering, Zigong 643000, China)
Abstract: A hexavalent chromium automatic measuring system was designed to improve the measurement accuracy. The least square support vector machine (LSSVM) algorithm is used to establish the prediction model, and the shuffled frog leaping algorithm is used to optimize the parameters of LSSVM algorithm to prevent the algorithm converging to the local optimum, enhance the generalization ability of the algorithm, reduce the algorithm′s prediction deviation for the abnormal samples, and improve the accuracy. The neural network model and LSSVM model are simulated respectively. The results show that the prediction error of the hexavalent chromium content predicted with LSSVM model is much smaller.
Keywords: support vector machine; hexavalent chromium; prediction deviation; automatic measuring system
0 引 言
六價鉻的測量是評價水體重金屬污染情況的重要測量項目[1],為了實現對水質六價鉻的自動在線測量,基于GB7467?87(2)測試標準,設計一種六價鉻自動測量系統。測量原理是在被測水樣中加入磷酸和硫酸,然后再加入二苯碳酰二肼,水樣中六價鉻與之反應[2],生成紫紅色化合物,采用紫外線分光光度法測量,進而測量出六價鉻的含量。分光光度法具有生成化合物速度快,吸光度分辨率高的優點,是一種有效的測量方法,特別適合設計成六價鉻自動測量系統。但是,分光光度法的缺點是試劑的成本較高,測量周期較長,數據量少,外部環境因素易對測量產生影響,重復性誤差<±5%,數據準備急需提高。通過使用神經網絡[3?4]、支持向量機[5]等技術對六價鉻的測量建立數據分析預測模型,可以有效提高測量可靠性。神經網絡較適合用于數據量大的場合,而采用分光光度法測量六價鉻,所得數據量不多,較適合使用支持向量機技術。配方采用最小二乘支持向量機(LSSVM)技術,以改善基本支持向量機的缺點。同時使用混合蛙跳算法,優化LSSVM的參數,進一步提高算法的泛化能力,減少異常數據的預測偏差。
1 LSSVM算法
1.1 基本理論
SVM算法基于統計理論的機器學習方法,依據結構風險最小原則,使得算法具有較好的學習泛化能力,適用于統計樣本數量不多的場合。通過改善約束條件和目標優化函數,LSSVM算法使泛化能力得到進一步提高[6]。
LSSVM算法設置如式(1)的決策函數:
[y(x)=ω?(x)+b+ξk] (1)
這樣,算法的目標優化函數[7]如下:
[Min J(ω,ξ)=12ω2+Ci=1Nυiξ2ks.t. yk=?(xk)ωT+b+ξk] (2)
使用Lagrange法求解式(2):
[L(ω,b,ξ,α)=12ω2+Ci=1Nξ2k-i=1Nαk(ωT?(xk)+b+ξk)-yk] (3)
選擇徑向基核函數(RBF)[8?9],以確定參數[b,][α,]RBF函數:
[K(xi,xj)=exp-xi-xj22σ2] (4)
LSSVM算法的效果直接取決于參數[C]和參數[σ,]為獲取最優化的參數值,使用混合蛙跳算法進行優化選擇。
1.2 混合蛙跳算法尋優
混合蛙跳算法是一種群智能進化算法,結合了模因算法和粒子群算法的優點,具有可控參數數量少、簡單、容易實現的特點,適用于解決算法參數優化問題,將混合蛙跳算法用于優化LSSVM算法的參數最優解,可取得良好的效果。使用混合蛙跳算法對LSSVM算法參數尋優的步驟如下:
(1) 初始化混合蛙跳算法各參數,如個體數量、模因組數量、進化次數、最大迭代次數等。
(2) 建立初始群體,分為[k]個子群,每個子群中包括[n]個個體。
(3) 根據適應度函數計算每個個體的適應度值,并據此排序,再將群體分為[m]個子群。
(4) 對每個子群計算其最優最差解,再更新子群中的最差個體,反復迭代,混合新的子群,替代原來的[m]個子群。
(5) 對每個子群,計算其適應度方差、變異概率,并對子群進行變異操作,更新子群的最優解。
(6) 反復迭代至第(4)步,當達到最大迭代次數,獲得最優解。
2 六價鉻自動測量系統
六價鉻自動測量系統,基于分光光度法測量水體的六價鉻含量,其系統設計結構如圖1所示,測量系統的實物圖片見圖2。
整個監測系統由工業控制計算機(IPC)、光度檢測裝置、微型泵、液位計量器、電磁閥及多種試劑組成,IPC控制液位計量器和電磁閥,控制樣品與試劑的混合反應,通過光度檢測裝置讀取反應色度信號,得到參比光強和測量光強,進而計算出六價鉻含量。其基本操作流程如下:
(1) IPC控制電磁閥和微型泵,水樣進入液位計量器。
(2) 達到規定容量后,水樣送入光度檢測裝置。
(3) 控制電磁閥,將磷酸送入液位計量器,達到規定容量后,再送入光度檢測裝置。
(4) 控制電磁閥,將硫酸送入液位計量器,達到規定容量后,再送入光度檢測裝置。
(5) 控制電磁閥,將顯色劑送入液位計量器,達到規定容量后,再送入光度檢測裝置。
(6) 等待10 min,讀取光度檢測裝置的數據,計算出測量光強。
(7) 控制電磁閥,將反應化合物送到廢液瓶。
(8) 控制電磁閥,將蒸餾水經液位計量器送入光度檢測裝置,清洗所有管道,再送到廢液瓶。整個過程反復3次。清洗同時,讀取光度檢測裝置數據,計算出參比光強。
3 預測分析模型
基于分光光度法設計的六價鉻自動測量系統使用分光光度檢測裝置,測量參比光強及測量光強,再通過式(5)計算出六價鉻的含量:
[六價鉻含量=K*log測量光強參比光強+B] (5)
式中:K和B為系數,通過儀器標定來確定。選取30組標準六價鉻溶液,其含量從0 mg/L遞增至4.5 mg/L,間隔0.15 mg/L。系統測量的總樣本數據為30個,選取15個樣本為訓練樣本,另外15個為測試樣本,部分樣本如表1所示。
將混合蛙跳算法應用于LSSVM算法的參數優化過程中,確定其最優參數[C]為4.257 8,參數[σ]為25.367 5。基于神經網絡及LSSVM算法,建立六價鉻預測模型,仿真數據如表2所示。兩種預測模型的結果對比如圖3所示。
從表2數據可見,基于神經網絡的六價鉻預測模型的結果誤差極值為9.78%,均值為4.68%,而基于LSSVM算法的預測模型的誤差極值為2.77%,均值為1.62%,對比顯示LSSVM預測模型獲得了更高的精度。
4 結 語
本文介紹了一種六價鉻自動測量系統的設計,并將LSSVM技術應用到數據分析工作中,建立數據預測模型,其預測結果與實際含量的對比顯示,這種預測模型可以有效地提高數據準確性,可以應用到實際的數據分析預測工作中。基于LSSVM的預測模型使用簡便,可控參數數量少,只需確定參數C和參數[σ]即可,使用混合蛙跳算法能夠有效優化兩個參數,提高LSSVM預測模型的精度,在數據分析預測模型的建立方面具有廣泛的應用前景。
參考文獻
[1] 唐清霞,盛杰.六價鉻的危害性評價及其檢測研究[J].資源節約與環保,2015(7):49.
[2] 程柏森,陳永玉.二苯碳酰二肼分光光度法測定堿式氯化銅中六價鉻[J].廣州化工,2015,43(15):144?145.
[3] 童敏明,張愉,齊美星.基于BP神經網絡的可燃混合氣體分析方法的研究[J].計量學報,2006,27(2):169?171.
[4] 侯迪波,陳玥,趙海峰,等.基于RBF神經網絡和小波分析的水質異常檢測方法[J].傳感器與微系統,2013,32(2):138?141.
[5] 黃苜,程小平.基于支持向量機回歸粒子濾波器的運動員實時跟蹤方法[J].西南大學學報(自然科學版),2008,30(5):165?169.
[6] 曾燕,成新文,王紅旗,等.基于加權最小二乘支持向量機的下水道可燃氣體分析[J].西南師范大學學報(自然科學版),2014,39(9):94?99.
[7] SUYKENS J A K, VANDEWALLE J, BRABANTER J D, et al. Least squares support vector machine classifiers [J]. Neural processing letters, 1999, 9(3): 293?300.
[8] WEN W, HAO Z F, YANG X W. A heuristic weight?setting strategy and iteratively updating algorithm for weighted least squares support vector regression [J]. Neurocomputing, 2008, 71(16/18): 3096?3103.
[9] SUYKENS J A K, VANDEWALLE J. Recurrent least squares support vector machines [J]. IEEE transactions on circuits and system, 2000, 47(7): 1109?1114.