蔣春林,佘 磊
(四川省人工智能研究院,四川 宜賓 644000)
隨著全球定位系統、移動智能設備以及遙感通信裝置等各種定位技術的飛速發展,移動用戶的位置信息比以往任何時候都要更加豐富。通過用戶的時空行為數據預測人群流量對智慧城市建設有重要意義,進而為人類移動模式挖掘、交通事故預測以及城市規劃提供輔助決策支持[1]。然而,以下3個方面的問題導致傳統方法(如線性回歸)很難實現理想的預測性能:① 傳統的路邊檢測儀器包括視頻圖像處理技術、環形線圈檢測器和超聲波檢測器等,經常會受到環境的干擾,對外界因素較為敏感[2];② 現有檢測方法均需要較高的安裝成本和復雜的基礎設施[3],例如需要安裝在地下的環形線圈檢測器,經常會受到道路上重型車輛碾壓而損壞,增加了維修費用;③ 時空行為數據大多是多模態數據[4],包含時間、空間以及專題屬性等信息,這些數據蘊含著非常復雜的時空依賴關系及上下文語義,淺層模型一般很難捕獲深層次關系和語義。
云計算技術在諸多領域已經取得了巨大的成果并廣泛應用于日常生活中,尤其在智慧城市建設方面取得了顯著的成果,主要涉及智慧環境、智慧交通和智慧安防等領域,并且推進了一系列云平臺的成功發展,如公共信息數據服務平臺、智慧城市網絡傳輸平臺和基礎設施信息交流平臺等。云計算技術利用云中廣泛分布的計算資源對大量的數據信息進行收集、分析和存儲,在智慧城市建設中發揮關鍵支撐作用。利用云服務器豐富的虛擬資源和較高的計算速度,將復雜的計算任務卸載到云服務器上,是緩解本地基礎設施計算壓力并且提升系統性能的有效方法[5]。正因為云計算技術具備良好的計算能力,所以能夠滿足日益增長的數據分析需求,為用戶提供高效的數據管理方式。
傳統方法處理海量數據時通常使用啟發式算法,這類算法處理大規模數據時性能表現較差,并且需要額外的計算力來執行流量預測,不滿足智慧城市建設中延遲容忍的要求[6]。然而,當數據規模增加時,深度學習算法得益于其標記數據并提供解決問題的能力,會有較明顯的性能提升。針對智慧城市中應用程序通信量和計算量的增長,深度學習驅動的方法可以幫助減輕決策、動態資源分配和內容緩存的負擔。然而,如何為云環境下的人群流量預測定制深度學習技術仍然是一個挑戰。
為了解決上述問題,本文提出一種云計算環境下基于深度學習的人群流量預測框架(Deep Learning-based Crowd Flow Prediction Framework in Cloud Computing,DL-CFP)。DL-CFP集成一種新的雙區域相關機制捕捉空間相關性,鄰近單元和擴張單元分別負責相鄰區域和偏遠區域的空間相關性。然后,利用卷積長短期記憶(Convolutional Long Short-Term Memory,ConvLSTM) 模型捕獲時間相關性,并且設計了一種區域增強注意力機制,以更廣泛地捕獲數據的時空相關性。最后,將多層輸出串聯并經過卷積處理得到最終預測結果。
綜上所述,本文的主要貢獻包括:
① 提出了云計算環境下利用深度學習模型預測人群流量問題;
② 利用鄰近單元和擴張單元分別捕獲相鄰區域和偏遠區域的空間相關性;
③ 提出了區域增強注意力機制,使模型能夠捕獲更豐富的時空相關性,提高預測的質量;
④ 在2個真實出行數據集上通過大量對比實驗評估了DL-CFP模型,其時間性能和準確率均優于當前主流方法。
與傳統的人群流量預測方法不同,本文主要涉及云計算技術和深度學習2個方面,下文將分別介紹這2個方面的研究現狀。
隨著智能設備的升級與發展,云計算技術迅速拓展到更廣泛的領域。得益于廣泛部署的云計算平臺,用戶可以輕松實現數據的在線存儲和計算,并在分布式部署的基礎上進行快速的數據傳輸與分享。郎大鵬等[7]針對云計算技術暴露出的脆弱性,提出了一套可用于抵御樣本攻擊并實現防御檢測的攻防驗證體系。該體系通過系統內部自動生成樣本對抗算法,進而測試云應用的安全性,并且借助內置的評估模塊,用戶可以對自定義的攻擊手段進行自主評估和迭代驗證。陳勇等[8]針對云計算平臺中并行數據挖掘研究提出了一個大數據關聯規律挖掘分析模型,該方法為彌補傳統數據挖掘算法效率低下的缺陷,通過挖掘大規模數據集中的取值規律并加以計算,確保云平臺能夠準確完成相應的數據分析任務。Bilal等[9]提出了一種基于云計算的多視圖視頻捕獲方法,該方法通過收集多個參與者為同一場景捕獲的不同視圖,通過分配可用資源將視圖進行代碼轉換,最大限度地提高觀眾的整體滿意度,將其組合成多視圖視頻,觀眾可以從不同角度觀察同一場景,這一工作將云應用提升到一個新的沉浸式水平,用戶的體驗更好。
深度學習屬于機器學習的一個子集,由于具備處理海量數據的能力,許多研究者已經將其應用于時空預測任務中并取得了優異的研究成果。孫炯寧等[10]提出一種結合時空預測和深度學習的單目標視頻跟蹤模型,該模型以SiamMask深度學習網絡為基礎加入了興趣目標識別技術,在模型中融入時空目標跟蹤技術,實現了目標的快速識別與跟蹤,有效地解決了復雜環境中目標視頻跟蹤的穩定性問題。王港等[11]提出了一種基于深度學習網絡的遙感目標檢測及特征提取模型,該模型利用卷積神經網絡(Convolution Neural Network,CNN)的成像特性來研究目標遙感影像,結合卷積結構提取目標模型特征,提高了遙感影像執行目標檢測任務時的深層次網絡設計能力。Yao等[12]提出了一種新的時空動態網絡,該方法引入了門控機制來學習時空位置之間的動態相似性,并設計了周期性轉移注意力機制來處理時間周期較長的問題,該方法有效應對了時空預測問題中復雜的空間相關性和時間動態性問題。Zhou等[13]提出了一個基于深度神經網絡的車輛調度預測模型,該方法采用基于卷積和ConvLSTM單元的編碼解碼器框架來識別復雜特征,通過捕捉用戶需求對時空的影響來提升上下文感知交互能力,并且加入注意力模型來強化人群遷移規律存在的潛在影響,該研究有利于解決需求與服務不匹配問題,為制定有效的車輛分配計劃提供了保障。
云計算技術和深度學習已經取得了諸多研究成果,本文目的是找到一種在資源豐富的云環境下進行深度學習的方法,將云計算應用于任務卸載,并進一步解決時空預測任務中人群流量的預測問題,與已有工作相比,本文提出的框架延遲更低并且容錯率更高。
本文提出一個云計算環境下基于深度學習的人群流量預測框架,通過智能移動設備(如智能手機、便攜式電腦和多媒體播放器等)收集用戶的位置數據,主要包括行人數量、行進速度、行進方向、當前位置信息以及當前時間信息,聚合后發送到云端服務器,以便分析人群分布情況,模型總體框架如圖1所示。

