□杜付然 王改堂
(1.河南省水文水資源局;2.西安現代控制技術研究所)
黃河流域起源于青海,流經四川、甘肅、寧夏、內蒙古、陜西、山西、河南、山東等省市自治區,是我國西北地區和華北地區的重要水源,雖然黃河流域僅占全國2%的徑流量,但卻肩負著0.15 億hm2耕地和50 多座大中型城市約1.40 億人口的供水任務。近年來,隨著自然生態環境的破壞,以及流域內在地貌、地形、地質、土壤、植被等方面具有的復雜特性,黃河流域正面臨著水資源短缺,且水資源供需矛盾也在日趨尖銳。如何合理有效的利用水資源已成為社會關注的熱點問題。黃河流域水文模型的建立不僅在水利工程、水旱災害防治以及水資源調度、規劃和管理等方面具有重要的意義,而且是作為研究黃河問題的一個重要工具和手段。
極限學習機(Extreme Learning Machine,ELM)是由黃廣斌教授于2004年提出的一種新的單隱層前向人工神經網絡。與傳統的BP神經網絡相比,在網絡學習過程中,極限學習機算法無需調整任何學習參數(如輸入權值和閾值),只需通過隱含層輸出矩陣的廣義逆矩陣即可計算輸出層權值,極大地提高了網絡的學習速度。由于ELM算法具有學習效率高和泛化能力強等優點,因此被廣泛應用于分類,模式識別等領域。然而,在解決實際的工程問題時,樣本數據之間可能存在復共線性關系等現象,使用最小二乘法或MP廣義逆求解輸出權值時易導致病態解問題。針對該問題,王改堂等提出了極限學習機嶺回歸學習算法(ELMRR),該算法雖然在訓練時間和測試時間上均大于ELM 所用的時間,但其測試的性能明顯優于ELM。為提高ELM 算法的學習性能,國內外研究學者提出了多隱含輸出矩陣的極限學習機算法(M-ELM),融合極限學習機(PELM),增量型極限學習機改進算法(I-ELM),經驗模式分解極限學習機(EMD-ELM),多元時序驅動ELM 算法。雖然這些算法取得了良好的效果,但大都是從結構形式上做了更改,沒有從算法的本質入手,為此,文章將特征加權核函數應用于極限學習機學習算法中,提出了特征加權核極限學習機算法(Feature Weighted Kernel ELM,FWKELM)。通過該方法預測黃河流域的含沙量,實驗結果驗證了該方法的準確性、有效性。
假設ELM 網絡的隱含層節點數為L,激活函數為g(x),對任意Q個不同的樣本(xi,yi)∈Rn×Rm,ELM網絡的輸出與實際數據之間實現零誤差逼近,則存在εi,wi,bi有:

式(1)簡化為:

式中,

式中,wi=[wi1,wi2,…,win]T為隱含層的第i 個節點與輸入層之間的連接權值,其值為0~1之間的隨機數;εi=[εi1,εi2,…,εim]T為隱含層的第i 個節點與輸出層之間的連接權值;bi代表隱含層i節點的閾值。H為隱含層輸出矩陣,則ELM網絡的輸出權值ε的最小二乘解為:

式中,H+為矩陣H的Moore-Penrose廣義逆。
激活函數是ELM 算法的核心,激活函數選擇的好壞直接影響網絡的非線性映射能力和學習精度。徑向基函數(RBF)是一個取值僅僅依賴于離原點距離的實值函數,由于該函數具有學習收斂速度快、非線性映射能力強等特點,因此,文章選擇徑向基函數(RBF)為例進行分析。
RBF函數可表示為:


不管是分類算法還是回歸算法,對當前任務的分析并不是所有的特征做出同等貢獻,因此,我們需要根據特征的貢獻程度來選擇不同的權值。特征加權矩陣的出現不僅可以避免被一些弱相關或不相關的特征所支配,而且能使特征空間中點與點之間的位置發生改變,從而尋找最好的線性超平面來提高算法的性能。文章采用自助特征加權(Bootstrap feature weights)分析方法來計算權值,具體的算法過程如下:
假設自助特征加權算法的隨機樣本為X ={X1,…,Xn}?RP,Xj=(xj1,…,xjp)為第j個樣本,則樣本的標準偏差可表示為:

