(陜西國際商貿學院 陜西·咸陽 712046)
近年來,隨著社會的不斷進步和人口的不斷增加,對水資源的需求也日益增多。所以,準確預測水位數據對減少水資源缺乏具有一定的實際意義。本文利用洞庭湖南咀、長江監利、長江沙市三個水文觀測站點的實時水位數據。通過改進的粒子群對SVM的核函數參數進行優化,提高預測精確度,實現W-PSO優化的SVM預測模型。
W-PSO算法慣性權重變化的公式是:

W-PSO算法的步驟如下:
(1)隨機設置每個粒子的速度與位置。
(2)利用適應度函數算出每個粒子的適應度值,將粒子的位置和適應度值一同記錄在個體極值Pbest中,并將適應度值Pbest和所有個體極值中最佳適應值gbest的個體位置記錄在全局極值中。
(3)動態更新粒子位置和速度:

(4)根據式(2.1)更新權值:
(5)使得每個粒子的最佳位置與適應度值相比較,如果兩者相近,則使用目前值當作粒子的最佳位置。對比目前所有的個體極值Pbest和全局極值gbest,并不時更新全局極值gbest。
(6)當整個算法符合中斷條件(適應度函數收斂即適應度值達到最優)時,便中斷查找且輸出尋優結果,否則回到步驟(3)。
1.2.1 懲罰參數對SVM性能的影響
懲罰參數的作用是確定模型的復雜程度以及兩個個體之間吻合偏差大于不敏感系數的程度。對于已經確定的實驗數據,如果的值過小,則經驗偏差的懲罰越小,從而增加了支持向量機的經驗風險。因此,在數值上,支持向量機會產生一種“學習不當”的現象。當的值過大時,支持向量機模型的構成將變得繁瑣、雜亂,對提高分類器的分類效果有消極的作用。所以,對于某些數據樣本,選定一個符合條件的懲罰參數C顯得尤為重要。
在非線性支持向量機的情況下,需要引入懲罰參數C和核函數參數,這兩個基本參數的取值對預測精度有很大的影響。然而,人們僅僅通過大量的實驗來獲得更好的參數。該方法花費時間長,計算量大,得到的參數范圍較大。因此,論文提出利用 W-PSO算法對支持向量機中的兩個參數使用篩選優化的方式解決上述問題。
W-PSO算法是用于解決每個粒子如何尋得最優解。在尋優的過程中,算法中的每個粒子都可以代表解決一個問題的可行解方案,并且每個粒子都存在一個相對確定的適應值。粒子的速度確定了粒子相互之間運動的間距和方向。速度是根據本身和其他粒子的運動過程動態調整的,從而使得粒子在可能解決的空間中找到最佳解。
從理論探究和實際運用的方面出發,W-PSO算法主要解決尋優問題且具有實用性意義。因此,基于上述優點,用其不斷迭代尋找支持向量機最佳參數,建立了用于實際研究的WPSO優化支持向量機參數,以獲取最佳參數組合。
(1)獲取實驗數據,并進行處理。
(2)確定SVM核函數和W-PSO算法的各個最優參數。
(3)使用W-PSO對SVM模型進行參數優化,獲得最優參數。
(4)用(3)中獲得的最佳參數,進行仿真實驗,得出實驗結果。
論文的實驗數據均來源互聯網數據,即洞庭湖南咀、長江監利、長江沙市水文觀測站點的水位數據。其網站頁面記錄著每小時的水位變化情況,包括河名、站名、時間、水位、較前日8時流量等。
通過Python語言編寫代碼提取頁面中的水位數據,其中提取的數據樣本屬性包括河名、站名、時間(每隔一個小時)、水位和流量,采集論文實驗數據具體步驟如下:
(1)確定爬取頁面。因為爬取的時間段是2013-2018年,網頁的右上角有一個選擇查詢時間下拉框,因此,在爬取2013-2018年每年每月每時的水位數據時,利用循環函數,然后不斷的更新頁面,即可獲得水位數據。
(2)編寫頭信息。模擬一個瀏覽器,其屬性包括:Accept、Cache-Control、Accept-Encoding、Connection、Accept-Language、Content-Length、Cookie、Host、Origin、Referer、Upgrade-Insecure-Requests、User-Agent。
(3)定義主函數。即循環函數。
(4)接收響應內容。其包括:URL即具體網址、頭信息以及主函數。
(5)解析html頁面。
(6)提取標簽。將頁面解析之后,提取論文需要的標簽,比如年、月、日、小時、河名、站名、水位、流量。
(7)清洗數據。篩選掉對實驗沒有幫助的屬性。比如需要幾個站點的數據,即留幾個站點的水位數據;
(8)保存文件。將獲取到的實驗數據保存在.csv文件中。
為了驗證W-PSO優化SVM的預測模型的適用性與可行性,分別使用BP神經網絡預測模型、SVM預測模型、W-PSO優化SVM預測模型進行了實驗仿真。其值如表1所示。

表1:3個水文觀測站點預測預測
由表1可看出,不同預測模型的效果由MSE和R2進行反映。當MSE值變小,則表明預測效果越好;當R2值向1靠近,則預測效果越好。因此,說明了經過改進粒子群算法優化之后,預測精度有顯著的提升,為水位預測模型提供了實際應用價值。
支持向量機是一種新型的機器學習算法,其在解決非線性問題時具備較高的擬合能力和適應能力。論文提出利用WPSO算法對支持向量機的和核函數參數進行優化,解決了SVM參數難以選擇的問題,進而提高了預測精度。實驗結果表明:W-PSO優化SVM預測模型具有很好的適用性。