徐東偉,彭航,商學(xué)天,魏臣臣,楊艷芳
(1.浙江工業(yè)大學(xué),網(wǎng)絡(luò)空間安全研究院,杭州 310023;2.交通運(yùn)輸部科學(xué)研究院,北京 100029)
近年來,人工智能、通信技術(shù)、無人駕駛的進(jìn)步促進(jìn)了智能交通系統(tǒng)(Intelligent Transportation Systems,ITS)的發(fā)展,采集到的交通數(shù)據(jù)量越來越龐大和多樣[1]。但在實(shí)際應(yīng)用中,這些設(shè)備會(huì)由于突發(fā)天氣、設(shè)備電路故障、網(wǎng)絡(luò)通信中斷等問題產(chǎn)生數(shù)據(jù)異?;蛉笔А?/p>
目前,已經(jīng)提出許多方法來估計(jì)數(shù)據(jù)缺失值,路網(wǎng)數(shù)據(jù)修復(fù)的方法大致可以分為3 類:基于預(yù)測、基于插值和基于統(tǒng)計(jì)學(xué)習(xí)的路網(wǎng)數(shù)據(jù)修復(fù)方法[2]?;陬A(yù)測的路網(wǎng)數(shù)據(jù)修復(fù)方法是根據(jù)歷史數(shù)據(jù)構(gòu)建預(yù)測模型,將預(yù)測值作為修復(fù)的路網(wǎng)數(shù)據(jù),典型方法包括支持向量回歸、貝葉斯網(wǎng)絡(luò)等。這些方法均依據(jù)既有數(shù)據(jù)預(yù)測缺失數(shù)據(jù),構(gòu)建出來的預(yù)測模型沒有考慮到數(shù)據(jù)集的全局特征,在缺失率大的情況下修復(fù)精度不高?;诓逯档穆肪W(wǎng)數(shù)據(jù)修復(fù)方法是根據(jù)相鄰非缺失點(diǎn)的平均或加權(quán)平均交通數(shù)據(jù)值來填充缺失數(shù)據(jù),典型方法包括歷史平均方法、局部最小二乘法等。這些插值方法在路網(wǎng)數(shù)據(jù)變化不規(guī)律時(shí)修復(fù)效果較差?;诮y(tǒng)計(jì)學(xué)習(xí)的路網(wǎng)數(shù)據(jù)修復(fù)方法是假設(shè)或?qū)W習(xí)一個(gè)路網(wǎng)數(shù)據(jù)分布,對(duì)路網(wǎng)數(shù)據(jù)缺失值進(jìn)行插補(bǔ)[3],常用的方法包括概率主成分分析,馬爾可夫鏈蒙特卡羅方法等。然而這些方法都提前假定數(shù)據(jù)符合一個(gè)概率分布,如果數(shù)據(jù)不符合某特定分布時(shí),會(huì)導(dǎo)致插補(bǔ)結(jié)果[4]的不準(zhǔn)確。
完整的路網(wǎng)數(shù)據(jù)是實(shí)現(xiàn)智能交通系統(tǒng)的基礎(chǔ)[5],因此本文從路網(wǎng)數(shù)據(jù)的時(shí)空特性出發(fā),提出一種基于圖自編碼器-生成對(duì)抗網(wǎng)絡(luò)的路網(wǎng)數(shù)據(jù)修復(fù)方法,可實(shí)現(xiàn)高缺失率和隨機(jī)缺失情況下的路網(wǎng)數(shù)據(jù)修復(fù)。
圖1為本文方法的總體框架,主要包括兩部分:(1)利用降噪圖變分自編碼器(Denoising Graph Variational Auto-Encoder,DVGAE)提取路網(wǎng)缺失數(shù)據(jù)的時(shí)空特征;(2)根據(jù)時(shí)空特征,采用生成對(duì)抗網(wǎng)絡(luò)(Generative Adversarial Network,GAN)實(shí)現(xiàn)路網(wǎng)缺失數(shù)據(jù)修復(fù)。其中,在GAN 的損失函數(shù)中引入重建損失(Lcons),以加快模型收斂速度,保障路網(wǎng)數(shù)據(jù)修復(fù)的時(shí)效性。總體框架圖的關(guān)鍵符號(hào)定義如表1所示。
圖1 DVGAE-GAN總體框架圖Fig.1 Overall framework of DVGAE-GAN
表1 關(guān)鍵符號(hào)定義Table 1 Summary of key symbols
構(gòu)建路網(wǎng)圖G=(V,A),其中,V={v1,v2,v3,…,vN},N為路網(wǎng)中檢測器數(shù)量。A={air}Ni,r=1表示路網(wǎng)中檢測器節(jié)點(diǎn)之間的連邊關(guān)系:若檢測器vi與vr在路網(wǎng)中物理相鄰,則認(rèn)為兩個(gè)檢測器存在連邊,即air=1;反之,air=0。
X(t)為完整路網(wǎng)數(shù)據(jù),表示在第t時(shí)刻檢測器測得的T維歷史路網(wǎng)數(shù)據(jù)。X∈?N×T,其中,T為選取的數(shù)據(jù)時(shí)間維度。
式中:xi(t-jΔt)為檢測器vi在(t-jΔt)時(shí)刻的路網(wǎng)數(shù)據(jù),j=0,1,…,T-1;Δt為路網(wǎng)數(shù)據(jù)采樣間隔。
實(shí)際采集的路網(wǎng)數(shù)據(jù)為
變分圖自編碼器(Variational Graph Auto-Encoder,VGAE)[6]可從原始數(shù)據(jù)分布中隨機(jī)采樣得到數(shù)據(jù)的潛在表示特征,增加了潛在表示特征的泛化能力。在VGAE 模型基礎(chǔ)上加入降噪自編碼器(Denoising Auto-Encoder,DAE)架構(gòu),即得到降噪圖變分自編碼器,其框架如圖2所示?;贒VAGE學(xué)習(xí)到的路網(wǎng)潛在表示能有效重構(gòu)原始路網(wǎng)數(shù)據(jù)(有效映射完備路網(wǎng)數(shù)據(jù)的時(shí)空特征),即可由部分觀測數(shù)據(jù)推演完整路網(wǎng)數(shù)據(jù)分布。
圖2 降噪圖變分自編碼器框架圖Fig.2 Frame diagram of Denoising Variational Graph Auto-Encoder
1.2.1 基于編碼器的路網(wǎng)數(shù)據(jù)潛在特征生成
編碼器部分由圖卷積神經(jīng)網(wǎng)絡(luò)(Graph Convolutional Network,GCN)構(gòu)成,可以根據(jù)不同路網(wǎng)節(jié)點(diǎn)與節(jié)點(diǎn)之間的連邊關(guān)系來實(shí)現(xiàn)空間特征聚合,如圖3所示。編碼部分表示為
圖3 空間特征聚合示意圖Fig.3 Schematic diagram of spatial feature aggregation
在基于GCN學(xué)習(xí)整個(gè)路網(wǎng)數(shù)據(jù)潛在表示的過程中,可利用重參數(shù)化[7]方法防止梯度消失。路網(wǎng)時(shí)空特征Z(t)的采樣計(jì)算公式為
式中:ε~Ν(0,I) ;diag(·) 為對(duì)角協(xié)方差矩陣;q[Zi(t)|μι(t),diag(σ2i(t))]為檢測器vi通過GCN 形成的采樣分布;Zi(t)為檢測器vi從分布中提取的潛在特征,將其對(duì)路網(wǎng)不同檢測器上的潛在特征拼接,得到完整路網(wǎng)時(shí)空特征Z(t)∈?N×E;E為時(shí)間嵌入維度。
1.2.2 基于解碼器的路網(wǎng)數(shù)據(jù)重構(gòu)
VGAE 的解碼器不僅可以重構(gòu)原始路網(wǎng)鄰接矩陣,還可以降噪重構(gòu)完整路網(wǎng)數(shù)據(jù)。因此降噪圖變分自編碼器(DVGAE)的損失函數(shù)分別由對(duì)應(yīng)重構(gòu)鄰接矩陣和重構(gòu)路網(wǎng)數(shù)據(jù)的損失函數(shù)組成,目的是保證路網(wǎng)結(jié)構(gòu)的完整性同時(shí)能最大程度重構(gòu)出完整路網(wǎng)數(shù)據(jù),使得經(jīng)過了空間聚合和時(shí)間嵌入后提取的時(shí)空特征,包含完整的路網(wǎng)信息。損失函數(shù)計(jì)算公式為
基于時(shí)空特征、利用GAN 的強(qiáng)大數(shù)據(jù)生成能力,可生成路網(wǎng)數(shù)據(jù)以實(shí)現(xiàn)數(shù)據(jù)修復(fù)[8]。生成器目的是讓生成路網(wǎng)數(shù)據(jù)的分布盡可能符合真實(shí)數(shù)據(jù)樣本分布;判別器目的是將生成路網(wǎng)數(shù)據(jù)與真實(shí)路網(wǎng)數(shù)據(jù)區(qū)分開,將生成路網(wǎng)數(shù)據(jù)判別為假,這里生成路網(wǎng)數(shù)據(jù)與已觀測真實(shí)數(shù)據(jù)部分進(jìn)行重組;兩個(gè)網(wǎng)絡(luò)交替對(duì)抗訓(xùn)練,直至判別器難以判定生成路網(wǎng)數(shù)據(jù)是否為假?;贕AN修復(fù)路網(wǎng)數(shù)據(jù)的框架如圖4所示,其中,G_Loss為生成器損失函數(shù),D_Loss為判別器損失函數(shù)。
圖4 生成對(duì)抗網(wǎng)絡(luò)框架圖Fig.4 Generative Adversarial Network frame diagram
鑒于交通流數(shù)據(jù)的時(shí)間相關(guān)性,本文將LSTM作為生成器的內(nèi)部結(jié)構(gòu)。當(dāng)基于Wasserstein 距離衡量的生成路網(wǎng)數(shù)據(jù)和真實(shí)路網(wǎng)數(shù)據(jù)之間的差異達(dá)到最小時(shí),生成器輸出修復(fù)后的路網(wǎng)數(shù)據(jù)X′(t)∈?N×T為
基于GAN 生成的是整個(gè)路網(wǎng)數(shù)據(jù),而最終目標(biāo)是實(shí)現(xiàn)對(duì)局部缺失的路網(wǎng)數(shù)據(jù)的有效修復(fù),因此將生成器生成的路網(wǎng)數(shù)據(jù)X′(t)與原始路網(wǎng)數(shù)據(jù)X(t)重組,以實(shí)現(xiàn)缺失路網(wǎng)數(shù)據(jù)的重點(diǎn)修復(fù)。重組矩陣定義為
為了防止訓(xùn)練時(shí)出現(xiàn)模型崩塌問題,采用GAN的變種WGAN[9],即Wasserstein距離代替真實(shí)分布與生成分布的JS散度。這樣可以避免兩個(gè)分布之間沒有重疊時(shí)造成無法度量距離的后果。生成器損失函數(shù)G_Loss 和判別器損失函數(shù)D_Loss分別定義為
式中:Lcons為重建損失;D為判別器的輸出狀態(tài);β為重建損失系數(shù);p為缺失位置的數(shù)目。
實(shí)驗(yàn)數(shù)據(jù)集包含2015年全年西雅圖4個(gè)高速公路段(SR-52、I-5、I-405、I-90)323 個(gè)檢測器采集的速度數(shù)據(jù)集和加利福利亞州交通運(yùn)輸部的績效評(píng)估系統(tǒng)采集的pems-04 區(qū)域307 個(gè)檢測器(2018.01-2018.02)兩個(gè)月的速度數(shù)據(jù)集。采樣間隔均為5 min,即每5 min 計(jì)算所有車流量的平均速度。
圖5為西雅圖數(shù)據(jù)集2015年1月1日的檢測器速度分布熱力圖,顏色程度對(duì)應(yīng)不同的交通速度。圖5第195 個(gè)檢測器路段在13:00 左右有小范圍車輛速度較低,可能是由于出現(xiàn)交通事故造成了交通擁堵。
圖5 2015年1月1日西雅圖速度數(shù)據(jù)熱圖Fig.5 Heatmap of Seattle speed data on January 1,2015
實(shí)際情況中,會(huì)由于天氣原因或者系統(tǒng)、電源故障造成數(shù)據(jù)缺失。最常見的缺失類型有完全隨機(jī)缺失和集群缺失,本文討論的路網(wǎng)缺失類型是完全隨機(jī)缺失(Missing Completely at Random,MCAR)和聚集的時(shí)間缺失(Missing Completely at Random Temporal,MCART)。圖6是圖5中數(shù)據(jù)在兩種缺失類型、不同缺失率下的熱圖。
圖6 2015年1月1日西雅圖速度數(shù)據(jù)集缺失數(shù)據(jù)熱圖Fig.6 Seattle's heatmap of missing speed data on Jan 1,2015
數(shù)據(jù)集選取的時(shí)間維度為T=12,訓(xùn)練集與測試集劃分比例a=0.8。降噪圖變分自編碼器中編碼器的兩層圖卷積網(wǎng)絡(luò)層隱藏單元個(gè)數(shù)分別為32、8;解碼器全連接層隱藏單元個(gè)數(shù)分別為32、12;提取出來的時(shí)空特征維度E=8 ;損失函數(shù)中α=0.0001。
GAN 中生成器采用一層64 隱藏單元個(gè)數(shù)的LSTM和全連接層;判別器采用4層全連接層,隱藏單元個(gè)數(shù)分別為32、64、32、1。重建損失系數(shù)β=500。
本文采用平均絕對(duì)誤差(MAE),均方根誤差(RMSE),平均絕對(duì)百分比誤差(MAPE)指標(biāo)對(duì)模型進(jìn)行評(píng)估,計(jì)算公式分別為
式中:K為缺失數(shù)據(jù)的個(gè)數(shù),x′k,xk分別為第k個(gè)真實(shí)和修復(fù)后的交通數(shù)據(jù)。
對(duì)比模型包含反向傳播網(wǎng)絡(luò)(Backpropagation Network,BP)、降噪堆疊自編碼器(Denoising Stacked Auto-Encoder,DSAE)、貝葉斯高斯張量分解(Bayesian Gaussian Candecomp/Parafac,BGCP)、貝葉斯時(shí)間矩陣分解(Bayesian Temporal Matrix Factorization,BTMF)。此外,還選用修改后的DVGAE-GAN*,與本文方法區(qū)別在于其生成器由全連接層構(gòu)成。
對(duì)比模型參數(shù)設(shè)置為:BP 和DSAE 模型兩層隱藏層的單元個(gè)數(shù)分別為128、64,批處理大小分別為64;BGCP將數(shù)據(jù)矩陣分解重構(gòu)為三階張量表示為路段乘小時(shí)數(shù)乘時(shí)間間隔,CP秩為10;BTMF將路段乘時(shí)間序列的數(shù)據(jù)矩陣分解為空間因子矩陣和時(shí)間因子矩陣,矩陣低秩為30;DVGAE-GAN*的生成器部分全連接層隱藏層單元個(gè)數(shù)為32、16、12。
西雅圖數(shù)據(jù)集在不同缺失模式、不同缺失比例下的實(shí)驗(yàn)結(jié)果如表2和表3所示,pems04數(shù)據(jù)集在不同缺失模式、不同缺失比例下實(shí)驗(yàn)結(jié)果如表4和表5所示。
由表2和表3可以看出,DVGAE-GAN 模型在兩種缺失類型下都優(yōu)于其他基準(zhǔn)模型。在MCAR情況下,本文模型在低缺失率下表現(xiàn)最優(yōu),在高缺失率下MAE 逐漸接近基準(zhǔn)模型中表現(xiàn)最佳的BTMF;在MCART 情況下,本文模型的MAE 保持在3.0 以內(nèi),優(yōu)于其他基準(zhǔn)模型的表現(xiàn)。隨著缺失率的增加模型誤差會(huì)呈上升趨勢,因?yàn)榭捎^測數(shù)據(jù)的減少會(huì)導(dǎo)致生成的數(shù)據(jù)質(zhì)量降低。DVGAE-GAN*方法在MCAR 情況下修復(fù)效果僅次于本文方法和BTMF;但是它在MCART情況下效果欠佳,在低缺失率下判別器的梯度快速進(jìn)入平緩區(qū),由全連接層組成的生成器生成的路網(wǎng)數(shù)據(jù)誤差和波動(dòng)都比較大,表明LSTM可以更好地捕獲路網(wǎng)時(shí)間特征。
表2 MCAR、不同缺失率下修復(fù)結(jié)果對(duì)比(西雅圖數(shù)據(jù)集)Table 2 Comparison of imputation errors of Seattle dataset under MCAR and different missing rates
表3 MCART、不同缺失率下修復(fù)結(jié)果對(duì)比(西雅圖數(shù)據(jù)集)Table 3 Comparison of imputation errors of Seattle dataset under MCART and different missing rates
由表4和表5可知,BTMF 在MCAR 情況下部分效果略好于本文模型,但是在MCART 情況下BTMF 表現(xiàn)較差,主要因?yàn)镸CART 條件下獲取到的信息較少。本文模型基于路網(wǎng)拓?fù)鋱D構(gòu)建提取時(shí)空特征生成缺失數(shù)據(jù),相比其余基準(zhǔn)模型更能適應(yīng)于不同的缺失類型、缺失率情況,具有較好的魯棒性。
表4 MCAR、不同缺失率下修復(fù)結(jié)果對(duì)比(pems-04數(shù)據(jù)集)Table 4 Comparison of imputation errors of pems-04 dataset under MCAR and different missing rates
表5 MCART、不同缺失率下修復(fù)結(jié)果對(duì)比(pems-04數(shù)據(jù)集)Table 5 Comparison of imputation errors of pems-04 dataset under MCART and different missing rates
圖7采用MAE 反映不同模型誤差。通過對(duì)不同數(shù)據(jù)集的實(shí)驗(yàn)對(duì)比結(jié)果可以看出,DVGAE-GAN模型的修復(fù)效果優(yōu)于基準(zhǔn)方法,同時(shí)也證明了LSTM作為路網(wǎng)數(shù)據(jù)生成器的優(yōu)越性。
圖7 兩種缺失類型的不同模型誤差對(duì)比(西雅圖數(shù)據(jù)集)Fig.7 Comparison of error of different models under two data missing types(Seattle dataset)
本文提出一種基于圖自編碼-生成對(duì)抗網(wǎng)絡(luò)(DVGAE-GAN)的路網(wǎng)缺失數(shù)據(jù)修復(fù)方法。首先利用降噪圖變分自編碼器提取路網(wǎng)缺失數(shù)據(jù)的時(shí)空特征,在一定程度上更能捕獲原始路網(wǎng)數(shù)據(jù)的深層特征信息;其次將時(shí)空特征放入生成對(duì)抗網(wǎng)絡(luò)實(shí)現(xiàn)路網(wǎng)數(shù)據(jù)重構(gòu),生成器采用LSTM以實(shí)現(xiàn)路網(wǎng)數(shù)據(jù)的時(shí)間維度特征,加入路網(wǎng)結(jié)構(gòu)的重建損失可以實(shí)現(xiàn)對(duì)于缺失數(shù)據(jù)的著重插補(bǔ)。對(duì)兩個(gè)典型路網(wǎng)數(shù)據(jù)集進(jìn)行實(shí)驗(yàn),結(jié)果表明,本文方法的修復(fù)精度優(yōu)于目前主流的基準(zhǔn)方法,且適用于實(shí)際中不同缺失率和缺失類型的數(shù)據(jù)采集情況。后期希望考慮引入動(dòng)態(tài)的路網(wǎng)節(jié)點(diǎn)圖和分層構(gòu)圖來充分考慮數(shù)據(jù)的時(shí)空變化,以此提升路網(wǎng)數(shù)據(jù)修復(fù)精度。