麻豆精品无码国产在线播放,国产亚洲精品成人AA片新蒲金,国模无码大尺度一区二区三区,神马免费午夜福利剧场

基于雙最優學習率快速學習神經網絡的交通流預測方法

文檔序號:6362973閱讀:213來源:國知局
專利名稱:基于雙最優學習率快速學習神經網絡的交通流預測方法
技術領域
本發明屬于交通流預測技術領域,涉及一種基于雙最優學習率快速學習神經網絡的交通流預測方法。
背景技術
交通流預測是智能交通的一個關鍵技術,交通流預測的精度及實時性直接影響到交通控制算法的好壞。經過幾十年的發展,短時交通流 預測出現了許多有用的預測模型。例如移動平均法,其核心思想是根據歷史交通流數據,依次計算以前一定周期內的平均值,用來預測下一周期或數周期的交通流。移動平均法的特點可以消除交通流數據中的抖動,顯示出其長期趨勢,但移動平均法適合預測交通流變化不大的情況,否則將會產生大的滯后及偏差。移動平均法的缺點主要表現在兩個方面第一就是預測算法需要存儲大量的歷史交通流數據;第二就是只考慮當前時刻以前有限個周期的歷史交通流數據,對于有限個交通流數據之前的數據則完全不予考慮。后來,為了克服移動平均法的這兩個缺點,人們又提出了指數平滑法,指數平滑法考慮了所有的歷史交通流數據,并且認為近期交通流數據比遠期交通流數據更重要,根據距離的遠近,分別賦予預測因子不同的權值,且采用“厚近薄遠”法。根據收斂快慢的要求,可以取一個適當的值α,然后使用a M乍為加權值。指數平滑法不需要存儲大量的歷史交通流數據,是對移動平均法的一個改進,得到了廣泛的應用。與移動平均法類似,當時間序列呈直線變動時,預測效果同樣會出現滯后現象。

