宋旺
【摘 要】論文根據(jù)葡萄病害發(fā)生率與各種影響因素之間的非線性關(guān)系,提出了基于支持向量機的葡萄病害發(fā)生率預(yù)測新方法,并與多元回歸分析作了對比,結(jié)果表明支持向量機的預(yù)測精準(zhǔn)性更好。
【Abstract】According to the nonlinear relationship between the incidence of grape diseases and various influencing factors, the paper puts forward a new method of grape disease prediction based on the support vector machine (SVM), and makes a comparison with multiple regression analysis. The results show that the prediction accuracy of SVM is better.
【關(guān)鍵詞】葡萄霜霉?。活A(yù)測;支持向量機
【Keywords】the downy mildew of grape; prediction; SVM
【中圖分類號】S46 【文獻標(biāo)志碼】A 【文章編號】1673-1069(2018)05-0104-02
1 引言
葡萄深受人們喜愛,葡萄在全世界各地均有種植,然而葡萄病害也威脅著葡萄產(chǎn)業(yè)的發(fā)展,因此,對葡萄病害進行預(yù)測顯得尤為重要。秦華 [1],包峰,王娟,任振輝 [2]分別用自適應(yīng)神經(jīng)網(wǎng)絡(luò)和BP神經(jīng)網(wǎng)絡(luò)對葡萄病害進行了預(yù)測,得出了神經(jīng)網(wǎng)絡(luò)模型可以用于葡萄病害的預(yù)測。胡一帆(2016年) [3]等基于支持向量機(SVM)方法,利用南京市的氣象數(shù)據(jù)建立了南京市天空云量的預(yù)報模型。本文考慮溫度、濕度、降水量與葡萄病害發(fā)生率的回歸擬合預(yù)測。
2 相關(guān)理論基礎(chǔ)
2.1 支持向量機的分類算法
根據(jù)Vapnik[4]所提出的支持向量機,能用于線性和非線性的分類問題。
對于線性回歸問題,令線性可分的樣本集為(xi,yi),i=1,2,…,n,x∈Rn,y∈{+1,-1}此時,n維空間線性判別函數(shù)一般表達(dá)式為:g(x)= wx+b,在這個空間中有一個最優(yōu)分類面能將兩類分類點區(qū)分,分類面的方程為:
w·x+b=0 (1)
應(yīng)滿足的約束條件為
y(w·x+b)≥1,i=1,…,t (2)
對判別函數(shù)g(x)=w·x+b,對所有的樣本都有|g(x)|≥1因此,樣本到最佳分類面的最小距離為:|g(x)|/||w||=1/||w||,上述問題變成:
min||w||2 (3)
s.t.yi(w·xi+b)≥1,?坌x (4)
這是一個凸二次規(guī)劃問題,引入lagrange函數(shù):
L(w,a,b)=||w||2-∑ai[yi(w·xi+b)-1] (5)
上述ai(i=1,2,…n)是拉格朗日乘子,分別對w和b求偏導(dǎo)得:
=0,=0 (6)
非線性問題此時也轉(zhuǎn)化為對偶問題:
w(a)=∑ai-aiajyiyj(xi·xj) (7)
在maxw(a)下,得出ai的解,值不為0所對應(yīng)的樣本點就是支持向量。最優(yōu)分類函數(shù)表示為:
f(x)=sign{(w·x)+b}=sign{∑aiyi(xi·x)+b} (8)
另一方面,看待非線性問題時,需要應(yīng)用一個非線性映射函數(shù)把原樣本空間映射到一個高維空間,有必要引入松弛變量ξi,這個因子應(yīng)當(dāng)加到拉格朗日的式子中,在求||w||最小值的計算當(dāng)中增加懲罰。
此時分類面的約束變成了
yi(w·xi+b)≥1-ξiyi(w·xi+b)≤-1+ξi i=1,…,t, ξi≥0 (9)
相應(yīng)的最優(yōu)超平面為f(x)=sign(∑aiyiK(x,xi)+b),n為支持向量的個數(shù),為K(x,xi)實現(xiàn)這種映射關(guān)系的核函數(shù)。
2.2 支持向量機的回歸算法
回歸型支持向量機常用ε—不靈敏誤差函數(shù)(ε≥0),尋求最優(yōu)回歸超平面的問題轉(zhuǎn)化為求解如下一個二次凸規(guī)劃問題:
min(w,ξ)= ||w||2+C∑t(ξ+ξ) (10)
約束條件:yi-(w·xi)-b≤ε+ξ(w·xi)+b-yi≤ε+ξξ,ξ≥0 (11)
式中ξ,ξ為松弛變量,分別表示在誤差為ε約束下的訓(xùn)練誤差的上限和下限,C為懲罰常數(shù)。
最優(yōu)超平面線性回歸方程為:
f(x)=(w·x)+b=∑SV(ai-a)k(x·xi)+b (12)
式中ai,a表示拉格朗日乘子,b為偏置量,由約束條件而來,k(x·xi)表示支持向量機的核函數(shù),xi表示作為支持向量的樣本向量,x表示待預(yù)測因子向量。大量研究表明選擇高斯核函數(shù)會比選擇其他核函數(shù)效果好。
3 支持向量機葡萄病害預(yù)測模型
本文將平均溫度、降水量、相對濕度作為輸入向量,葡萄病害發(fā)生率作為輸出量。取2012年到2014年各年的6月19至9月18日每隔一周的數(shù)據(jù),前27周作為訓(xùn)練樣本,選取后11周的葡萄病害發(fā)生率作為測試樣本。
關(guān)于本文歷史氣象數(shù)據(jù)以及相關(guān)葡萄病害發(fā)生率數(shù)據(jù)來源于龐建[5]的碩士論文。所用的工具是MATLAB軟件與工具包。本文利用交叉尋優(yōu)找到最優(yōu)參數(shù)c=1.4142,g=0.17678。實驗回歸擬合結(jié)果和預(yù)測結(jié)果分別如圖1和2所示。
得到的最佳參數(shù)進行訓(xùn)練,再與原始數(shù)據(jù)進行回歸預(yù)測,得到誤差僅為0.021,而相關(guān)性為71.35%,而多元回歸擬合程度為0.67。從圖中3.3可以得出,利用支持向量機對葡萄霜霉病病害發(fā)生率進行回歸分析,誤差僅為0.021?;貧w預(yù)測點的變化趨勢基本與原始數(shù)據(jù)保持一致。
4 結(jié)論
本文利用葡萄霜霉病病害發(fā)生率數(shù)據(jù)資料基于SVM理論建立SVM病害發(fā)生率預(yù)測模型對病害發(fā)生率進行短期預(yù)測,預(yù)測結(jié)果比多元線性回歸理想。同時,也進一步為葡萄病害發(fā)生率的預(yù)測提供了一種新方法。
【參考文獻】
【1】秦華. 基于自適應(yīng)神經(jīng)網(wǎng)絡(luò)的葡萄病害發(fā)生[D].保定: 河北農(nóng)業(yè)大學(xué),2009.
【2】包峰,王娟,任振輝. 基于BP網(wǎng)絡(luò)的葡萄病害發(fā)生預(yù)測系統(tǒng)的開發(fā)研究[J]. 安徽農(nóng)業(yè)科學(xué),2010,38(14):7660-7662.
【3】胡一帆. 支持向量機分類方法在天空云量預(yù)報中的應(yīng)用研究[A]. 中國氣象學(xué)會.第33屆中國氣象學(xué)會年會 S22 青年論壇[C].中國氣象學(xué)會,2016.
【4】Vapnik V. The nature of statistical learning theory[M]. New York Springer,1995.
【5】龐建. 昌黎產(chǎn)區(qū)赤霞珠葡萄病蟲害發(fā)生情況的研究[D].楊凌:西北農(nóng)林科技大學(xué),2016.