林偉濱
引言:在物流行業不斷發展壯大的背景下,各省市也逐漸制定出符合自身發展的物流戰略,并且將其納入到城市規劃當中,期望能夠通過物流業的發展帶動整個城市的經濟發展.但是,過快的增長很容易導致物流供求間的不平衡,因此城市規劃者需要對物流需求進行準確的預測,采用BP神經網絡的方式,模仿大腦神經結構建立新型的信息處理系統,以此來提升預測的有效性與準確性.
BP神經網絡處于目前應用范圍較廣的人工神經網絡,它具有前向多層性,將一層或者多層單元隱含在輸入和輸出層中間,如圖1所示,該圖屬于一個三層BP網絡,并且其中包含一個隱含層,與相鄰兩個層之間相互連接,但是每個層的內部神經元之間又處于相互獨立的狀態.

圖1 三層BP網絡結構圖
對于BP網絡來說,其主要采用誤差反向傳播的算法,主要理念在于,設置好輸入與期望輸出后進行網絡訓練,采用前向逐層計算的方式,計算出網絡中實際輸出與期望值之間的誤差,從而對權限進行判斷,直到結果與期望值相符合后才結束,否則偏差則會按照原本的網絡以反方向進行傳播,也就是由輸出層朝著相反的方向逐漸對聯接權重進行調整,最終使誤差與規定范圍相符合.在輸入層當中,神經元個數的計算由輸入信號維數來決定,而隱含層與節點的個數由客觀實際所決定,因此輸出層中神經元的數量與信號維數之間幾乎相同.
以上圖1為例,對三層BP網絡學習算法的學習過程進行分析.
(1)初始化,將全部權重都設置到最小的數值,然后得出初始閾值;
(2)設置特定的訓練數據,輸入向量為X,其取值范圍為x1,x2,……xm,期望輸出向量為 D,其取值范圍為 d1,d2,d3……dm;
(3)由輸入層開始,采用前向傳播的方式開始逐層計算;在對輸入層神經元的計算中,xi代表輸入向量,oi代表輸出向量,oi的取值范圍與xi相同,i的取值區間均為1,2,3……m,i代表的書輸入層維數.對于輸出層神經元的計算中,輸入向量為ω'ijo'i-θ'j,輸出向量為 yk=g(x"k),其中,k的取值范圍為1,2,3……l,k代表的是輸出層維數.對于隱含層層神經元的計算中,輸入向量為x'jωijxi-θj,輸出向量為oj=f(xj),其中,j的取值范圍為1,2,3……n,j代表著的是隱含層的維數[1].
綜上,ωij代表的是由輸入到隱含層中的權重;ω'jk代表的是隱含到輸出層之間的權重;函數f(·)與g(·)為非線性函數,同時也是可以為線性激勵函數.
(4)按照誤差反向傳播的方式,由輸出層開始在各個層次之間往返進行權重方面的調整,在定義網絡中的誤差為:

根據梯度算法中的規則,對上述函數的權重進行調整后可得:

在該式中,▽E(t)代表的是在t次訓練的過程中,函數按照梯度變化的相反方向.
對于從輸出到隱含層中權重的調整,公式為:

式中,η代表的是學習率,數值范圍大于0;dk代表的是期望值,k的取值范圍為1,2,3……l.
從隱含到輸入層中的權重調整,公式為:

式中,σk代表的是輸出層當中k的誤差;
(5)如若誤差的數值不符合預期范圍,則需要對其重新計算,直至誤差與期望相符合才能結束[2].
通過對現有文獻的分析可知,物流需求度量可分為實物量與價值量兩種.對于實物量來說,在物流需求方面主要為不同環節中實際作業量,包括倉儲量、貨運量等等;而價值量物流需求則主要是指物流環節中所有服務價值的整體反應.對于城市物流來說,主要目的是為了滿足城市居民生活與經濟發展的需求,所研究的主要對象大多為城市內部的物流工作,涉及的范圍較廣、時間較長,在對價值量的研究方面具有較大難度,國家目前此方面的數據也較少.
城市經濟發展促進了社會物流需求,物流需求又反作用于城市經濟發展,因此物流量與經濟因素之間存在較強的變化關系,由此可見,從理論上來看,根據二者之間的關系構建物流需求模型具有較強的可行性,公式為:

式中,W代表的是物流的需求量;B代表的是城市經濟發展的因素;通常對城市物流需求的影響因素較為復雜,涉及面積也較為廣泛,本文從貨運量方面展開研究,將影響因素歸結為以下幾個部分,分別為第一產業、第二產業、第三產業、區域零售總額、外貿總額、居民消費水平.
本文選取的是某市2013-2017年的城市貨運數據,將其作為本次研究的網絡訓練樣本,由于數據之間存在不一樣的量綱,需要對其進行歸一化的處理之后才能使用,保障處理后的數據區間均在0到1的范圍內,數據統一化處理的公式為:


表1 某市貨運量與經濟指標
本文的研究主要采用Matlab的方式,實現數據的統一化處理.
在表1中,X1代表的是該地生產總值;X2代表的是第一產業產值;X3代表的是第二產業產值,單位為億元;X4代表的是區域外貿總額,單位為億美元;X5代表的是居民消費水平,單位為億元;X6代表的是貨運量,單位為萬噸.
3.2.1 輸入、輸出、隱含節點數
根據上述對影響因素的分析,對生產總值、外貿總額、居民消費水平等因素進行明確以后,將其作為輸入節點,將貨運總量作為輸出節點.對于單隱層的BP神經網絡來說,需要通過實驗的方式對中間層的神經元數量進行計算.由上表可知,深入神經元有5個,按照Kolmogorov定理可知,首先將網絡隱含層中的神經元數量設置為15個,然后分別對10與20進行對比,最終明確最佳神經元個數.通過數據誤差的對比分析后可知,當隱含層在紅神經元的數量為15時,預測的誤差最小,因此處于最佳狀態[3].
3.2.2 權值、閾值的確定
在神經網絡模型構建之時,需要對網絡中的權值、閾值等初始值進行明確,這對于神經網絡的學習效果將產生直接影響.因此,可以通過多次預測取平均的方式獲取最為穩定的數值.在計算的過程中,通過超過1000次的計算方式使預測的準確性得到有效提升.而城市物流需求的預測則是為了構建城市經濟與物流之間的內在關系,并且為物流規劃提供有力的參考依據.
3.2.3 傳遞函數與訓練算法
通過相關實驗結果能夠看出,隱含層中的神經元采用S型正切函數的方式實現神經元的傳遞,而在輸出層當中采用S型對數函數的方式進行傳遞,獲得最佳傳遞效果.由于正切函數在收斂過程中的速度較快,因此在訓練中產生的誤差數值較小,本文選擇LM法進行訓練,次數為1000次,目標為0.0001,學習率為0.1,其他數據根據MATLAB工具箱內容進行處理.在神經元激勵函數確定方面,由于網絡非線性具有較強的逼近能力,因此通過S型激勵函數進行展現,函數形式如下:

其中,a的數值為1.72;b的數值為2/3.
3.2.4 實驗結果
在訓練的過程中,次數為11次以后,時間大約為0.49s時,網絡目標的誤差與預期數值相似,均方差為0.000956/0.001.由于在訓練時,最初設置的參數不同,導致每次在訓練結束后得出的結果也不盡相同,因此可以通過多次訓練的方式,使預測的數值與原始數據之間更加接近.
根據訓練結果能夠得出,BP神經網絡模型在準確度方面具有較為明顯的優勢,預測數據與原始數據之間的差值能夠保持在0.1992-2.2395%范圍內.由此可見,利用BP神經網絡模型對該市的物流需求進行預測和計算具有較大的可行性.
結論:綜上所述,在本文的研究中對BP神經網絡進行了分析,闡述了整個神經網絡模型的學習過程,并且挖掘出了城市物流量預測影響的因素,主要為區域零售總額、外貿總額、居民消費水平等,將其作為神經網絡模型的輸入層.最后,以某市為例構建BP神經網絡進行實證研究,以此來說明BP神經模型在物流量預測中的有效性與準確性.