日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程语言 > python >内容正文

python

python交通流预测算法_基于遗传算法优化LSTM神经网络的交通流预测方法与流程...

發布時間:2023/12/20 python 34 豆豆
生活随笔 收集整理的這篇文章主要介紹了 python交通流预测算法_基于遗传算法优化LSTM神经网络的交通流预测方法与流程... 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

本發明涉及深度學習方法和交通流預測等技術領域,具體涉及一種基于遺傳算法優化LSTM神經網絡的交通流預測方法。

背景技術:

短時交通流的預測是交通管理部門采取交通控制和誘導措施的重要依據。通過對短時交通流的預測,可以提前調整交通管理控制手段,提高交通運行效率。為了更好反應道路交通運行狀態,交通流的短期實時預測是智能交通領域研究重點。交通流數據是時間序列數據,隨著機器學習及深度學習的推進,對交通流的預測方法也在不斷改善。

早期交通流的預測是基于傳統統計學理論。對于統計模型,Ahmed首次將時間序列模型應用于交通流預測領。Vythoulkas引入卡爾曼濾波的交通量預測,采用線性系統狀態方程對整體狀態進行最優估計。馬爾科夫預測模型利用時間序列轉移概率預測未來時間序列的狀態,但不適用于長期預測。在機器學習預測方法中,Quek利用模糊神經網絡建立了每個路段及整個路網的交通流預測模型,采用模擬測試數據進行驗證;Jiang采用動態小波神經網絡進行實際交通流預測,邵春福提出采用SVM回歸模型的交通狀態實時預測。于濱提出了基于時間維度、上游路段、下游路段和時空參數四種狀態向量的K近鄰模型,研究各參數對預測精度的影響。羅向龍提出采用深度信念網絡對數據先進行特征學習提取,再采用頂層SVM模型進行預測[。黃廷輝提出了采用分布式梯度優化決策樹篩選特征向量建立DUTP-GBDT模型。

當前深度學習應用在時間序列數據預測中的范圍更加廣泛。王祥雪通過對LSTM神經網絡精細化調參實現了對城市快速路車速的實時預測。王鑫采用多網格搜索優化參數選取的LSTM模型對飛機故障事件序列進行預測。楊其采用LSTM和ARMA對慣性器件的隨機誤差進行了誤差濾波擬合。

在交通流預測領域,最流行的方法是采用深度學習中的LSTM神經網絡進行預測,但該方法需要對LSTM神經網絡的參數進行調整,才能擁有較高的預測精度。目前對于深度學習預測模型參數選取研究多是采用遍歷多網格搜索算法、控制變量精細調參,計算開銷大。

技術實現要素:

本發明的內容就是在解決在交通流預測中,由于大范圍參數調優帶來的計算開銷大,訓練時間長、預測性能較差、耗費時間長,無法尋到LSTM神經網絡最優參數組合的問題。

為實現上述目的,本發明的技術方案是:

一種基于遺傳算法優化LSTM神經網絡的交通流預測方法,包括如下步驟:

步驟S1、交通流數據采集,并進行數據歸一化預處理,分為訓練數據集和測試數據集;

步驟S2、采用遺傳算法優化LSTM神經網絡預測模型的各個參數;

步驟S3、輸入遺傳算法優化好的參數、訓練數據集,進行LSTM神經網絡預測模型的迭代優化;

步驟S4、利用已訓練好的LSTM神經網絡模型對測試數據集進行預測,并評估模型誤差。

進一步地,所述步驟S1具體為:

步驟S11、采用高速公路高清卡口檢測器在設定的觀測點或者路段,在一定時間間隔內對交通流數據進行采集;

步驟S12、對數據進行歸一化,并按照比例劃分為訓練數據集和測試數據集,其中,原始交通流數據DF={df1,df2,……,dfn},數據歸一化方法采用離差標準化方法,公式如下:

其中,di是歸一化后的交通流數據,是交通流數據中最小值,是交通流數據最大值,dfi為待歸一化處理的交通流數據。

進一步地,所述的時間間隔包括5分鐘、15分鐘、30分鐘、60分鐘。

進一步地,所述的按照比例劃分為訓練數據集和測試數據集具體為:將歸一化數據的前87.5%為訓練數據集,后12.5%為測試數據集。

進一步地,所述步驟S2中,所述LSTM神經網絡預測模型所需優化的參數包括:LSTM神經網絡隱藏層數、時間窗步長、訓練次數、遺忘率Dropout,所述遺傳算法優化LSTM神經網絡的模型是在參數搜索空間里,以預測誤差最小為目標函數,進行參數組合尋優。

進一步地,所述步驟S2中采用遺傳算法對LSTM神經網絡預測模型涉及到的參數進行優化時,以預測誤差最小為目標函數,獲取參數搜索空間的最優解,進行參數組合尋優,形成復合GA-LSTM模型,包括步驟:

步驟S21、種群初始化并解碼;

步驟S22、將LSTM神經網絡的均方誤差作為適應度函數;

步驟S23、將解的個體進行選擇交叉變異操作;

步驟S24、若適應度函數目標值達到最優值,則進行下一步;否則返回步驟S23;

步驟S25、獲得適應度函數目標值和最佳參數;

步驟S26、計算基于最佳參數的預測均方誤差;

步驟S27、終止條件判斷,若種群迭代次數滿足,則停止計算,此時LSTM網絡全局最優參數組合;否則返回步驟S26。

進一步地,所述步驟S3具體為:

S31、將處理好的測試數據X輸入到復合GA-LSTM模型隱藏層中,GA-LSTM單元受前一階段訓練模型影響,輸出預測數據為:P={P1,P2,……,PS},Pp=GA-LSTMcal{Xp,Cp-1,Hp-1},其中,Cp-1、Hp-1分別是前一GA-LSTM單元的狀態和輸出,GA-LSTMcal是LSTM神經網絡的計算過程,網絡訓練損失函數采用均方誤差,即:

其中:S為時間窗步長,m為訓練數據集元素個數,pi為預測數據,yi為實際數據;

S32、復合GA-LSTM模型中采用經遺傳算法選定好的參數,優化目標為損失函數最小化,采用Adam優化算法進行梯度計算,對網絡迭代更新不斷調整模型權重、降低預測誤差。

進一步地,所述步驟S4具體包括:

采用訓練好的LSTM神經網絡模型對預測數據集進行交通流預測,將預測數據同實際數據進行誤差計算,所述誤差計算采用均方誤差和均方根誤差兩項指標還原預測數據進行輸出,在預測中,均方誤差和均方根誤差的值越小,代表預測精度越高,其中,

均方誤差:

均方根誤差:

式中,N是數據集個數,Yi是真實數據集,Yi*是預測數據集。

與現有技術相比,本發明的有益效果在于:

1、采用遺傳算法優化LSTM神經網絡模型參數組合,該方法可以在參數空間快速找到最優參數組合;

2、采用遺傳算法和LSTM神經網絡模型預測交通流,模型具有長期數據記憶的優勢,提高預測精準度;

3、遺傳算法和LSTM神經網絡模型對不同時間間隔的數據樣本具有良好的適用性。

4、模型計算量少,表現出更好的預測性能。

附圖說明

圖1是本發明實施例的步驟流程圖。

圖2是遺傳算法迭代優化目標函數圖。

圖3是遺傳算法目標函數最優值示意圖。

圖4是四種模型5分鐘的預測結果。

圖5是四種模型15分鐘的預測結果。

圖6是四種模型60分鐘的預測結果。

圖7是四種模型60分鐘的預測結果。

圖8是四種模型均方誤差示意圖。

圖9是四種模型均方根誤差示意圖。

具體實施方式

下面結合實例對本發明做進一步的說明,所描述的實施例旨在便于對本發明的理解,而對其不起任何限定作用。

一種基于遺傳算法優化LSTM神經網絡的交通流預測方法,主要流程如圖1所示,包括如下步驟:

步驟S1:交通流數據采集,并進行數據歸一化預處理,分為訓練數據集和測試數據集。

所述交通流數據來源于高速公路高清卡口檢測器,在特定的觀測點或者路段,在一定時間間隔內通過的車輛數,時間間隔可以根據實際預測需求制定,本發明采用的是5分鐘、15分鐘、30分鐘、60分鐘四個時間間隔樣本數據。

讀取獲得原始交通流數據DF={df1,df2,……,dfn},采用離差標準化方法對數據歸一化:

其中,di是歸一化后的交通流數據,是交通流數據中最小值,是交通流數據最大值,dfi為待歸一化處理的交通流數據。

獲得新數據序列D={d1,d2,……,dn},按比例劃分訓練數據集和測試數據集分別為dtr={d1,d2,……,dm}和dte={dm+1,dm+2,……,dm},其中,將歸一化數據的前87.5%為訓練數據集,后12.5%為測試數據集。對數據進行時間窗步長處理,設定時間窗步長設定為S,則處理后數據輸入為:X={X1,X2,……,XS}。實際對比數據為:Y={Y1,Y2,……,YS}。

步驟S2:采用遺傳算法優化LSTM神經網絡預測模型的各個參數。

所述步驟S2中,所述LSTM神經網絡預測模型所需優化的參數包括:LSTM神經網絡隱藏層數、時間窗步長、訓練次數、遺忘率Dropout,所述遺傳算法優化LSTM神經網絡的模型是在參數搜索空間里,以預測誤差最小為目標函數,進行參數組合尋優。

所述步驟S2中采用遺傳算法對LSTM神經網絡預測模型涉及到的參數進行優化時,以預測誤差最小為目標函數,獲取參數搜索空間的最優解,進行參數組合尋優,形成復合GA-LSTM模型,包括步驟:

步驟S21、種群初始化并解碼;

步驟S22、將LSTM神經網絡的均方誤差作為適應度函數;

步驟S23、將解的個體進行選擇交叉變異操作;

步驟S24、若適應度函數目標值達到最優值,則進行下一步;否則返回步驟S23;

步驟S25、獲得適應度函數目標值和最佳參數;

步驟S26、計算基于最佳參數的預測均方誤差;

步驟S27、終止條件判斷,若種群迭代次數滿足,則停止計算,此時LSTM網絡全局最優參數組合;否則返回步驟S26。

步驟S3:輸入遺傳算法優化好的參數、訓練數據集,進行LSTM神經網絡預測模型的迭代優化,具體包括:

S31、將處理好的測試數據X輸入到復合GA-LSTM模型隱藏層中,復合GA-LSTM單元受前一階段訓練模型影響,輸出預測數據為:P={P1,P2,……,PS},Pp=GA-LSTMcal{Xp,Cp-1,Hp-1},其中,Cp-1、Hp-1分別是前一GA-LSTM單元的狀態和輸出,GA-LSTMcal是LSTM神經網絡的計算過程,網絡訓練損失函數采用均方誤差,即:

其中:S為時間窗步長,m為訓練數據集元素個數,pi為預測數據,yi為實際數據;

S32、復合GA-LSTM模型中采用經遺傳算法選定好的參數,優化目標為損失函數最小化,采用Adam優化算法進行梯度計算,對網絡迭代更新不斷調整模型權重、降低預測誤差。

步驟S4:利用已訓練好的LSTM神經網絡模型對測試數據集進行預測,并評估模型誤差,具體包括:

采用訓練好的LSTM神經網絡模型對預測數據集進行交通流預測,將預測數據同實際數據進行誤差計算,還原預測數據進行輸出。采用均方誤差(MSE)和均方根誤差(RMSE)作為評估指標,在預測中,MSE和RMSE的值越小,代表預測精度越高。其中,

均方誤差:

均方根誤差:

式中,N是數據集個數,Yi是真實數據集,Yi*是預測數據集。

本發明的有效性可以通過下面的實驗來進一步說明,實驗中的參數不影響本發明的一般應用性。

實驗平臺:處理器為Intel i5-6500,內存為8.0GB;系統是Windows10(64位);程序語言版本為Python3.6.2;集成開發環境為Anaconda包中的spyder3.28版本。

實驗內容:

廣州某段高速公路8天的車道高清卡口檢測器的交通流數據作為時間序列預測樣本。高速公路作為封閉式通行系統,交通流信息真實性高。高速公路管理部門在對車輛進行進行控制和誘導時,需要提前預估短時間交通流數據,數據采集間隔分別為5分鐘,15分鐘,30分鐘,60分鐘四種,能夠有效保證管理部門數據預測需求。采用離差標準化方法進行歸一化,實驗以前7天數據為訓練樣本,后1天數據為測試樣本。

采用遺傳算法優化LSTM模型參數取值,設置種群中個體為50,迭代次數為100,變異概率pm為0.1,交叉概率pc為0.6,以60分鐘交通流數據為樣本進行分析。

參數搜索空間:隱藏層數,10-160,步長為10;時間窗步長,1-16,步長為1;訓練次數,10-320,步長為10;遺忘率,0.2-0.51,步長為0.01。編碼:根據參數性質,采用二進制編碼,個體中含有18個基因。[0101,0101,01010,01010]表示為某個體,則四段染色體分別表示為參數隱藏層數、時間窗步長、訓練次數、遺忘率的基因型。

圖2表示遺傳算法尋優迭代圖,圖3表示最優值迭代示意圖。在遺傳算法中,可以在搜索空間快速找到近似最優解。隨著迭代步數增加,其最優解的均方誤差在減少,實現搜索空間參數組合的最優解。經過遺傳算法的尋優,確定LSTM神經網絡的參數組合為:時間窗步長為13,隱藏層數為100,訓練次數為200,遺忘率為0.37。

實驗選取了在交通流預測中經典預測模型作為對照:支持向量機算法(SVM)、最近鄰算法(KNN)、BP神經網絡,同本發明的算法(GA-LSTM)進行預測性能對比。圖4是四種模型5分鐘的預測結果,圖5是四種模型15分鐘的預測結果,圖6是四種模型60分鐘的預測結果,圖7是四種模型60分鐘的預測結果。圖8是四種模型均方誤差示意圖,圖9是四種模型均方根誤差示意圖。

表1為現有算法交通流預測性能對比

上述分析說明,本發明提出的一種基于遺傳算法優化LSTM神經網絡的交通流預測方法,能夠獲得比現有方法更低的預測誤差,改進了交通流預測精度。本發明所提出的方法,在四個不同時間間隔數據中誤差均最低,證明了方法具有良好的適用性。具有一定的參考價值和實際經濟效益。實驗表明,本發明的方法尋優速度快,同傳統預測算法中的SVM、KNN和樸素BP神經網絡相比較,GA-LSTM對數據預測均方誤差和均方根誤差最小,模型減少了計算量,表現出更好的預測性能。

以上是本發明的實施例,但本發明并不局限于上述特定實施方式,凡依本發明技術方案作出的改變,所產生的功能作用未超出本方法技術方案的范圍時,其同樣應當視作本發明所公開的內容。

總結

以上是生活随笔為你收集整理的python交通流预测算法_基于遗传算法优化LSTM神经网络的交通流预测方法与流程...的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。