肖 漢,曹 軍,李凌霄
(山東水利職業學院,山東日照 276826)
近年來,我國許多城市給水系統的供需矛盾日趨突出,城市水量緊缺的現象越來越普遍。準確的城市供水量預測不僅可為水資源分配、水廠建設和擴建以及選址提供重要的科學依據,也是城市供水系統優化調度的重要基礎。目前城市供水量預測的主要方法有長期趨勢分析法、回歸分析法、三角函數預測法、灰色預測法、季節指數平滑法和神經網絡法等[1]。由于給水系統的復雜性,城市供水量不僅受當地水資源總量的影響,而且還與城市的經濟發展、人均生活水平、供水設施建設、供水價格以及境外引水等眾多因素有關。因此,目前尚不存在公認的普適性預測模型。實際工作中,無論采用何種預測模型,都需要大量的基礎資料和篩選影響因子,這也是預測模型的關鍵和難點所在。首先,人們往往很難全面認識和描述供水系統中各變量間的相互關系,特別是變量間的非線性函數關系;其次,建立供水預測模型所需的大量基礎統計資料也常常十分缺乏,并且與之對應的,供水量影響因子選擇過少,必然會影響預測結果的準確性,而因子過多,會使網絡訓練復雜化,可能陷入局部優化問題,難以得到全局優化解[2]。
BP 神經網絡是利用非線性可微分形式進行權值訓練的多層網絡,是神經網絡理論中最為精華的部分,并具有較強的獨立性和靈活性,尤其是對于處理復雜性系統有著先天的優越性。本文著眼于通過主成分分析(Principle Component Analysis,PCA)去掉BP 神經網絡輸入樣本的冗余屬性,消除網絡輸入之間的相關性,以篩選后的因子集合為輸入指標,降低網絡的神經元數,進而提高模型的學習與泛化能力[3]。
PCA 是將多個變量通過線性變換以選出少數重要變量的一種多元統計分析方法。其基本思想是通過變量的相關系數矩陣內部結構的研究,找出能控制所有變量的少數幾個隨機變量去描述多個變量直接的相關關系。從數學角度而言,這屬于降維處理技術[4]。
PCA 的一般步驟為:
(1)數據的標準化處理

其中i=1,2,…,n,n為樣本點數。j=1,2,…,p,p為樣本原變量數目。
(2)計算數據[xij]n×p的協方差矩陣R。

(3)求R 的前m個特征值:λ1≥λ2≥λ3≥…≥λm,以及對應的特征向量u1,u2,…,um,它們標準正交。
(4)計算累計方差貢獻率Q。

(5)求m個變量的因子載荷矩陣。

BP 神經網絡是目前應用最廣泛的一種神經網絡模型。BP 算法的基本思想是,學習過程由信號的正向傳播與誤差的反向傳播兩個過程組成。正向傳播時,輸入樣本從輸入層傳入,經各隱含層逐層處理后,傳向輸出層。若輸出層的實際輸出與期望的輸出不符,則轉入誤差的反向傳播階段。誤差反傳是將輸出誤差以某種形式通過隱含層向輸入層逐層反傳,并將誤差分攤各層的所有單元,從而獲得各層單元的誤差信號,此誤差信號即作為修正各單元權值的依據。這種信號正向傳播與誤差反向傳播的各層權值調整過程,是周而復始地進行的。權值不斷調整的過程,也就是網絡的學習訓練過程。此過程一直進行到網絡輸出的誤差減少到可接受的程度,或進行到預先設定的學習次數為止[5]。其學習算法過程如下:
(1)初始化。給每個連接權值wij、vjt,閾值θj和γj賦予空間(-1,1)內的隨機值。
(2)隨機選取一組輸入Xk=(x1,x2,…,xn)T和目標樣本Dk=(d1,d2,…,dp)T提供給網絡。
(3)計算隱含層各單元的輸入與輸出。

(4)計算隱含層各單元的輸入與輸出。

(5)計算各層各單元一般化誤差。

(6)修正連接權vjt和閾值γj。

其中α為學習速率,取值0<α<1。
修正連接權wij和閾值θj。

反復(2)~(6)步驟直到樣本訓練完畢。
反復(2)~(7)步驟直到滿足精度[6]。
選取撫順市市區1991~2008年供水量序列資料和社會經濟資料作為基礎數據(部分統計結果見表1)。選取GDP、人口、工業總產值、建成區土地面積、用電總量、園林綠地面積和土地面積等7個變量,應用SPSS 軟件的主成分分析,求得相關系數矩陣,結果見表2。從表2 可知,7個因子存在不同程度的相關性。其中,GDP 與工業產值的相關性最高,相關系數為0.99,工業產值與用電總量相關性次之,為0.924。由此可提取出彼此獨立的變量,篩選有代表性的因了構造BP 神經網絡的輸入樣本。