構件設計主要是應用了草圖設計和線框建模等功能,以此進行工程結構的三維構件設計。其中,構件裝配主要是指對于設計好的構件模型,要裝配成一個工程結構模型,從而促進裝配工作的順利完成,而結構配筋主要是指在設計好的構件上進行配筋工作,這與以往配筋圖紙存在極大的區別。在該模塊中,對全三維的鋼筋配置進行了廣泛應用,設計人員在施工之前,可以充分了解施工時的真實效果。此外,地質建模主要是指通過鉆探和物探等方式獲取的勘察資料,借助三維建模技術,及時構造出三維地質模型。

第k個特征變量的權值wk為:

步驟1:選擇B 個獨立的Bootstrap 樣本Xb={Xb1,…,Xbn},b=1,…,B,其中Xbj=(xbj1,…,xbjp)是從X={X1,…,Xn}中有放回抽取的樣本。
步驟3:計算B次復制樣本的均值估計特征權值wk為:

步驟4:特征加權矩陣P為:

定義1:令K是定義在X×X上的核函數,X?RP,P是給定輸入空間的p階線性變換矩陣,其中p是輸入空間的維數。定義為

式中,P為特征加權矩陣。
由式(12)可以得到,特征加權徑向基函數為:

式中,xi是第i 個樣本數據的輸入向量,xj為高斯函數的中心,σj為高斯函數的寬度。
FWKELM算法步驟如下:
步驟1:選擇訓練樣本數據(xi,yi),其中i=1,2,…n,計算訓練樣本數據的輸入數據矩陣為X,輸出數據矩陣為y;步驟2:根據特征加權算法步驟計算或構造特征加權矩陣P;步驟3:選取式(13)作為改進算法的激活函數;步驟4:隨機產生輸入權值wi和閥值bi;步驟5:采用式(3)計算隱含層輸出矩陣H;步驟6:采用式(5)計算輸出權值ε。
為了驗證該算法的有效性和可行性,文章以龍門(馬王廟二)站為例對黃河流域含沙量(kg/m3)進行預測,選擇水位(m)、起點距(m)、水深(m)、測點深(m)、流速(m/s)和水溫(℃)作為黃河流域含沙量的影響因子,利用文章提出的FWKELM 算法對黃河流域的含沙量進行預測。
實驗共采集了100組樣本數據,為了彌補在記錄數據時產生的誤差,對每組樣本數據增加0.01×10-1~0.09×10-1的隨機數。實驗過程中,首先對樣本數進行歸一化處理,然后將歸一化處理后的樣本數據隨機選取50 組數據作為訓練樣本,剩余的50組數據作為測試樣本,實驗采用均方根誤差(RMSE)作為評估算法的性能指標。圖1給出了FWKELM 算法的預測值與誤差,圖2 給出了ELM 的預測結果與誤差。FWKELM 和ELM算法的性能比較如表1所示。

圖1 FWKELM算法的預測結果與誤差圖
從圖1、圖2和表1中可以看出,FWKELM算法對黃河流域含沙量的預測精度優于ELM 算法,FWKELM 的測試誤差大多數情況處于[-2,2]之間,僅有個別點的預測誤差的絕對值>2,而ELM算法的預測誤差明顯不如FWKELM算法的測試結果。

圖2 ELM算法的預測結果與誤差圖

表1 FWKELM和ELM算法結果比較表
文章針對極限學習機(ELM)僅考慮樣本重要性的問題,提出了一種改進的ELM學習算法——基于特征加權核函數的極限學習機算法。該算法從樣本的特征重要性出發,使用自助特征加權算法對其激活函數進行了加權處理。通過對黃河流域含沙量的預測結果表明,文章所提出的算法具有較好的預測精度和泛化性能。