林偉濱
引言:在物流行業(yè)不斷發(fā)展壯大的背景下,各省市也逐漸制定出符合自身發(fā)展的物流戰(zhàn)略,并且將其納入到城市規(guī)劃當(dāng)中,期望能夠通過物流業(yè)的發(fā)展帶動(dòng)整個(gè)城市的經(jīng)濟(jì)發(fā)展.但是,過快的增長(zhǎng)很容易導(dǎo)致物流供求間的不平衡,因此城市規(guī)劃者需要對(duì)物流需求進(jìn)行準(zhǔn)確的預(yù)測(cè),采用BP神經(jīng)網(wǎng)絡(luò)的方式,模仿大腦神經(jīng)結(jié)構(gòu)建立新型的信息處理系統(tǒng),以此來(lái)提升預(yù)測(cè)的有效性與準(zhǔn)確性.
BP神經(jīng)網(wǎng)絡(luò)處于目前應(yīng)用范圍較廣的人工神經(jīng)網(wǎng)絡(luò),它具有前向多層性,將一層或者多層單元隱含在輸入和輸出層中間,如圖1所示,該圖屬于一個(gè)三層BP網(wǎng)絡(luò),并且其中包含一個(gè)隱含層,與相鄰兩個(gè)層之間相互連接,但是每個(gè)層的內(nèi)部神經(jīng)元之間又處于相互獨(dú)立的狀態(tài).
圖1 三層BP網(wǎng)絡(luò)結(jié)構(gòu)圖
對(duì)于BP網(wǎng)絡(luò)來(lái)說(shuō),其主要采用誤差反向傳播的算法,主要理念在于,設(shè)置好輸入與期望輸出后進(jìn)行網(wǎng)絡(luò)訓(xùn)練,采用前向逐層計(jì)算的方式,計(jì)算出網(wǎng)絡(luò)中實(shí)際輸出與期望值之間的誤差,從而對(duì)權(quán)限進(jìn)行判斷,直到結(jié)果與期望值相符合后才結(jié)束,否則偏差則會(huì)按照原本的網(wǎng)絡(luò)以反方向進(jìn)行傳播,也就是由輸出層朝著相反的方向逐漸對(duì)聯(lián)接權(quán)重進(jìn)行調(diào)整,最終使誤差與規(guī)定范圍相符合.在輸入層當(dāng)中,神經(jīng)元個(gè)數(shù)的計(jì)算由輸入信號(hào)維數(shù)來(lái)決定,而隱含層與節(jié)點(diǎn)的個(gè)數(shù)由客觀實(shí)際所決定,因此輸出層中神經(jīng)元的數(shù)量與信號(hào)維數(shù)之間幾乎相同.
以上圖1為例,對(duì)三層BP網(wǎng)絡(luò)學(xué)習(xí)算法的學(xué)習(xí)過程進(jìn)行分析.
(1)初始化,將全部權(quán)重都設(shè)置到最小的數(shù)值,然后得出初始閾值;
(2)設(shè)置特定的訓(xùn)練數(shù)據(jù),輸入向量為X,其取值范圍為x1,x2,……xm,期望輸出向量為 D,其取值范圍為 d1,d2,d3……dm;
(3)由輸入層開始,采用前向傳播的方式開始逐層計(jì)算;在對(duì)輸入層神經(jīng)元的計(jì)算中,xi代表輸入向量,oi代表輸出向量,oi的取值范圍與xi相同,i的取值區(qū)間均為1,2,3……m,i代表的書輸入層維數(shù).對(duì)于輸出層神經(jīng)元的計(jì)算中,輸入向量為ω'ijo'i-θ'j,輸出向量為 yk=g(x"k),其中,k的取值范圍為1,2,3……l,k代表的是輸出層維數(shù).對(duì)于隱含層層神經(jīng)元的計(jì)算中,輸入向量為x'jωijxi-θj,輸出向量為oj=f(xj),其中,j的取值范圍為1,2,3……n,j代表著的是隱含層的維數(shù)[1].
綜上,ωij代表的是由輸入到隱含層中的權(quán)重;ω'jk代表的是隱含到輸出層之間的權(quán)重;函數(shù)f(·)與g(·)為非線性函數(shù),同時(shí)也是可以為線性激勵(lì)函數(shù).
(4)按照誤差反向傳播的方式,由輸出層開始在各個(gè)層次之間往返進(jìn)行權(quán)重方面的調(diào)整,在定義網(wǎng)絡(luò)中的誤差為:
根據(jù)梯度算法中的規(guī)則,對(duì)上述函數(shù)的權(quán)重進(jìn)行調(diào)整后可得:
在該式中,▽E(t)代表的是在t次訓(xùn)練的過程中,函數(shù)按照梯度變化的相反方向.
對(duì)于從輸出到隱含層中權(quán)重的調(diào)整,公式為:
式中,η代表的是學(xué)習(xí)率,數(shù)值范圍大于0;dk代表的是期望值,k的取值范圍為1,2,3……l.
從隱含到輸入層中的權(quán)重調(diào)整,公式為:
式中,σk代表的是輸出層當(dāng)中k的誤差;
(5)如若誤差的數(shù)值不符合預(yù)期范圍,則需要對(duì)其重新計(jì)算,直至誤差與期望相符合才能結(jié)束[2].
通過對(duì)現(xiàn)有文獻(xiàn)的分析可知,物流需求度量可分為實(shí)物量與價(jià)值量?jī)煞N.對(duì)于實(shí)物量來(lái)說(shuō),在物流需求方面主要為不同環(huán)節(jié)中實(shí)際作業(yè)量,包括倉(cāng)儲(chǔ)量、貨運(yùn)量等等;而價(jià)值量物流需求則主要是指物流環(huán)節(jié)中所有服務(wù)價(jià)值的整體反應(yīng).對(duì)于城市物流來(lái)說(shuō),主要目的是為了滿足城市居民生活與經(jīng)濟(jì)發(fā)展的需求,所研究的主要對(duì)象大多為城市內(nèi)部的物流工作,涉及的范圍較廣、時(shí)間較長(zhǎng),在對(duì)價(jià)值量的研究方面具有較大難度,國(guó)家目前此方面的數(shù)據(jù)也較少.
城市經(jīng)濟(jì)發(fā)展促進(jìn)了社會(huì)物流需求,物流需求又反作用于城市經(jīng)濟(jì)發(fā)展,因此物流量與經(jīng)濟(jì)因素之間存在較強(qiáng)的變化關(guān)系,由此可見,從理論上來(lái)看,根據(jù)二者之間的關(guān)系構(gòu)建物流需求模型具有較強(qiáng)的可行性,公式為:
式中,W代表的是物流的需求量;B代表的是城市經(jīng)濟(jì)發(fā)展的因素;通常對(duì)城市物流需求的影響因素較為復(fù)雜,涉及面積也較為廣泛,本文從貨運(yùn)量方面展開研究,將影響因素歸結(jié)為以下幾個(gè)部分,分別為第一產(chǎn)業(yè)、第二產(chǎn)業(yè)、第三產(chǎn)業(yè)、區(qū)域零售總額、外貿(mào)總額、居民消費(fèi)水平.
本文選取的是某市2013-2017年的城市貨運(yùn)數(shù)據(jù),將其作為本次研究的網(wǎng)絡(luò)訓(xùn)練樣本,由于數(shù)據(jù)之間存在不一樣的量綱,需要對(duì)其進(jìn)行歸一化的處理之后才能使用,保障處理后的數(shù)據(jù)區(qū)間均在0到1的范圍內(nèi),數(shù)據(jù)統(tǒng)一化處理的公式為:
表1 某市貨運(yùn)量與經(jīng)濟(jì)指標(biāo)
本文的研究主要采用Matlab的方式,實(shí)現(xiàn)數(shù)據(jù)的統(tǒng)一化處理.
在表1中,X1代表的是該地生產(chǎn)總值;X2代表的是第一產(chǎn)業(yè)產(chǎn)值;X3代表的是第二產(chǎn)業(yè)產(chǎn)值,單位為億元;X4代表的是區(qū)域外貿(mào)總額,單位為億美元;X5代表的是居民消費(fèi)水平,單位為億元;X6代表的是貨運(yùn)量,單位為萬(wàn)噸.
3.2.1 輸入、輸出、隱含節(jié)點(diǎn)數(shù)
根據(jù)上述對(duì)影響因素的分析,對(duì)生產(chǎn)總值、外貿(mào)總額、居民消費(fèi)水平等因素進(jìn)行明確以后,將其作為輸入節(jié)點(diǎn),將貨運(yùn)總量作為輸出節(jié)點(diǎn).對(duì)于單隱層的BP神經(jīng)網(wǎng)絡(luò)來(lái)說(shuō),需要通過實(shí)驗(yàn)的方式對(duì)中間層的神經(jīng)元數(shù)量進(jìn)行計(jì)算.由上表可知,深入神經(jīng)元有5個(gè),按照Kolmogorov定理可知,首先將網(wǎng)絡(luò)隱含層中的神經(jīng)元數(shù)量設(shè)置為15個(gè),然后分別對(duì)10與20進(jìn)行對(duì)比,最終明確最佳神經(jīng)元個(gè)數(shù).通過數(shù)據(jù)誤差的對(duì)比分析后可知,當(dāng)隱含層在紅神經(jīng)元的數(shù)量為15時(shí),預(yù)測(cè)的誤差最小,因此處于最佳狀態(tài)[3].
3.2.2 權(quán)值、閾值的確定
在神經(jīng)網(wǎng)絡(luò)模型構(gòu)建之時(shí),需要對(duì)網(wǎng)絡(luò)中的權(quán)值、閾值等初始值進(jìn)行明確,這對(duì)于神經(jīng)網(wǎng)絡(luò)的學(xué)習(xí)效果將產(chǎn)生直接影響.因此,可以通過多次預(yù)測(cè)取平均的方式獲取最為穩(wěn)定的數(shù)值.在計(jì)算的過程中,通過超過1000次的計(jì)算方式使預(yù)測(cè)的準(zhǔn)確性得到有效提升.而城市物流需求的預(yù)測(cè)則是為了構(gòu)建城市經(jīng)濟(jì)與物流之間的內(nèi)在關(guān)系,并且為物流規(guī)劃提供有力的參考依據(jù).
3.2.3 傳遞函數(shù)與訓(xùn)練算法
通過相關(guān)實(shí)驗(yàn)結(jié)果能夠看出,隱含層中的神經(jīng)元采用S型正切函數(shù)的方式實(shí)現(xiàn)神經(jīng)元的傳遞,而在輸出層當(dāng)中采用S型對(duì)數(shù)函數(shù)的方式進(jìn)行傳遞,獲得最佳傳遞效果.由于正切函數(shù)在收斂過程中的速度較快,因此在訓(xùn)練中產(chǎn)生的誤差數(shù)值較小,本文選擇LM法進(jìn)行訓(xùn)練,次數(shù)為1000次,目標(biāo)為0.0001,學(xué)習(xí)率為0.1,其他數(shù)據(jù)根據(jù)MATLAB工具箱內(nèi)容進(jìn)行處理.在神經(jīng)元激勵(lì)函數(shù)確定方面,由于網(wǎng)絡(luò)非線性具有較強(qiáng)的逼近能力,因此通過S型激勵(lì)函數(shù)進(jìn)行展現(xiàn),函數(shù)形式如下:
其中,a的數(shù)值為1.72;b的數(shù)值為2/3.
3.2.4 實(shí)驗(yàn)結(jié)果
在訓(xùn)練的過程中,次數(shù)為11次以后,時(shí)間大約為0.49s時(shí),網(wǎng)絡(luò)目標(biāo)的誤差與預(yù)期數(shù)值相似,均方差為0.000956/0.001.由于在訓(xùn)練時(shí),最初設(shè)置的參數(shù)不同,導(dǎo)致每次在訓(xùn)練結(jié)束后得出的結(jié)果也不盡相同,因此可以通過多次訓(xùn)練的方式,使預(yù)測(cè)的數(shù)值與原始數(shù)據(jù)之間更加接近.
根據(jù)訓(xùn)練結(jié)果能夠得出,BP神經(jīng)網(wǎng)絡(luò)模型在準(zhǔn)確度方面具有較為明顯的優(yōu)勢(shì),預(yù)測(cè)數(shù)據(jù)與原始數(shù)據(jù)之間的差值能夠保持在0.1992-2.2395%范圍內(nèi).由此可見,利用BP神經(jīng)網(wǎng)絡(luò)模型對(duì)該市的物流需求進(jìn)行預(yù)測(cè)和計(jì)算具有較大的可行性.
結(jié)論:綜上所述,在本文的研究中對(duì)BP神經(jīng)網(wǎng)絡(luò)進(jìn)行了分析,闡述了整個(gè)神經(jīng)網(wǎng)絡(luò)模型的學(xué)習(xí)過程,并且挖掘出了城市物流量預(yù)測(cè)影響的因素,主要為區(qū)域零售總額、外貿(mào)總額、居民消費(fèi)水平等,將其作為神經(jīng)網(wǎng)絡(luò)模型的輸入層.最后,以某市為例構(gòu)建BP神經(jīng)網(wǎng)絡(luò)進(jìn)行實(shí)證研究,以此來(lái)說(shuō)明BP神經(jīng)模型在物流量預(yù)測(cè)中的有效性與準(zhǔn)確性.
赤峰學(xué)院學(xué)報(bào)·自然科學(xué)版2018年8期