袁瑤瑤,康 雁,李 浩,牛瑞丞,梁文韜,李晉源
云南大學 軟件學院,昆明 650500
近年來,隨著共享經(jīng)濟和智慧城市的發(fā)展,一系列新型時序城市數(shù)據(jù)應(yīng)運產(chǎn)生,如出租車軌跡數(shù)據(jù)、共享單車軌跡、人群流量行為等[1]。利用車載GPS實時對當前車輛采集的軌跡數(shù)據(jù)不僅記錄當前車輛的經(jīng)緯度、時間、速度、方向以及載客信息[2],同時也反映了城市人群流量的特點。如何從歷史軌跡數(shù)據(jù)中獲取有價值的信息,已成為海內(nèi)外學者關(guān)注的熱點[3]。
現(xiàn)實生活中,對出租車進行軌跡數(shù)據(jù)實時采集時,會因為車載GPS的暫時故障、地區(qū)偏遠、區(qū)域新建、施工或者人為的處理錯誤使得收集的區(qū)域交通流量數(shù)據(jù)是不完整的。數(shù)據(jù)缺失通常包括三種,完全隨機缺失、隨機缺失和非隨機缺失。完全隨機缺失指的是缺失數(shù)據(jù)是隨機發(fā)生的,與自身和其他變量之間沒有關(guān)系;隨機缺失指缺失數(shù)據(jù)與數(shù)據(jù)集中無缺失數(shù)據(jù)的取值有關(guān);非隨機缺失指缺失數(shù)據(jù)同時與數(shù)據(jù)集中無缺失數(shù)據(jù)和自身的取值有關(guān),由于交通流量數(shù)據(jù)變化之間是相互影響的,缺失流量數(shù)據(jù)受到其他無缺失流量數(shù)據(jù)的影響,所以交通流量數(shù)據(jù)的缺失屬于隨機缺失,包括隨機點的流量數(shù)據(jù)缺失(圖1(a)、(b))和集中區(qū)域的流量數(shù)據(jù)缺失,論文主要討論集中區(qū)域的中心流量數(shù)據(jù)缺失(圖1(c))和邊緣流量數(shù)據(jù)缺失(圖1(d))[4-8],灰色方塊表示缺失數(shù)據(jù)。
圖1 交通流量數(shù)據(jù)缺失方式
交通流量缺失數(shù)據(jù)的補充,對實現(xiàn)智能交通、城市規(guī)劃、環(huán)境和能源的管理有重要意義。最近,GAN模型在生產(chǎn)高質(zhì)量的圖像上顯示出強大的生產(chǎn)能力[9-10],基于該思想,本文將交通流量數(shù)據(jù)的缺失補全看成數(shù)據(jù)生成的問題,提出基于時空特征的ST-DCGAN缺失交通流量數(shù)據(jù)補全,本模型有以下創(chuàng)新點:
(1)ST-DCGAN是融合了交通流量時間相關(guān)性和空間相關(guān)性的DCGAN網(wǎng)絡(luò),將歷史數(shù)據(jù)放到多個通道中,有效地融合DCGAN的補全特性和交通流量的時空相關(guān)性。
(2)模型中引入了基于交通流量的補全損失和判別損失作為新的目標函數(shù),同時考慮補全流量圖片的局部相似和全局相似。
(3)引入Mask二值掩碼,模擬任意區(qū)域流量缺失情況,生成缺失流量數(shù)據(jù)時只需設(shè)置相應(yīng)的掩碼區(qū)域范圍,不需重復(fù)訓練網(wǎng)絡(luò),最終達到流量補全,提高了補全精度,擴展了GAN的應(yīng)用。
時序數(shù)據(jù)缺失是數(shù)據(jù)處理普遍存在的問題。它對實驗效果質(zhì)量和結(jié)果穩(wěn)定性的影響較大,是進行數(shù)據(jù)挖掘之前所要考慮的首要問題。目前國內(nèi)外時序缺失數(shù)據(jù)處理的方法包括有補全法和刪除法,由于刪除法可能刪除有價值的信息,導致實驗結(jié)果的誤差[11-13],所以補全法日益受到重視。對于時序交通缺失流量數(shù)據(jù)的補全方法主要包括基于統(tǒng)計學方法、基于機器學習方法。
基于統(tǒng)計學方法的數(shù)據(jù)補全主要包括均值補全法、最大值補全法、期望值最大法,以及指數(shù)平滑法等[5,14]。文獻[5]總結(jié)常用的交通流量修補方法以及優(yōu)缺點,為交通流量數(shù)據(jù)缺失補全提供理論依據(jù)。文獻[14]對交通流量缺失數(shù)據(jù)處理方法比較分析,并利用美國加州I-880高速公路交通流數(shù)據(jù)的實驗結(jié)果驗證,得到基于指數(shù)平滑法和相鄰車道數(shù)據(jù)加權(quán)平均法的缺失值修復(fù)結(jié)果最優(yōu)。
隨著計算機科學技術(shù)和人工智能的發(fā)展,利用機器學習預(yù)測對時序交通流量缺失數(shù)據(jù)補全方法逐漸被應(yīng)用,文獻[15]提出基于最小二乘支持向量機的交通流時間序列數(shù)據(jù)修補模型,并將其與RBF神經(jīng)網(wǎng)絡(luò)模型和非線性回歸模型比較。文獻[16]提出了一種基于聚類分析的最鄰近補全算法(GMKNN)對缺失流量數(shù)據(jù)補全。文獻[17]結(jié)合了最小二乘法的局部修補模型和最大熵的交通狀態(tài)概率分布估計模型提出一種自適應(yīng)的權(quán)重兩階段缺失交通流量數(shù)據(jù)修補組合模型,實驗結(jié)果表明該方法能夠減少隨機因素對交通流量變化的干擾。目前大多數(shù)據(jù)補全方法達到了對缺失流量補全的效果,但在補全缺失數(shù)據(jù)時忽略了交通流量變化的時空特征,特別是當流量數(shù)據(jù)連續(xù)缺失或者路況復(fù)雜時,很難獲得準確的插值填充缺失的流量數(shù)據(jù),算法的補全效果很差[18]。
近年來,生成對抗網(wǎng)絡(luò)被廣泛應(yīng)用在缺失人臉圖片的補全,并取得了很好的效果[19-22],文獻[19]提出基于深層生成網(wǎng)絡(luò)的語義修復(fù)模型,并在CelebA、The SVHN和Stanford Cars dataset數(shù)據(jù)集上得到了很好的驗證。文獻[20]提出一種使用深度生成模型有效完成面部補全算法,模型通過定義一個重建損失,兩個對抗損失和語義解析損失確保補全面部缺失的真實性。文獻[21]提出了基于GAN的多上下文生成對抗網(wǎng)絡(luò),使網(wǎng)絡(luò)自適應(yīng)地學習不同層次損壞圖像的特點并從多角度補全缺失圖片區(qū)域。文獻[22]提出基于上下文編碼器GAN網(wǎng)絡(luò)直接對圖片缺失區(qū)域進行生成,實驗結(jié)果表明該網(wǎng)絡(luò)能很好地預(yù)測圖片缺失信息。目前基于GAN網(wǎng)絡(luò)的缺失時序數(shù)據(jù)補全逐漸成為下一個研究熱點,如文獻[23]提出利用GAN網(wǎng)絡(luò)對含有大量缺失值的多變量時間序列進行缺失值補全。文獻[24]提出基于生成對抗網(wǎng)絡(luò)的路網(wǎng)交通流量數(shù)據(jù)補全方法,利用GAN網(wǎng)絡(luò)分析實現(xiàn)對路網(wǎng)二維信息圖缺失部分的補全。
相比較傳統(tǒng)的交通流量缺失數(shù)據(jù)補全模型,由于交通流量時空特征,即某時刻某區(qū)域交通流量的變化受其他時刻流量變化以及該區(qū)域周圍路段流量變化的影響[25],本文使用ST-DCGAN網(wǎng)絡(luò)模型結(jié)合交通流量的時空特性和DCGAN網(wǎng)絡(luò)。
GAN模型的思想來自于博弈論[26],模型定義判別器和生成器,通過最大最小博弈過程優(yōu)化網(wǎng)絡(luò)的參數(shù),其中判別器希望學習真實樣本的分布,對生成器輸出的樣本判斷為假;生成器希望生成的樣本盡可能與真實樣本相似,使得判別器判斷不出來,優(yōu)化過程公式如下:
公式(1)表示優(yōu)化判別器,公式(2)表示優(yōu)化生成器,其中Pdata是真實樣本的概率分布,Pz是生成器G(z)從輸入隨機概率分布的采樣,z為潛在空間的隨機編碼分布[27-28]。
ST-DCGAN模型中DCGAN網(wǎng)絡(luò)結(jié)合GAN和CNN,將生成器和判別器用兩個改變結(jié)構(gòu)的卷積神經(jīng)網(wǎng)絡(luò)代替,利用網(wǎng)絡(luò)對缺失流量數(shù)據(jù)補全時,將流量圖片看作是從一個高維概率分布中的采樣,當生成器從隨機噪聲分布中選擇的概率分布不同時,就會產(chǎn)生不同的流量圖像,判別器通過學習真實流量圖片的特征從而對生成器生成的圖片進行判斷,目的是生成的假圖片盡可能地接近真實的流量圖片。訓練好的ST-DCGAN模型可以學習流量圖片的整個數(shù)據(jù)集的分布特征以及流量數(shù)據(jù)之間的隱式關(guān)系[29-30],ST-DCGAN網(wǎng)絡(luò)結(jié)構(gòu)如圖2所示。
為了能夠抽取交通流量時間維度上的相關(guān)性,本文將輸入流量圖片的通道數(shù)設(shè)置為3,代表某時刻T與相鄰時刻T-1和T+1的流量圖片,設(shè)置不同的輸入通道數(shù),實驗結(jié)果表明當輸入的流量通道為3時,能更好地抽取流量圖片時間維度上的相關(guān)性,其中判別網(wǎng)絡(luò)(D)和生成網(wǎng)絡(luò)(G)訓練過程的參數(shù)變化如表1所示。
圖2 ST-DCGAN網(wǎng)絡(luò)結(jié)構(gòu)圖
表1 判別網(wǎng)絡(luò)和生成網(wǎng)絡(luò)訓練過程參數(shù)變化
實驗引入Mask二值掩碼模擬交通流量數(shù)據(jù)的缺失,其中Mask掩碼是與輸入圖片大小相同的0,1矩陣。為了找到最佳的z分布使生成器補全的流量圖片更加接近真實圖片,ST-DCGAN網(wǎng)絡(luò)要確保補全圖片局部真實性以及圖片全局的一致性。定義ST-DCGAN目標函數(shù)由兩部分組成[19-22]。
(1)補全損失:第一部分盡量使得真實流量圖片X未缺失流量與生成器輸出的補全圖片對應(yīng)部分流量數(shù)據(jù)相近,此時認為生成器對圖片缺失部分的補全效果很好,定義補全損失Lcorrelation()z如下:
(2)判別損失:為了使得補全的圖片與真實的圖片整體相似,判別器需要對生成器輸出的補全圖片進行判定,將生成器的輸出作為判別器的輸入,定義公式判別損失Ldiscriminate()z如下:
其中,D(G(z) )是判別器對生成器補全的圖片進行判斷,生成器希望生成的補全圖片盡量真實,從而使得判別器判斷錯誤。
其中,m是控制補全損失和判別損失的比例函數(shù),實驗的目的是通過最小化Lloss()z,得到最佳的補全缺失分布z,公式如下:
此時網(wǎng)絡(luò)生成的補全圖像Xcomplete表達Xcomplete公式如下:
基于ST-DCGAN的時序交通流量數(shù)據(jù)補全算法流程如下。
算法輸入:區(qū)域T-1時刻、T時刻和T+1時刻大小為32×32×3的流量圖。
算法輸出:缺失區(qū)域補全流量均方根誤差(RMSE)。
步驟1區(qū)域流量圖像化。
將TaxiBJ數(shù)據(jù)集進行圖像化處理生成32×32×3的流量圖像,將GPS獲取的城市人流量數(shù)據(jù)映射到流量圖像網(wǎng)格中,網(wǎng)格中的像素點對應(yīng)某區(qū)域某時刻的實際流量數(shù)據(jù)。
步驟2構(gòu)造ST-DCGAN網(wǎng)絡(luò)算法結(jié)構(gòu)。
南方鄉(xiāng)土建筑營造技藝思考中依據(jù)建筑“原”形,劃分營造之“圈”,梳理營造之“流”,解析營造之“變”是對于整體性研究的總體框架。對鄉(xiāng)土營造技藝研究來說,回答關(guān)于源流變遷的問題有助于理清營造的發(fā)展脈絡(luò)、科學劃分區(qū)系、積極傳承工藝;對鄉(xiāng)土建筑的保護來講,辨析譜系源流、選取合理的修復(fù)保護材料、工藝等有理論指導及參考作用;對建筑史研究而言,深入研究南方鄉(xiāng)土建筑的整體技藝有助于定義南方地區(qū)營造在宏大背景下的地位與作用,完善對其營造技藝的認知。
訓練判別器,學習真實流量數(shù)據(jù)概率分布pdata,訓練生成器從輸入隨機噪聲分布[0,1]中生成潛在空間概率分布pz,使得pz盡可能地接近pdata。在tensorflow環(huán)境下運行ST-DCGAN,利用卷積操作和反卷積操作獲取交通流量數(shù)據(jù)的時空特征。
步驟3定義Mask二值掩碼。
定義三種不同類型的Mask掩碼,與真實流量圖進行矩陣運算,模擬交通流量的數(shù)據(jù)缺失。
步驟4數(shù)據(jù)補全。
利用步驟3處理好的缺失數(shù)據(jù)流量圖作為步驟2構(gòu)造的ST-DCGNA網(wǎng)絡(luò)輸入,最終找到使生成器補全的流量圖片更加接近真實流量圖片的概率分布。
步驟5結(jié)束。
算法終止。
TaxiBJ開源數(shù)據(jù)集:利用北京TaxiBJ開源數(shù)據(jù)集,該數(shù)據(jù)集包括34 000多輛出租車的軌跡數(shù)據(jù),每半個小時統(tǒng)計一次流量的變化情況,一共有22 459張可以用的時間間隔[25],實驗過程中數(shù)據(jù)描述如表2(實驗數(shù)據(jù)下載網(wǎng)址:https://github.com/lucktroy/DeepST/tree/master/data/TaxiBJ)。
表2 實驗數(shù)據(jù)描述表
實驗細節(jié):實驗過程中,利用離差標準化將流量數(shù)據(jù)映射到[0,1],目的是可以最大程度地降低數(shù)據(jù)值對結(jié)果的影響;設(shè)置迭代次數(shù)為100次,學習率為0.000 2,采用Adam作為優(yōu)化函數(shù);判別器利用Sigmoid作為最后輸出的激活函數(shù),輸出值在[0,1]之間,目的是對當前的輸入進行真假圖片的判斷;生成器利用tanh作為最后輸出的激活函數(shù),保持所有的取值都在[?1,1]區(qū)間內(nèi)。
模型評估函數(shù):實驗通過均方根誤差(RMSE)來測試模型,公式定義如下:
其中xi表示一個batch中第i個實際的交通流量圖,x?i表示神經(jīng)網(wǎng)絡(luò)的預(yù)測值,n是測試模型的總次數(shù)。
實驗用熱力圖表示北京開源TaxiBJ數(shù)據(jù)集的分布情況,在熱力圖中黃色越亮表明某時刻該區(qū)域流量數(shù)據(jù)越大。流量圖片的隨機缺失率表示某時刻缺失流量數(shù)據(jù)的概率,實驗設(shè)置流量圖片的隨機缺失率由小到大分別為0.1、0.2和0.4,實驗分別與基于統(tǒng)計學方法、機器學習方法和GAN網(wǎng)絡(luò)方法對比。
(1)與基于統(tǒng)計學方法和機器學習方法對比
其中圖3表示基于統(tǒng)計學方法的最大值補全法和平均值補全法的補全流量圖,其中Input、Mask和Complete分別表示真實的流量圖片,模擬缺失的流量圖片和不同方法補全的流量圖片。
從圖3補全流量圖可以看出,隨著流量數(shù)據(jù)缺失率的增加,最大值補全法和平均值補全法補全圖片與真實流量圖片相差很大,這是因為現(xiàn)實生活中城市區(qū)域是由不同的功能模塊組成的,比如辦公區(qū)、休閑娛樂區(qū)、學校區(qū)域、住宅區(qū)域等,不同區(qū)域在不同的時間段的流量差別很大且相互影響,比如在辦公區(qū)域的人流量變化主要集中在工作日的上班早高峰以及下班晚高峰,而此時休閑娛樂區(qū)的人流量相對較少,到了夜晚,休閑娛樂區(qū)域的受到辦公區(qū)、學校區(qū)域和住宅區(qū)域人流量的涌入流量增加,如果此時利用區(qū)域最大流量數(shù)據(jù)或者平均流量數(shù)據(jù)補全某區(qū)域缺失流量,會因為不能抽取不同時刻交通流量變化特點和遠近區(qū)域流量相關(guān)性,導致補全圖片與真實流量圖片相差很大。
實驗同時對比不同缺失率下機器學習方法Linear Regression(LR)、Random Forest Regressor(RFR)、Ada-Boost Regressor回歸(ABR)、線性SVR回歸(LSVR)、嶺回歸(Ridge)、Gradient Boosting Regressor回歸(GBR)、KNN方法以及文獻[8]對時序缺失數(shù)據(jù)補全的粗粒度插值方法(CG-ST-2SMR)對缺失流量數(shù)據(jù)的補全RMSE的變化,實驗結(jié)果如表3及圖4。
從表3的RMSE變化可以看出,ST-DCGAN網(wǎng)絡(luò)優(yōu)于其他對比方法,并且在缺失率0.1時,RMSE為0.019 9,網(wǎng)絡(luò)補全效果最好。其次是Gradient Boosting Regressor方法,Boosting是機器學習中典型的將若干個弱學習器提升為強學習器的集成學習方法,Gradient Boosting Regressor在使用Boosting的基礎(chǔ)上讓損失函數(shù)在其梯度下降方向上下降,從而不斷改進模型[31]。
(2)與GAN網(wǎng)絡(luò)補全方法對比
利用GAN網(wǎng)絡(luò)的生成思想對時序缺失數(shù)據(jù)補全逐漸受到學者們的關(guān)注,實驗對比近年來基于GAN網(wǎng)絡(luò)對時序缺失數(shù)據(jù)的補全方法[23-24],在不同缺失率下GAN網(wǎng)絡(luò)和ST-DCGAN網(wǎng)絡(luò)對缺失流量補全效果如圖5。
圖3 (a) 缺失率0.1時最大值補全流量圖
圖3 (b) 缺失率0.1時平均值補全流量圖
圖3 (c) 缺失率0.2時最大值補全流量圖
圖3 (d) 缺失率0.2時平均值補全流量圖
圖3 (e) 缺失率0.4時最大值補全流量圖
圖3 (f) 缺失率0.4時平均值補全流量圖
表3 不同缺失率RMSE變化表
圖4 不同缺失率RMSE變化圖
圖5 (a) 缺失率0.1GAN網(wǎng)絡(luò)和ST-DCGAN補全流量圖
圖5 (b) 缺失率0.2GAN網(wǎng)絡(luò)和ST-DCGAN補全流量圖
圖5 (c) 缺失率0.4GAN網(wǎng)絡(luò)和ST-DCGAN補全流量圖
從補全結(jié)果可以看出,隨著流量數(shù)據(jù)缺失率的增加,GAN網(wǎng)絡(luò)和ST-DCGAN網(wǎng)絡(luò)補全效果逐漸變差,GAN網(wǎng)絡(luò)在缺失率為0.1時,補全圖片與真實流量圖片最相似,缺失率為0.4時,GAN網(wǎng)絡(luò)補全效果最差。相較于GAN網(wǎng)絡(luò),雖然流量圖片缺失率在增加,ST-DCGAN網(wǎng)絡(luò)生成的補全圖片與真實流量圖片仍有很大的相似度。這是因為利用GAN網(wǎng)絡(luò)和ST-DCGAN網(wǎng)絡(luò)對缺失流量數(shù)據(jù)補全時需要學習大量真實流量數(shù)據(jù),隨著流量圖片缺失率的增加,可供GAN網(wǎng)絡(luò)和ST-DCGAN網(wǎng)絡(luò)學習的存在流量數(shù)據(jù)變小。
從表4不同缺失率下GAN網(wǎng)絡(luò)和ST-DCGAN網(wǎng)絡(luò)RMSE變化可以看出,ST-DCGAN網(wǎng)絡(luò)優(yōu)于GAN網(wǎng)絡(luò),其中0.1缺失率RMSE超越GAN網(wǎng)絡(luò)50.49%,0.2缺失率RMSE超越GAN網(wǎng)絡(luò)48.69%,0.4缺失率RMSE超越GAN網(wǎng)絡(luò)52.99%。其原因是ST-DCGAN網(wǎng)絡(luò)在GAN網(wǎng)絡(luò)的基礎(chǔ)上添加了深度卷積網(wǎng)絡(luò)結(jié)構(gòu)并改變GAN網(wǎng)絡(luò)的目標函數(shù),使得網(wǎng)絡(luò)能更好地學習真實流量數(shù)據(jù)樣本集的時空特征分布。
表4 不同缺失率GAN和ST-DCGAN網(wǎng)絡(luò)RMSE變化表
除了隨機點的流量缺失,現(xiàn)實生活中由于地區(qū)偏遠、區(qū)域新建、施工可能造成集中區(qū)域流量缺失,實驗分別對GAN網(wǎng)絡(luò)和ST-DCGAN網(wǎng)絡(luò)在集中邊緣區(qū)域和中心區(qū)域流量缺失補全效果進行探討,RMSE變化如表5、圖6所示。
表5 集中區(qū)域流量缺失RMSE變化表
圖6 GAN網(wǎng)絡(luò)和ST-DCGAN網(wǎng)絡(luò)集中區(qū)域流量缺失RMSE
從表5 RMSE變化可以看出,ST-DCGAN網(wǎng)絡(luò)補全效果優(yōu)于GAN網(wǎng)絡(luò),邊緣缺失補全時超越GAN網(wǎng)絡(luò)56%,中心缺失補全時超越GAN網(wǎng)絡(luò)54%。其中GAN網(wǎng)絡(luò)和ST-DCGAN網(wǎng)絡(luò)集中區(qū)域缺失流量補全時中心區(qū)域缺失補全優(yōu)于邊緣區(qū)域,其原因是網(wǎng)絡(luò)對中心區(qū)域流量缺失補全時,可學習的四周存在流量數(shù)據(jù)相較于邊緣區(qū)域更加充足,網(wǎng)絡(luò)可更好地學習周圍存在流量數(shù)據(jù)分布特征從而對缺失流量數(shù)據(jù)進行補全。
本文針對基于統(tǒng)計學補全法、基于機器學習補全法以及傳統(tǒng)的GAN網(wǎng)絡(luò)交通缺失流量數(shù)據(jù)補全的不足,提出一種基于ST-DCGAN的時序交通流量數(shù)據(jù)補全方法。該方法結(jié)合DCGAN網(wǎng)絡(luò)和交通流量的時空特性,能更好地抽取交通流量數(shù)據(jù)在時間維度上和遠近區(qū)域上的相關(guān)性,通過對比實驗可以看出本文的方法優(yōu)于所比較的模型,但仍有很大的提升空間,如何更好地抽取交通流量數(shù)據(jù)時間維度上的相關(guān)性是下一步工作的重點。