圖1 模型總體框架Fig.1 Framework of the proposed model
提出一個3層的系統架構,從下到上分別是數據收集層、網絡傳輸層和云服務層。在數據收集層,通過智能設備群、互聯網設備群、工業設備群收集與位置有關的數據,包括速度、方向和位置。在網絡層傳輸層,使用5G技術實現設備群和云平臺之間數據的傳輸。在云服務層,提出了一種基于深度學習的人群流量預測算法,實現移動人群的實時流量預測。
定義1 區域單元。將城市C按照經緯度劃分為m×n的網格地圖,每一個網格被定義為一個區域單元,所有的區域單元可以用集合的形式進行定義,即:D={d1,1,…,di,j,…,dm,n},其中,di,j表示網格地圖中第i行、第j列的區域單元。
定義2 流量圖。給定一個區域單元D以及該區域單元的時空流量值(包括人群流入量和流出量),則區域單元D在時間戳t內的時空流量值被定義為一個流量圖,用矩陣形式表示為Xt∈Dm×n。

本文提出了DL-CFP模型,該模型使用卷積操作來捕獲不同區域間的空間相關性,并利用ConvLSTM模型計算時間相關性。DL-CFP的網絡結構如圖2所示。首先,將整個城市視為一個圖像,將時空圖分別輸入到鄰近單元和擴張單元,用于計算相鄰區域的空間相關性和偏遠區域的空間相關性。其次,將2個模塊的輸出通過ConvLSTM模型對序列中的時間相關性進行建模。然后,利用區域增強注意力機制描述空間相關性的重要程度。最后,將輸出串聯并通過一個1×1卷積層和tanh函數得到最終預測結果。