表1 撫順市轄區典型年供水量及社會經濟統計表Table1 Water supply & social economy statistics of Fushun city area

表2 相關矩陣Table 2 Correlation matrix

表3 主成分特征值和貢獻率Table 3 Eigenvalues and contribution rates of principle constituents
表3 中,可以看出,第一因子的貢獻率為76.671%,前2個因子的累計貢獻率達91.772%,由此表明前2個因子代表了源數據7個變量90%以上的信息,其中第一個公共因子的代表性最強,第二個次之,以此類推。因此可以確定由前兩個因子代替所選的七個因子。
由表4 可以看出,GDP、建成區土地面積、工業產值對因子1 的荷載都超過了0.95,相對其他因子貢獻較大;人口對因子2 貢獻最大。因此,選GDP、建成區土地面積、工業產值和人口4個變量作主成分,并以此構造BP 神經網絡的輸入樣本。

表4 因子載荷矩陣Table 4 Component matrix
2.2.1 建立網絡模型 根據PCA 的結果,本文選取GDP、建成區土地面積、工業產值和人口四個影響因子為輸入變量,即一個4 維向量。目標向量就是預測當年的供水量,即輸出變量為1 維向量。網絡隱含層和輸出層均采用S 型函數。這是由于函數的輸出位于區間[0,1]中,正好滿足網絡輸出的要求。從樣本數據中選取1991~2004年樣本進行網絡訓練,2005~2008年的已知樣本對網絡進行檢驗。期望誤差取0.01,運算次數11000,學習率為0.75。
2.2.2 預測結果為了能找到比較合理的隱含層神經元數,建立了3~13個隱含層神經元的BP 網絡結構,通過比較運行結果,選出較合適的神經元數為6。因此網絡的拓撲結構為4:6:1,預測值與實際值對比結果見圖1。訓練結果進行樣本檢驗,檢驗結果及檢驗誤差見表5。

表5 供水量預測檢測結果Table 5 Testing outcome of total water supply prediction

圖1 BP 神經網絡預測結果分析圖Fig.1 Prediction outcome of BP neutral networks
由預測數據與原始數據的分析來看,期望輸出與實際輸出曲線擬合度較高,樣本絕對誤差均小于允許誤差,滿足精度的要求。檢驗樣本2005~2008年實際需水量與計算需水量之間的相對誤差分別為4.1%、7.5%、8.5%和8.9%,2007年和2008年期望輸出與實際輸出存在較大誤差,其主要原因是模型參數選擇時所依據的樣本系列尚不能代表總體,再有BP 神經網絡模型輸入層節點數、隱層節點數、節點轉換函數類型、模型訓練方式等都會對模型的模擬精度產生影響。
(1)本文運用PCA 與BP 神經網絡模型相結合的方法,以撫順市為例,進行供水量預測,為完善區域水資源信息系統,優化水資源配置,有效解決區域水資源供需矛盾提供了參考依據。
(2)運用PCA 分析的方法對原始數據進行預處理,提出4個主成分,即GDP、建成區土地面積、工業產值和人口。GDP、建成區土地面積、工業產值對因子1 的荷載都超過了0.95;人口對因子2 貢獻最大。因子1和2 的累計貢獻率達91.772%。
(3)由于神經網絡模型具有局部逼近的特征和較強的非線性映射能力,因此它能夠較好地模擬具有較強非線性變化特點的供水預測問題?;赑CA 的BP 神經網絡簡化了網絡輸入樣本,消除了網絡輸入之間的相關性,加快了網絡的收斂速度。最終取得了良好的預測結果。
(4)隨著預測時間的延續,模型所得預測值不可能完全符合今后的實際情況。鑒于此,可考慮將今后每年所得到的新數據加入到變量樣本中重新建立主成分進行預測。
[1]趙 凌,張 健,陳 濤.基于ARIMA 的乘積季節模型在城市供水量預測中的應用[J].水資源與水工程學報,2011,22(1):58-60
[2]李適宇,厲紅梅,林親鐵.深圳市供水最BP 種經網絡預測[J].給水排水,2004,30(12):105-107
[3]龍訓建,錢 鞠,梁 川.基于主成分分析的BP 神經網絡及其在需水預測中的應用[J].成都理工大學學報(自然科學版),2010,37(2):206-210
[4]余建英,何旭宏.數據統計分析與SPSS 應用[M].北京:人民郵電出版社,2003.291-310
[5]楊建剛.人工神經網絡實用教程[M].杭州:浙江大學出版社,2003.44-45
[6]倪紅珍,賈傳義,王 浩,等.智能網絡化水資源的實時預測分析[J].山東農業大學學報(自然科學版),2004,35(2):231-237