本發明涉及道路車流量分析預測的,尤其是涉及基于時空圖注意力神經網絡的交通流量預測方法。
背景技術:
1、作為解決交通問題的有效手段之一,智能交通系統越來越受到人們的推崇。智能交通系統(its)是一種先進的交通管理控制系統,它旨在結合數字通信與計算機網絡等先進的信息技術來對交通系統提供與原始的運輸方式和交通管理不同的創新型服務,這能夠使得用戶可以更好地了解交通的情況,并且能夠使用更安全、更協調、更智能的交通運輸網絡。在智能交通系統中,交通流量預測占有顯著的位置,交通流量預測是智能交通系統實現的基礎和關鍵所在,科學的管理方法必須有數據的支持,只有在歷史交通數據上進行高精度的交通流量預測,才能向出行者提供更為有效的道路交通信息,為動態交通規劃提供數據支撐,從而達到緩解道路交通擁堵和方便人們出行的目的。因此,交通流量預測就顯得十分必要,預測結果可以指導交管部門對道路流量進行科學的管理,從而提高道路資源的利用率。
2、然而,目前的交通流量預測的方法還存在很多的不足。一方面,真實世界中的道路網絡具有復雜的空間結構,道路交通流是非歐幾里得的和定向的;另一方面,道路交通流隨時間的變化是非平穩的,具有很強的時間依賴性,比如早晚高峰、節假日或者無法預知的交通事故都會對道路交通速度產生影響。
3、現有的預測方法采用圖神經網絡(gnns),但是現有技術gnns所采用的圖結構是預定義的,僅代表路網的物理結構。因此,它不能保證是交通流量之間依賴性的最佳描述。兩個相距較遠但趨勢相似的交通流量之間的關系對交通預測也很重要,而這種依賴性無法在基于道路拓撲的預定義圖中捕獲,會影響交通流量預測的準確性。
技術實現思路
1、本發明的目的就是為了克服預定義圖結構導致的預測精度不足的缺陷而提供的基于時空圖注意力神經網絡的交通流量預測方法。
2、本發明的目的可以通過以下技術方案來實現:
3、一種基于時空圖注意力神經網絡的交通流量預測方法,包括以下步驟:
4、獲取交通流量數據,將交通流量數據輸入訓練好的交通流量預測模型中,得到預測結果,其中,交通流量預測模型包括多個編碼器和一個解碼器,交通流量數據經過嵌入單元后進入第一個編碼器,每個編碼器的輸入為上一個編碼器的輸出和初始圖,第一個編碼器的輸入為經過嵌入單元后的交通流量數據和初始圖,編碼器包括空間注意模塊和時間注意模塊,交通流量預測模型的訓練過程具體為:
5、步驟s1、獲取歷史交通流量數據x和初始圖g,歷史交通流量數據x經過嵌入單元后進入第一個編碼器;對于任意一個編碼器,根據該編碼器的輸入生成隱藏狀態h=[ht-p+1,...ht],通過空間注意模塊中的圖注意機制輸入,在數據空間域中提取特征,計算初始圖中節點與該編碼器的輸入之間的關系r,然后執行s2;
6、步驟s2、對初始圖中節點與編碼器的輸入之間的關系r進行卷積,得到編碼器的節點i屬性的輸出通道,1個編碼器對應多個通道;
7、步驟s3、基于s2的輸出通道,通過學習對偶節點表示的度量函數推導初始圖的兩個節點之間的學習關系a[i,j];
8、步驟s4、通過空間注意模塊的多頭注意機制,將包括該編碼器的前k個編碼器的空間注意模塊的結果進行平均,輸出該編碼器的空間注意力結果的平均值xg,其中第k個編碼器的空間注意模塊的結果為:a(k)w(k)h(t),其中a(k)為第k個編碼器的空間注意模塊的s3中求出的節點之間關系,w(k)為第k個編碼器的空間可訓練的參數,h(t)為第k個編碼器的生成的隱藏狀態;
9、步驟s5、基于嵌入單元xe,添加殘差連接xr,結合平均值xg得到空間注意模塊輸出的最終特征xs;
10、步驟s6、在同一個編碼器中,將經過嵌入單元的歷史交通流量數據作為輸入,確定數據的各個特征的查詢矩陣q、鍵矩陣k和值矩陣v,通過時間自注意力機制計算經過嵌入單元的歷史交通流量數據的各個特征之間的權重;
11、步驟s7、根據各個特征之間的權重計算各個特征的時間注意力特征h,并通過時間注意模塊的多頭注意機制,將包括該編碼器的前k個編碼器的時間注意力特征進行拼接;
12、步驟s8、將拼接后的結果輸入前饋網絡,前饋網絡輸出時間注意力結果xa;
13、步驟s9、基于嵌入單元xe,添加殘差連接xr,結合時間注意力結果xa得到時間注意模塊輸出的最終特征xt,融合s5和s9的空間注意模塊輸出的最終特征xs和時間注意模塊輸出的最終特征xt,融合得到的特征作為下一個編碼器的輸入,最后一個編碼器的輸出的融合特征為hn;
14、步驟s10、將最后一個編碼器的輸出的融合特征hn,以及經過嵌入單元的歷史時間序列x和未來時間序列y輸入解碼器中,計算預測時間步ti與歷史時間步tj之間的相似性;
15、步驟s11、對s10的相似性進行激活,得到相似系數;
16、步驟s12、對相似系數進行歸一化;
17、步驟s13、基于歸一化的相似系數進行加權組合,得到預測時間步長為ti的預測結果;
18、步驟s14、基于預測結果的線形變換得到未來的交通流量預測值;
19、步驟s15、計算損失函數,判斷損失函數是否符合要求或迭代的次數達到最大值,若是則結束訓練,得到訓練完成的交通流量預測模型,反之返回s1。
20、進一步地,兩個節點之間的學習關系為:
21、
22、其中,mi是節點i的輸出信號,表示度量函數,a[i,j]表示節點i和節點j之間的學習關系。
23、進一步地,空間注意模塊輸出的最終特征xs為:
24、xs=xg×sigmoid(xe)+xr
25、其中,xg為空間注意力結果的平均值,xe為嵌入單元,xr為殘差連接。
26、進一步地,殘差連接為:
27、
28、其中,f為特征維數。
29、進一步地,時間注意模塊輸出的最終特征xt為
30、xt=xa×sigmoid(xe)+xr
31、其中,xa為時間注意力結果,xe為嵌入單元,xr為殘差連接。
32、進一步地,時間注意力結果為:
33、xa=ffn(multihead(qi,ki,vi))
34、其中,ffn表示前饋網絡,multihead表示拼接后的結果。
35、進一步地,預測時間步長為tj的預測結果為:
36、
37、其中,σ為激活函數,αi,j為歸一化注意系數,eti為相似系數。
38、進一步地,未來的交通流量預測值為:
39、y′=wfo+b
40、其中,w為全連接層的參數矩陣,b為偏置系數。
41、進一步地,損失函數為l2損失函數。
42、進一步地,損失函數為:
43、l(y′,wθ)=||y′(xt-p+1,…,xt,wθ)-yt+1||
44、其中,wθ為所有可訓練的參數,y′為未來的交通流量預測值,yt+1為真實值,xt-p+1,...,xt為歷史交通流量數據。
45、與現有技術相比,本發明具有以下有益效果:
46、本發明從交通流量數據中的計算優化原有的圖結構,重新挖掘其中隱藏的空間特征,同時結合圖注意力機制進一步獲取不同時間長度的時間特征,采用了基于注意力因子分解機模型的嵌入單元增強了特征表達,在提高預測精度的同時,有效提高了模型的泛化性能,為智能交通系統進行協調管理提供數據依托。