圖2 DL-CFP網絡結構Fig.2 Structure of the DL-CFP network
傳統基于ConvLSTM神經網絡的研究通常利用幾個局部卷積來捕獲相鄰區域之間的空間相關性,導致較遠距離區域之間的空間相關性容易被忽略。Lin等[14]的研究表明,區域分布相似的2個地區,即使它們在地理位置上不接近,也可以呈現出非常相似的時空數據模型。因此,本文提出一種雙區域相關的機制,該機制分別考慮相鄰區域的強相關性和偏遠區域的弱相關性,通過鄰近模塊捕獲附近地區的空間相關性以及擴張模塊捕獲偏遠地區的空間相關性,將2個模塊的輸出合并得到目標區域的空間表示。
2.3.1 鄰近單元
定義4 鄰近單元。通過多個局部卷積來捕獲相鄰區域的空間相關性,在相鄰區域相關性捕獲模塊中,鄰近單元包括3個3×3卷積層,用于捕獲附近7×7區域的空間相關性。3×3卷積層定義如下:
(1)

空間特征的相關性可以通過共享權重的周期核來提取,通過調整卷積模式來融合多尺度特征的語義,而不需要引入額外的參數,降低了計算復雜性,通過鄰近單元計算相鄰區域的空間相似性是一種新穎而高效的方法。
2.3.2 擴張單元
定義5 擴張單元。通過3×3的擴張卷積來學習偏遠區域之間的相互作用,旨在擴大視野感受,彌補固定大小的卷積核無法收集偏遠區域空間相關性的缺點,從不同尺度提取空間相關性。定義如下:
(2)

通過改變擴張因子的值,可以在不改變特征圖尺寸的同時擴大感受野。
圖3分別例舉了k取1,2,3的擴張卷積,更直觀地說明不同擴張因子所帶來的感受野。可以直觀地發現,通過改變擴張因子可以有效捕獲較遠區域的空間相關性,并且不會增加卷積層的數量。因此,考慮到每個城市區域的大小不同,可以使用含有不同擴張因子的擴張卷積處理不同距離區域之間的空間相關性。

圖3 不同擴張因子的擴張卷積Fig.3 Dilated convolutions with different factors
綜上所述,利用式(3)將鄰近模塊捕獲附近地區的空間相關性和擴張模塊捕獲偏遠地區的空間相關性動態合并:
(3)
式中,Wc表示鄰近單元的權重矩陣;Wf表示擴張單元的權重矩陣。
ConvLSTM網絡模型是一種循環神經網絡架構,本文將其用于處理高維的空間序列數據并對序列中的時間依賴性進行建模。
ConvLSTM模塊逐個相連,每個ConvLSTM模塊均有2個輸入與權重矩陣進行卷積計算(首個模塊除外),分別是當前模塊輸入xt以及上一個模塊輸出的隱藏狀態ht-1,其網絡結構如圖4所示。

圖4 ConvLSTM網絡結構Fig.4 Structure of the ConvLSTM network
ConvLSTM包括以下4個單元:記憶單元ct負責存儲信息,屬于長時記憶;輸入門it負責控制判斷在存儲單元是否包含新的信息;遺忘門ft負責過濾上一時刻的信息;輸出門ot控制輸出更新后的信息,上述單元計算如下:
it=σ(C/(wxi,xt)+C/(whi,ht-1)+bi),
(4)
ft=σ(C/(wxf,xt)+C/(whf,ht-1)+bf),
(5)
ot=σ(C/(wxo,xt)+C/(who,ht-1)+bo),
(6)
ct=ft⊙ct-1+it⊙tanh(C/(wxc,xt)+C/(whc,ht-1)+bc),
(7)
式中,wxi,wxf,wxo,wxc分別表示輸入門、遺忘門、輸出門和記憶單元的權重矩陣;bi,bf,bo,bc分別表示輸入門、遺忘門、輸出門和記憶單元對應的偏執向量;σ表示Sigmoid激活函數,將輸入的變量映射到[0, 1],作為控制各個門的開關;C/表示卷積操作;⊙表示哈達瑪乘積。
多頭注意力機制已廣泛應用于神經網絡模型,用于識別每個特征的屬性權重并篩選數據中關鍵的特征,過濾無效的輸入數據,以此突出數據的重要性。Vishnu等[15]的研究表明,當給定相同的查詢、鍵和值時,多頭注意力機制可以學習到不同的特征,彌補了單頭注意力機制在訓練時容易過度集中單個位置的缺陷。為了更廣泛地捕獲空間相關性,提出了一種區域增強注意力機制,用于描述不同時間步長幀之間的空間相關性,具體計算如下:
score(Xt,q)=tanh(Ws·Xt+Ws·q),
(8)
A(q,k,v)=softmax(score(Xt,q))=
(9)
MA(q,k,v)=Wm·[A1,A2, …,At],
(10)
式中,score(·)表示注意力得分函數;Ws表示學習參數;A(·)表示單頭注意力機制的輸出;q表示查詢向量;k表示鍵向量;v表示值向量;MA(·)表示多頭注意力機制的輸出;Wm表示學習參數。
將所學特征的注意力得分進行加權計算,捕獲不同時間步長之間的空間相關性,計算如下:
(11)