發明內容
本發明的目的是提供一種基于雙最優學習率快速學習神經網絡的交通流預測方法,以解決現有預測方法的預測結果滯后的問題。為實現上述目的,本發明的基于雙最優學習率快速學習神經網絡的交通流預測方法步驟如下(I)選用連續的m個交通流歷史數據作為預測網絡的輸入;(2)輸入輸出數據進行歸一化處理,將其范圍限定在[-1,I];(3)神經網絡采用輸入層、隱層、輸出層三層網絡結構,使用randn函數對權值和小波基函數的伸縮、平移因子初始化,賦予一個(0,1]之間隨機值;小波基函數的平移因子和轉移因子采用第一學習率,網絡權值采用第二學習率;(4)提供一個學習率數組,網絡開始學習時,在信號正向傳播階段,信號經各層逐層向后傳播,最后到達輸出層,信號到達輸出層后與期望目標進行比較,如果達到期望目標則網絡學習終止;如果沒有達到期望目標則轉入誤差反向傳播過程,在反向傳播過程中完成網絡權值、伸縮和平移因子的調整,根據調整的結果,選取最好的一個,把對應的學習率作為第一、二學習率,如此重復學習,直到達到期望目標或達到最大迭代次數為止;(5)使用樣本完成網絡訓練后,使用當前時刻至前m-ι個共m個周期的交通流數值作為訓練后的網絡的輸入,此時網絡的輸出進行反歸一化后,得到當前時刻的下一時刻的預測值,實現對交通流的預測。進一步的,所述步驟(I)中采用一個時間段的交通流數據序列作為網絡訓練樣本,按采集時間間隔,將整個時間段分為η個時間點數據,在處理時將連續的m個時間序列作為一個樣本,第m+Ι個作為樣本的輸出,輸入為(Xi, xi+1,...,xi+m)T,輸出為xi+m+1。進一步的,所述步驟(2)中歸一化處理的公式為$ =2 X\ mm(X)、-1,其中
max(x) - min(x)
max(X)為交通流樣本序列中的最大值;min(x)為交通流樣本序列中的最小值;Xi為要歸一化的數據A為歸一化后的數據。進一步的,所述步驟(3)中學習率數組取值取值范圍介于(0,100],在取值上采取 類似對數坐標取值方式。進一步的,所述步驟(4)中每次在權值、平移和伸縮因子調整前,第一、二學習率從學習率數組中各取一個值進來計算網絡欲調整前后網絡的性能,直到第一、第二學習率把上述數組中的值取完為止,對每個值進行網絡性能計算,從計算結果中取性能最好的一個,將性能最好的一個所對應的第一、二學習率數值作為本次學習的學習率。進一步的,所述步驟(5)中反歸一化公式為x;=min(x) + ^^.+l)(max(x)-min(x)^* max(x)為交通流樣本序列中的最大
值;min(x)為交通流樣本序列中的最小值A為要反歸一化的數據;Xi為反歸一化后的數據。本發明的基于雙最優學習率快速學習神經網絡的交通流預測方法,每次網絡訓練時第一、二學習率(權值學習率、伸縮和平移因子學習率)從學習率數組中選取最優學習率,避免通過大矩陣計算來得到學習率的不足,由于神經元的傳輸函數采用了非線性的小波函數,因此可以加快非線性問題的收斂,同時避免單一學習率造成網絡收斂慢的不足,能夠實現快速網絡訓練,高精度預測交通流。


圖I是實施例中神經網絡結構圖。
具體實施例方式基于雙最優學習率快速學習神經網絡的交通流預測方法,具體步驟是(I)預測網絡的輸入變量選擇及預處理。為預測出當前時刻的下一時刻的交通流數據,選用當前時刻起至前九個交通流歷史數據作為預測網絡的輸入。由于交通流變化較大,故采用歸一化方法,通過歸一化將其范圍限定在[-1,1]。(2)網絡結構的確定及初始化。理論上,三層BP網絡可以實現任意非線性映射,因此采用三層網絡結構,如圖I所示,J、K、I分別代表網絡的輸入層、隱層和輸出層,其神經元個數分別為m、L和1,隱層采用morlet小波基函數作為傳輸函數,其中的a和b代表伸縮因子和平移因子,Ukj是隱層第k個神經元與輸入層第j個神經元之間的權值,Wk是輸出層與隱層第k個神經元之間的權值。網絡的實際輸出為,期望輸出為y,網絡誤差函數為MSE。
由于每次輸入樣本維數為10X1,所以輸入層神經元節點個數為10,對于一般的應用,涉及到有限個輸入樣本,所以隱層節點個數只需要有限個隱層節點即可滿足實際映射需要。到目前為止,隱層節點個數如何選取并沒有理論性的指導,一般實際應用中通常是根據前人的經驗和試湊法來得出最優的隱層節點個數。由前人經驗公式H = 4T+0 + a式中H為隱層節點數;1為輸入層節點個數;0為輸出層節點個數;&為I 10之間的一個常數。由于本實施例輸入輸出層節點個數為10和1,即I = 10,O = 1,所以H = λ/ΤΤ萬+ α取值為4 14,經過多次試驗,本實施例隱層節點選取為6。由于輸出為當前時刻下一時刻的預測流量,故其輸出層神經元節點為I。網絡結構確定后,使用randn函數對權值和小波基函數的伸縮平移因子初始化,賦予一個較小的(一般取(0,1]之間的值)隨機值。(3)網絡訓練。 取學習率數組為[O.001 O. 004 O. 007 O. 01 O. 05 O. 09 O. I O. 5 O. 9 I 5 9],網
絡參數每次調整前第一、二學習率從上述數組中各取一個值來計算網絡預調整(并不實際調整網絡參數)前后網絡的性能,直到第一、二學習率把上述數組中的值取完為止。最后,根據預調整的結果,選取最好的一個,把對應的學習率作為第一、二學習率,這樣可以保證每次網絡調整時取得的是最優學習率,即網絡調整量為最佳調整量。如此重復學習,直到達到期望目標或達到最大迭代次數為止。學習率數組取值范圍介于(0,100],為了兼顧提高網絡訓練效率和擴大學習率取值范圍,在取值上可以采取類似對數坐標取值方式,即
,一般情況下還可根據實際需要減少數組中的元素,比如從上述數組中每隔2個選取出來作為學習率數組。(4)進行預測。使用樣本完成網絡訓練后,使用當前時刻至前九個周期的值作為訓練后的網絡的輸入,此時網絡的輸出進行反歸一化后,即是當前時刻的下一時刻的預測值。
其反歸一化公式為=min(x) +去(瓦 +l)(max(x)-min(x))。以某路口交通流歷史數據預測下一時刻為例,來說明基于雙最優學習率快速學習神經網絡的交通流預測方法的具體實施方式
。步驟I :預測數據的選擇及處理。以某交叉口 3月I號,0:02:36-23:57:48時間段的交通流數據序列作為網絡訓練樣本,樣本數據采集時間間隔為每5分鐘I次,共289個時間點數據。由于當前時刻起至前九個交通流歷史數據作為網絡的輸入,所以289個時間序列不能直接用做訓練樣本,在處理時將連續的10個時間序列作為一個樣本,第11個作為樣本的輸出,即輸入為(Xi, xi+1,, xi+9)T,輸出為xi+1(l。所以289個時間序列經處理后其輸入、輸出為
X1 X2 . · · X280
^^3 · · · ^^281P — . · .· ;T — (X11 X12. · · χ289) 1X280
VX10 xIl …Χ289 7!0χ280交通流數值變化量一般比較大,訓練樣本準備好后,還需要進行輸入輸出數據(P和Τ)歸一化,即對P和T中的每一個元素利用下面的公式進行變換,這樣P和T中的每個元素都會映射到[-1,1]范圍之內。卜2 η
max(x) - min(x)步驟2 :網絡結構確定及網絡參數初始化。三層BP網絡可以實現任意非線性映射,本例選用三層網絡,第一層(輸入層)為10個神經元,根據經驗公式,第二層(隱層)為6個神經元,第三層(輸出層)為I個神經元。因此從輸入層到隱層之間的權值矩陣的維數為6X10,從隱層到輸出層權值矩陣的維數為I X 10,隱層神經元傳輸函數采用小波函數,故其伸縮平移因子維數為6X 1,網絡參數初始化時首先賦予權值、伸縮平移因子一個較小的(一般取(0,1]之間的值)隨機值,初始化時可以使用Matlab提供的randn(m, η)函數,此函數可以初始化mXn的矩陣,給矩陣中的每個元素一個較小 的隨機值。設定網絡最大迭代次數5000,防止網絡無何止的學習。設定網絡的期望目標,如果樣本數量較大,可適當增大期望目標值,如0.5。步驟3 :網絡訓練。確定好網絡參數后,接下來進行網絡的訓練,訓練時用輸入樣本矩陣P的每一列作為網絡的輸入,對于每個輸入對應一個輸出,信號經各層逐層向后傳播,最后達到輸出層,因此輸出為T' = (X1 X2. . . X280) !X280如果(T-T' )2小于期望目標則訓練停止;否則轉入誤差反向傳播過程,在反向傳播過程中完成網絡權值、伸縮和平移因子的調整,由LM學習算法知,網絡的調整量取決于學習率的大小,取學習率數組為
,此取法可以兼顧學習率范圍了網絡計算效率。如果網絡樣本數據較小可以增大學習率數據數值個數,否則可以減少其數值個數,在使用學習率進行權值、伸縮和平移因子調整時,設定權值學習率為第一學習率,伸縮和平移因子的學習率為第二學習率,這樣網絡每次訓練時就會有兩個學習率,每次調整前第一、二學習率從上述數組中各取一個值來計算網絡預調整(并不實際調整網絡參數)前后網絡的性能,直到第一、二學習率把上述數組中的值取完為止。最后,根據預調整的結果,選取最好的一個,把對應的學習率作為第一、二學習率,這樣可以保證每次網絡調整時取得的是最優學習率,即網絡調整量為最佳調整量。如此重復學習,直到達到期望目標或達到最大迭代次數為止。步驟4 :交通流預測。交叉口的信號周期一般不會小于45秒,神經網絡訓練時間經驗證在20秒左右,因此利用信號周期的前40秒來訓練網絡,這樣在后5秒網絡已訓練完畢,此時可以預測出下一周期的交通流,預測出的結果由于進行了歸一化,所以要求實際的交通流,進行反歸一化即可,利用下面的公式即可得到實際的交通流,
_ 。 X1- min(x) 1X1 = 2 ^—- -1
max(x) - min(x)為了進一步提高精度,網絡在線訓練,即信號周期的前40秒用來訓練網絡,后5秒進行預測。表I是本發明提出的網絡算法與其它幾種網絡算法學習次數比較;表2是本發明提出的算法與其它幾種預測算法的性能比較。表I實驗次數I本發明學習次數傳統算法學習次數動量算法學習次數
~I20432 62451
—I57343622762
~46633381358
~29226781951
~532014271607
~63452376T182 ~25625282025
~8349Γ 462074
~925220521689
~1034423691385表2
指標移動平均法人工神經網絡法雙最優學習率快速學習神經網絡法
MAE22.16246.84712.1935
MSE2.9067O.8478O.2359
權利要求
1.一種基于雙最優學習率快速學習神經網絡的交通流預測方法,其特征在于,該方法的步驟如下 (1)選用連續的m個交通流歷史數據作為預測網絡的輸入; (2)輸入輸出數據進行歸一化處理,將其范圍限定在[_1,1]; (3)神經網絡采用輸入層、隱層、輸出層三層網絡結構,使用randn函數對權值和小波基函數的伸縮、平移因子初始化,賦予一個(0,1]之間隨機值;小波基函數的平移因子和轉移因子采用第一學習率,網絡權值采用第二學習率; (4)提供一個學習率數組,網絡開始學習時,在信號正向傳播階段,信號經各層逐層向后傳播,最后到達輸出層,信號到達輸出層后與期望目標進行比較,如果達到期望目標則網絡學習終止;如果沒有達到期望目標則轉入誤差反向傳播過程,在反向傳播過程中完成網絡權值、伸縮和平移因子的調整,根據調整的結果,選取最好的一個,把對應的學習率作為第一、二學習率,如此重復學習,直到達到期望目標或達到最大迭代次數為止; (5)使用樣本完成網絡訓練后,使用當前時刻至前m-1個共m個周期的交通流數值作為訓練后的網絡的輸入,此時網絡的輸出進行反歸一化后,得到當前時刻的下一時刻的預測值,實現對交通流的預測。
2.根據權利要求I所述的方法,其特征在于,所述步驟(I)中采用一個時間段的交通流數據序列作為網絡訓練樣本,按采集時間間隔,將整個時間段分為n個時間點數據,在處理時將連續的m個時間序列作為一個樣本,第m+1個作為樣本的輸出,輸入為(xi,xi+1,...,Xi+m),ffHI 出為 xi+m+1。
3.根據權利要求2所述的方法,其特征在于,所述步驟(2)中歸一化處理的公式為
4.根據權利要求3所述的方法,其特征在于,所述步驟(3)中學習率數組取值取值范圍介于(O,100],在取值上采取類似對數坐標取值方式。
5.根據權利要求4所述的方法,其特征在于,所述步驟(4)中每次在權值、平移和伸縮因子調整前,第一、二學習率從學習率數組中各取一個值進來計算網絡欲調整前后網絡的性能,直到第一、第二學習率把上述數組中的值取完為止,對每個值進行網絡性能計算,從計算結果中取性能最好的一個,將性能最好的一個所對應的第一、二學習率數值作為本次學習的學習率。
6.根據權利要求1-5中任一項所述的方法,其特征在于,所述步驟(5)中反歸一化公式為x; =min(x) + ^■(瓦+l)(max(x)-min(x)),其中max(x)為交通流樣本序列中的最大值;min(x)為交通流樣本序列中的最小值為要反歸一化的數據;Xi為反歸一化后的數據。
全文摘要
本發明涉及基于雙最優學習率快速學習神經網絡的交通流預測方法,首先選用連續的m個交通流歷史數據作為預測網絡的輸入,對數據進行歸一化處理;采用三層神經網絡,對權值和小波基函數的伸縮、平移因子初始化;小波基函數的平移因子和轉移因子采用第一學習率,網絡權值采用第二學習率;提供一個學習率數組,進行雙最優學習率的網絡訓練;使用當前時刻至前m-1個周期的值作為訓練后的網絡的輸入,輸出進行反歸一化后,得到當前時刻的下一時刻交通流的預測值;本發明的方法在每次網絡訓練時第一、二學習率采用最優學習率,能夠實現快速網絡訓練,高精度預測交通流。
文檔編號G06N3/08GK102682345SQ201210007480
公開日2012年9月19日 申請日期2012年1月11日 優先權日2012年1月11日
發明者劉翠蘋, 張世偉, 張海濤, 白舸, 秦黎明 申請人:河南科技大學
網友詢問留言 已有0條留言
  • 還沒有人留言評論。精彩留言會獲得點贊!
1
主站蜘蛛池模板: 临夏市| 咸阳市| 炎陵县| 美姑县| 汕尾市| 万全县| 通许县| 昌吉市| 黎川县| 江达县| 塘沽区| 万年县| 衡南县| 长顺县| 财经| 姜堰市| 聊城市| 连州市| 新龙县| 金平| 襄垣县| 新建县| 宁阳县| 琼海市| 贵定县| 荃湾区| 宣武区| 阳曲县| 平泉县| 凤翔县| 阆中市| 仁寿县| 南阳市| 五大连池市| 鄂托克前旗| 嘉善县| 长乐市| 淳安县| 孟连| 德庆县| 上林县|