將注意力機制的輸出與卷積層輸出串聯,通過1×1的卷積層,形成自注意增強卷積,最終的輸出定義如下:
(12)

為了評估DL-CFP模型的性能,在2組真實數據集上進行對比實驗:
① 滴滴出行數據集:該數據集包含中國成都600多萬次出租車出行記錄,選用2016年7—10月的數據,將區域大小設置為20×20,時間間隔設置為20 min,數據集被劃分為6 624個時間片段。
② 紐約出行數據集:該數據集包含紐約市1 300多萬次出租車出行記錄,選用2015年5月—2016年9月的數據,將區域大小設置為30×40,時間間隔設置為20 min,數據集被劃分為8 784個時間片段。
本文的實驗環境描述如表1所示。

表1 實驗環境描述Tab.1 Description of experimental environments
為了保證實驗結果的公平并避免不確定性,本文使用不同數據集時間片最后20 d的數據作為測試數據,剩余的數據作為訓練數據。
本文使用均方根誤差(Root Mean Squared Error, RMSE)和平均絕對誤差(Mean Absolute Error,MAE)來評價DL-CFP模型收斂后的準確度情況,計算如下:
(13)
(14)

本文使用一種基于網格的準確率計算方法來衡量模型預測的準確性:將二維數據空間分為|M|個相等大小的網格,通過對比每個單元網格中的預測值和實際值可以得到準確率(ACC),計算如下:
(15)
為了驗證DL-CFP模型的各方面性能,本文引入以下基準方法進行對比實驗:
① CNN模型[16]是基于卷積層的深度學習模型,能夠學習局部空間相關性。
② RNN模型[17]是基于遞歸結構的深度學習模型,能夠捕獲時間依賴性。
③ ConvLSTM模型[18]是LSTM的變體,它在LSTM單元內包含卷積操作。ConvLSTM考慮了時空數據的空間與時間依賴性,廣泛應用于時空預測任務。
④ DeepST模型[19]是一種用于城市人群流量預測的深度學習模型,通過分析時間變化引起的人流變化趨勢對時間依賴性進行建模,并通過CNN來計算城市的空間相關性。
3.4.1 預測誤差對比
首先,本文比較了不同方法在滴滴數據集上的預測性能,其RMSE和MAE比較結果如圖5所示。

(a)不同方法的RMSE比較

(b)不同方法的MAE比較圖5 不同方法在滴滴數據集上預測誤差比較Fig.5 Prediction error comparison of different methods on Didi dataset
由圖5可以看出,傳統RNN方法在所有方法中性能最差,這是因為RNN僅關注每個區域的時間關系,而忽略了空間相關性。ConvLSTM模型是一種流行的時空數據特征學習模型,其性能較高于其他傳統模型,然而,它的表現不如本文所提DL-CFP模型,原因在于所提出的雙區域相關機制提高了預測的準確性。
為了測試所提出的區域增強注意力機制是否有效,將DL-CFP模型與DeepST模型進行比較。DeepST模型考慮到近距離和遠距離的空間相關性,但未引入注意力機制,實驗結果表明,DL-CFP模型的RMSE和MAE均低于DeepST模型,說明本文提出的注意力機制更好地捕獲了不同區域之間的空間相關性。DL-CFP模型的RMSE值比CNN值降低了約15.7%,MAE值降低了9.2%,說明同時使用卷積的情況下,綜合考慮相鄰區域和偏遠區域的DL-CFP模型的預測結果與實際結果擬合更好,更接近真實值。
進一步,比較了不同方法在紐約出行數據集上的預測性能,其RMSE和MAE比較結果如圖6所示。

(a)不同方法的RMSE比較

(b)不同方法的MAE比較圖6 不同方法在紐約出行數據集上預測誤差比較Fig.6 Prediction error comparison of different methods on NYC-taxi dataset
由圖6可以看出,傳統的深度學習模型在處理規模較大的紐約出行數據集時性能較差,ConvLSTM模型由于具備提取空間特征和時間特征的神經單元結構和神經網絡結構,其性能優于CNN和RNN模型,較CNN模型RMSE和MAE分別降低了16.3%和13.9%,較RNN模型RMSE和MAE分別降低了13.1%和6.7%。此外,當數據集規模較大時,DeepST模型可能將不確定的數據映射到高維空間,無法充分利用空間和周期特征進行流量預測,導致預測性能較差。在處理大規模數據集時,DL-CFP模型的性能均優于上述所有算法。相比于其他模型,本文所提DL-CFP模型不僅可以提取空間特征,還可以提取時間特征,因為該模型建立在一個混合深度神經網絡之上,包括了CNN和LSTM神經網絡,可以更有效地提取空間特征和時間特征。具體來說,DL-CFP模型利用一種雙區域相關的機制分別捕獲相鄰區域和偏遠區域的空間相關性,借助ConvLSTM模型對時間依賴性進行建模,特別地,由于區域增強注意力機制的存在,隨著預測范圍的增加,DL-CFP模型的預測性能與其他模型的性能相比,性能優勢越明顯。
3.4.2 準確率分析
為了研究訓練集規模變化對預測準確率的影響,本文通過改變訓練集大小來驗證不同算法的性能,訓練集的大小取值分別為20%,40%,60%,80%,100%,實驗結果如圖7和圖8所示。

圖7 滴滴數據集中不同訓練集規模下預測準確性比較Fig.7 Prediction accuracy comparison at different scales of training sets on Didi dataset

圖8 紐約數據集中不同訓練集規模下預測準確性比較Fig.8 Prediction accuracy comparison at different scales of training sets on NYC-taxi dataset
由圖7可以看出,隨著訓練集規模的增大,5種方法的準確率均有不同程度的提升,這表明訓練集規模越大,模型的預測性能越好,DL-CFP模型的準確率在訓練集規模20%~100%高于其他4種基準方法,平均準確率大約穩定在75.6%。DeepST模型的預測準確率在訓練集規模擴大過程中增長幅度較為緩慢,而DL-CFP模型增幅較高,因為DL-CFP模型可以更深層次挖掘不同區域之間的空間依賴性。CNN模型和RNN模型預測效果均不佳,原因在于模型對于空間特征的提取不完全。此外,ConvLSTM模型的預測準確率大約穩定在67.3%,這表明綜合考慮時間和空間對預測的影響是非常必要的,也證明本文所提方法的實際意義。
由圖8可以看出,5種方法在紐約數據集上的準確率均低于滴滴數據集上的準確率,這是由紐約城市場景的交通條件比成都城市場景更加復雜導致的,而本文所提DL-CFP模型的預測準確率仍明顯優于其他4種模型。CNN和RNN仍然是預測性能最差的2個模型,這是因為流量預測場景具有很強的時空相關性,而僅考慮單一元素的深度神經網絡并不適用于變化較大的流量預測。ConvLSTM模型比DeepST模型準確率更高,因為ConvLSTM模型可以更好地學習到序列中的時間相關性。人群流量的變化不僅取決于給定區域流量隨時間的演變,還取決于其他區域流量隨時間的演變。因此,綜合考慮了遠近區域的空間相關性的DL-CFP模型受數據集規模變化的影響較小,在紐約數據集上平均預測準確率達到73.6%,優于其他主流方法。
本文提出了一種云計算環境下用于人群流量預測的DL-CFP模型,DL-CFP模型綜合考慮了空間相關性和時間依賴性,分別利用鄰近單元和擴張單元捕獲相鄰區域以及偏遠區域的空間相關性,并且利用ConvLSTM模型對時間依賴性進行建模。為了有效地捕獲復雜的空間相關性,設計了一種區域增強注意力機制。實驗結果表明,DL-CFP模型在預測性能和預測準確率上均優于其他基準方法。未來的工作包括:如何將DL-CFP模型擴展到更多的時空預測任務中以及如何利用特征豐富的異構地圖信息解決數據稀缺的問題。