張濤, 張健,2,3, 祁欣月, 陳長煜
(1.西藏大學工學院,西藏 拉薩 850000; 2.東南大學交通學院,江蘇 南京 211189;3.東南大學江蘇省城市智能交通重點實驗室,江蘇 南京 211189)
交通流量、速度和密度是城市交通系統(tǒng)規(guī)劃、設計和運行的基本參數(shù)。然而,無論數(shù)據(jù)采集技術如何,目前各國的許多交通信息管理系統(tǒng)都存在著交通數(shù)據(jù)丟失的問題。這一直也是智能交通系統(tǒng)(ITS)面臨的一個嚴重挑戰(zhàn)。經(jīng)過研究發(fā)現(xiàn),由于各種因素的影響,世界各地的交通主管部門都遭受了不同程度的信息丟失或異常,即交通采集數(shù)據(jù)(統(tǒng)計交通量、速度、占用率等)出現(xiàn)缺失、錯誤等現(xiàn)象,無法反映路網(wǎng)的實際交通狀態(tài),因此大量的交通研究,如交通狀態(tài)識別、交通管理等,都受到不完整數(shù)據(jù)的限制[1]。例如,美國大約15%的公路交通數(shù)據(jù)是不可用的;以中國北京為例,日常交通流量的缺失率通常在10%左右,其中檢測器故障占4%,其他原因占6%,甚至缺失率有時會達到20%~25%;國際著名的交通數(shù)據(jù)庫PeMS有超過5%的數(shù)據(jù)出現(xiàn)丟失,等等[2]。這樣的數(shù)據(jù)缺失問題嚴重阻礙了對交通數(shù)據(jù)進一步的應用,因為大多數(shù)現(xiàn)有的分析方法依賴于完整的數(shù)據(jù)(至少在歸算之后),如交通預測、優(yōu)化交通網(wǎng)絡、路線規(guī)劃。其中,數(shù)據(jù)質量一直被認為是交通預測面臨的主要挑戰(zhàn)之一[3]。如果沒有采用合適的插補方法,將缺失的交通數(shù)據(jù)簡單估計或丟棄,這將嚴重影響ITS的性能,也會對后續(xù)分析產(chǎn)生很大影響。通常丟失的數(shù)據(jù)不僅僅存在于交通領域,還存在于其他學科。在過去的20年中,在其他領域如統(tǒng)計學、社會學、醫(yī)學等,也存在缺失數(shù)據(jù)修復問題,一些修復方法也在這些領域得到應用。然而,盡管近幾十年來交通數(shù)據(jù)缺失插補方法的發(fā)展取得了顯著的進展,但由于交通流的高度非線性、隨機性和非平穩(wěn)性,實現(xiàn)令人滿意的插補性能仍然是交通領域有待解決的難題[4]。
在過去的20年里,交通數(shù)據(jù)缺失問題在智能交通系統(tǒng)中引起了廣泛的關注。世界各地交通領域的專家學者對此問題進行了積極的研究,發(fā)現(xiàn)其他領域處理缺失數(shù)據(jù)的大多數(shù)方法也適用于交通數(shù)據(jù)。在早期的插補方法研究中,常用方法有基于預測、插值和統(tǒng)計學習三種[5]。例如,概率主成分分析(PPCA)方法[6]、自回歸綜合移動平均(ARIMA)方法[7]、貝葉斯網(wǎng)絡(BNS)方法[8]。然而,上述許多早期提出的插補方法并沒有考慮交通流的時空相關性,有的僅僅通過簡單地平均歷史數(shù)據(jù)來估計缺失數(shù)據(jù)或者只考慮時間序列或空間相關性,這樣交通數(shù)據(jù)的隱形特征沒有得到深入完全挖掘,因此這些插補方法的精度很低。與此同時,許多方法提出深入挖掘交通流隱藏的時空相關性,并通過將交通數(shù)據(jù)向量構建成矩陣模型對缺失交通數(shù)據(jù)完成插補[9-10]。結果表明,現(xiàn)有的基于矩陣的插值方法在數(shù)據(jù)丟失率較大時,尤其是在一天或幾天內(nèi)數(shù)據(jù)連續(xù)缺失時,插補效果往往不理想。在此基礎上,近年來有研究人員采用基于矩陣的插補技術建模交通數(shù)據(jù),此方法在矩陣數(shù)據(jù)缺失率較低的情況下,效果較好,但矩陣數(shù)據(jù)不能覆蓋足夠的空間和時間數(shù)據(jù),尤其是在全部缺失1天或數(shù)天的極端情況下,無法處理交通數(shù)據(jù)的缺失。因此研究人員在文獻[11]提出了一種基于張量的數(shù)據(jù)插值方法,首次將基于張量插補的方法用于插補缺失交通數(shù)據(jù)上。后來在此基礎上,Chen等[12]提出了用于修復缺失數(shù)據(jù)的貝葉斯張量分解方法,Ran等[13]提出了基于張量的時空相關缺失交通數(shù)據(jù)補全方法。大量研究結果表明,利用張量模式的插補方法可以結合和利用交通數(shù)據(jù)的多樣性[14]。該方法對缺失數(shù)據(jù)有很好的恢復效果,特別是在丟失率大或天氣惡劣的情況下,插值性能仍然保持不變。因此基于張量插補的方法被證明是處理多維數(shù)據(jù)的一個很好的分析工具。然而,基于張量插補的方法在缺失的交通數(shù)據(jù)中并沒有得到廣泛的應用,主要是因為該方法需要通過高階分解來捕獲數(shù)據(jù)的全局結構,所以基于張量的方法仍然是一個具有挑戰(zhàn)性的問題。
綜上所述,準確有效地恢復丟失或異常的交通數(shù)據(jù)當前仍然面臨著許多挑戰(zhàn)。查閱大量文獻發(fā)現(xiàn),目前關于缺失交通數(shù)據(jù)插補方法系統(tǒng)全面的文獻綜述比較少,缺乏對交通數(shù)據(jù)插補方法的系統(tǒng)比較與分析。因此,本文將重點對缺失交通數(shù)據(jù)的插補方法進行總結。針對缺失的交通數(shù)據(jù),本文總結了現(xiàn)有的插補方法,系統(tǒng)比較了這些方法的原理、性能和適用范圍,以及各種主流方法的局限性。目的有三方面。首先,使讀者對缺失交通數(shù)據(jù)的來源和特點有一個較清晰的認識;其次,讀者可以從本文找到合適的方法來處理缺失的交通數(shù)據(jù),對缺失交通數(shù)據(jù)有初步的篩選參考。第三,本文可以幫助讀者對研究其他缺失數(shù)據(jù)的插補方法有一個基礎參考。
交通流是指在一定時間內(nèi),車輛在特定道路上連續(xù)行駛而形成的車輛流動。它可以用交通量、車速、交通密度、占用率、車頭距等各樣交通參數(shù)來定量表達,其中交通量、車速和車流密度3個參數(shù)是交通流中最常用的參數(shù)。
交通數(shù)據(jù)的采集方式一般分為移動式和固定式兩種。表1為這兩種方式的對比。
表1 交通數(shù)據(jù)采集技術的比較Tab.1 Comparisons of traffic data acquisition technologies
目前,我國交通系統(tǒng)主要通過固定的采集方式來獲取交通數(shù)據(jù)。其中感應線圈或自動交通記錄儀(ATR)是采集交通數(shù)據(jù)的常見來源[15]。
道路交通系統(tǒng)復雜,在實際的交通數(shù)據(jù)采集過程中,由于人為和自然因素法人影響,如通信問題、設備故障、觀測誤差、出行方式、出行習慣、數(shù)據(jù)傳輸問題等,交通數(shù)據(jù)在采集過程中會出現(xiàn)數(shù)據(jù)錯誤和數(shù)據(jù)丟失。采集到的交通數(shù)據(jù)具有高度的隨機性和不確定性,因此這些問題可能會導致探測器獲取的數(shù)據(jù)無法實際反映真實的道路交通狀態(tài)。如果將采集到的原始交通數(shù)據(jù)直接應用到后期的數(shù)據(jù)分析和研究過程中,就會出現(xiàn)不可靠的分析結果,甚至錯誤的結果[16-17]。
為了獲取真實有效的交通數(shù)據(jù),以及更深入地發(fā)現(xiàn)交通數(shù)據(jù)的規(guī)律,完成后續(xù)分析與研究,有必要對故障交通數(shù)據(jù)進行識別和修復。文獻[18]介紹故障數(shù)據(jù)通常分為3類:缺失數(shù)據(jù)、失真數(shù)據(jù)和異常數(shù)據(jù)。本文重點討論缺失數(shù)據(jù)的修復方法。
在對缺失數(shù)據(jù)修復前,為了避免錯誤的統(tǒng)計推斷,選擇精確性高且合適的插補方法,對了解缺失數(shù)據(jù)機制和缺失數(shù)據(jù)模式非常重要。
缺失數(shù)據(jù)的缺失機制在數(shù)據(jù)插補研究中有著不可替代的作用,它能夠反映已采集數(shù)據(jù)變量值與缺失值之間的聯(lián)系。Rubin[19]指出,數(shù)據(jù)的分布通常取決于觀察到的缺失機制,并首次提出了描述缺失機制的術語。數(shù)據(jù)缺失機制的分類如表2所示。
表2 數(shù)據(jù)缺失機制的分類Tab.2 Classification of data missing mechanisms
大多數(shù)涉及缺失數(shù)據(jù)的研究屬于MAR或MCAR類型,因此一般缺失數(shù)據(jù)的插補研究只考慮這兩種模式。此外,為能更直觀體現(xiàn)實際條件下缺失數(shù)據(jù)機制的復雜性,對上述3種缺失機制類型進行仿真研究:(1)完全隨機缺失(MCAR);(2)隨機缺失(MAR);(3)混合缺失(MIXED,MCAR和MAR兩機制各占50%)[20]。3種缺失機制的示意圖如圖1所示。其中圖中的一行對應一個交通流樣本,淺藍色代表對應位置的值是完整的,紅色代表對應位置的值缺失。
圖1 3種數(shù)據(jù)缺失機制示意圖Fig.1 Schematic diagram of three data missing mechanisms
缺失數(shù)據(jù)的缺失模式主要是對缺失數(shù)據(jù)中缺失變量的分布類型進行分類,判斷分析數(shù)據(jù)集中不同變量間的相互關系,為選擇合適的插補方法提供了依據(jù)。并且交通數(shù)據(jù)是典型的多維數(shù)據(jù),因此在缺失交通數(shù)據(jù)插補研究過程中,不僅要考慮缺失數(shù)據(jù)的產(chǎn)生機制,而且應當判斷數(shù)據(jù)的缺失模式[21]。
交通數(shù)據(jù)為高維數(shù)據(jù),因此為了方便數(shù)據(jù)的分析,本文將利用矩陣模式對交通數(shù)據(jù)集進行表示。圖2為缺失數(shù)據(jù)缺失模式示意圖。其中整體數(shù)據(jù)用矩陣X表示,X是由m個變量,n個觀測集構成的m×n矩陣,然后利用矩陣的特性對缺失交通數(shù)據(jù)的模式進行判斷。
圖2 缺失交通數(shù)據(jù)模式示意圖Fig.2 Schematic diagram of missing traffic data models
(1)響應缺失:在某個變量上的數(shù)據(jù)整體缺失,如圖2(a)所示。
(2)單一變量缺失:其中缺失值只出現(xiàn)在一個變量上,其他變量可以被觀察到,如圖2(b)所示。
(3)多變量不響應缺失:此缺失與單一變量缺失相似,不同的是缺失值出現(xiàn)在兩個或兩個以上變量上,其他變量還是可以被觀察到,如圖2(c)所示。
(4)文件匹配缺失:文件匹配缺失一般在當數(shù)據(jù)集中個別變量的數(shù)據(jù)缺失較多時表現(xiàn)出來,如圖2(d)所示。
(5)單調(diào)缺失:該缺失模式下的缺失數(shù)據(jù)一般表現(xiàn)出其單調(diào)性和規(guī)律性,如圖2(e)所示。
(6)任意缺失:如圖2(f)所示,其中任何單元都可能缺少任何一組變量,并且無任何規(guī)律。
近年來,隨著智能交通系統(tǒng)的快速發(fā)展,交通信息數(shù)據(jù)量迅速增長,交通出行產(chǎn)生的交通信息數(shù)據(jù)不僅是智能交通系統(tǒng)運行的基礎,同時還是交通規(guī)劃、交通誘導及交通管理控制等手段有效性的前提,因此研究人員越來越關注缺失數(shù)據(jù)插補問題。在修復缺失交通數(shù)據(jù)方面已經(jīng)做了大量的研究,建立了各種各樣的模型來修復缺失的值[22]。其主要目的是提高缺失數(shù)據(jù)插補的準確性和魯棒性,使插補值越來越接近其真實值。在缺失數(shù)據(jù)的研究初期,對缺失數(shù)據(jù)進行恢復的方法相對較少,且方法的誤差較大,因此研究人員開發(fā)了新的插補方法修復缺失的交通數(shù)據(jù)。這些方法的分類如圖3所示。
圖3 缺失交通數(shù)據(jù)插補方法的分類Fig.3 Classification of missing traffic data interpolation methods
早期人們提出了多種方法來恢復缺失的交通流量數(shù)據(jù)。這些方法大多數(shù)分為三類:基于預測的方法、基于插值的方法和基于統(tǒng)計學習的方法[11,23]。方法的基本原理如表3所示。
表3 早期方法的特點Tab.3 Characteristics of early methods
2.1.1 基于預測模型的插補方法
基于預測修復缺失數(shù)據(jù)的模型主要有自回歸綜合移動平均(ARIMA)[7]、指數(shù)平滑濾波法和時間序列模型、最近鄰狀態(tài)參數(shù)回歸、非參數(shù)統(tǒng)計模型、譜分析技術、高斯極大似然法、貝葉斯網(wǎng)絡(BNS)[8]、前饋狀態(tài)參數(shù)回歸等。然而,上述這些基于預測的方法存在一些局限性。交通流預測和估算兩個之間的主要區(qū)別沒有得到很好的考慮。首先,許多預測類模型沒有很好利用其產(chǎn)生缺失數(shù)據(jù)后收集的交通數(shù)據(jù),可能會大大降低插補的性能。并且,如果在一段時間內(nèi)交通數(shù)據(jù)產(chǎn)生連續(xù)的丟失,那么基于預測的插補方法的插補結果通常不能滿足精度的要求,甚至插補方法可能不起作用。
2.1.2 基于插值的插補方法
基于插值的方法主要包括時間插值方法和模式相似性方法,其充分利用了時空域中的觀測值。Yin等[24]的研究表明,時間相鄰方法比空間相鄰方法更有效。時間相鄰估計方法通過平均相鄰一天的同一時間或同一天的同一相鄰時間從同一檢測器收集的已知數(shù)據(jù)來填充缺失點,并假設連續(xù)幾天的每日交通量是相似的,這沒有充分利用本地每日交通信息??臻g相鄰方法試圖利用同一檢測器在不同日期的歷史數(shù)據(jù)估計缺失數(shù)據(jù),這些數(shù)據(jù)與模式中研究日的數(shù)據(jù)非常接近。然而,這些插值方法高度依賴于交通流在未來幾天內(nèi)具有很強相似性的假設,但這種假設在實際中有時會無效。主要因為這些方法只考慮不同日、周、月甚至年的相似模式,忽略了日流量的局部變化信息,但日流量的局部變化信息對提高插補性能至關重要[25-26]。
2.1.3 基于統(tǒng)計學習的插補方法
基于統(tǒng)計學習模型修復缺失交通數(shù)據(jù)的插補方法主要包括典型的基于主成分分析的方法,如PPCA,BPCA和KPPCA等。Qu等[23]提出了采用概率主成分分析(PPCA)方法恢復缺失數(shù)據(jù)。此后,PPCA被廣泛用于填補缺失數(shù)據(jù),在適當考慮時空相關性后,插補性能得到了提高。
Li等[6]從重構誤差、統(tǒng)計特性和運行速度等方面比較了這些早期方法的估計性能。結果表明,統(tǒng)計學習方法比插值方法和基于單個檢測器數(shù)據(jù)的交通量預測方法更有效。在統(tǒng)計學習方法中,PPCA的性能最好,對天氣變化具有很強的魯棒性。然而,基于統(tǒng)計學習的插補方法有一個缺點:該方法一般假設觀測的交通數(shù)據(jù)遵循一個特殊的概率分布,但是在現(xiàn)實中的交通數(shù)據(jù)分布一般都是未知的[27]。同時,基于統(tǒng)計的插值方法將交通數(shù)據(jù)視為一個矩陣,由于這些方法限制了交通數(shù)據(jù)的隱含多維特征,因此需將這些插補方法的精確性進一步提高[28-29]。
交通參數(shù)(速度、交通量、占用率等)一般具有內(nèi)在的時空模式和相關性,與此同時交通數(shù)據(jù)本質上也是多維的。大多數(shù)早期插補模型都沒有深入挖掘交通數(shù)據(jù)之間的時空相關性,恢復能力有限。近年來,許多專家學者開始關注交通數(shù)據(jù)的時空相關模式,并將交通數(shù)據(jù)的多維特征構造成多維矩陣,比如利用張量模式,可以結合和利用多模式相關性(例如,鏈路模式,周模式、日模式和小時模式),通過保留交通數(shù)據(jù)的多路特性并提取張量每一模式的潛在因素。因此基于張量的方法被證明是處理多維數(shù)據(jù)的一個很好的分析工具,也被認為是修復缺失數(shù)據(jù)最有效的方法之一。由于早期的方法分類中未涉及基于張量的插補方法,因此要對現(xiàn)有的交通流量插值方法進行重新的分類。
與上述分類不同,根據(jù)修復機制,目前廣泛使用的缺失數(shù)據(jù)插補方法也可分為3類。
2.2.1 基于時間相關性的方法
基于時間相關性的修復方法包括基于歷史數(shù)據(jù)法、時間序列法、移動平均法、指數(shù)平滑法等。基于歷史數(shù)據(jù)的方法是根據(jù)該周期歷史數(shù)據(jù)的平均值來恢復缺失數(shù)據(jù)。該方法具有一定的優(yōu)點,比如方法的實施簡單易行,數(shù)據(jù)的處理速度比較快,可以處理連續(xù)的異常數(shù)據(jù)。但基于歷史數(shù)據(jù)的方法也有一些缺點,由于該方法對歷史交通數(shù)據(jù)進行了一個平滑處理,所以它不能反映現(xiàn)實情況下的交通量的變化,從而,真實的交通數(shù)據(jù)的波動特性無法保留,因此處理后的數(shù)據(jù)存在部分特征失真。一般可以通過創(chuàng)建交通歷史數(shù)據(jù)恢復異常值[30]。
時間序列是指以時間為固定間隔觀測到的數(shù)據(jù),時間序列形式可以是連續(xù)的數(shù)據(jù),也可以是離散的。交通數(shù)據(jù)本體上也是時間序列數(shù)據(jù),并且不同時間的交通數(shù)據(jù)之間有著一些關聯(lián),基于時間序列的各種修復方法也是利用時間序列之間的關聯(lián)性修復缺失交通數(shù)據(jù)。缺失值還可以通過交通參數(shù)預測方法進行補充,如Sridevi等[31]提出了一種基于自回歸模型(ARLSimpute)估計缺失數(shù)據(jù)值的方法。該方法能夠處理其中特定時間點缺失值,或者整個時間點缺失值。該方法的機制是,從數(shù)據(jù)集中找到K-相似數(shù)據(jù),然后計算K-相似的數(shù)據(jù)的AR系數(shù),最后估計缺失值。如果結果被覆蓋,則將使用歸一化均方根誤差(NRMSE)評估結果; 如果未被覆蓋,該步驟將返回重新找到K-相似數(shù)據(jù)。因為錯誤率隨著階數(shù)的增加而增加,所以自回歸模型(ARLSimpute)在低階時表現(xiàn)更好。Lobato等[32]介紹了一種基于NSGA-II的多目標遺傳算法方法,稱為多目標遺傳法插補(MOGAImp)。因為時間序列數(shù)據(jù)只能覆蓋少量的時空信息,所以基于時間序列的方法只能處理少量的丟失數(shù)據(jù)。
在統(tǒng)計學上,移動平均法是利用整體數(shù)據(jù)對某一部分的數(shù)據(jù)進行預測,從而獲得較為完整的數(shù)據(jù),考慮采用一次N元移動平均法對缺失數(shù)據(jù)進行插補[33]。指數(shù)平滑法是一種基于平滑時間序列數(shù)據(jù)的經(jīng)驗法則[33]。
2.2.2 基于空間相關性的方法
空間相關性是指在不同位置之間的道路交通流數(shù)據(jù)存在著某些內(nèi)在關聯(lián),基于交通數(shù)據(jù)空間相關性的插補方法反映了實際的交通空間狀態(tài),但難以體現(xiàn)路網(wǎng)交通的非均勻時變特征[34]。郭敏等[35]提出的基于灰色殘差GM(1,N)模型的交通流數(shù)據(jù)插補方法是一種典型的基于空間相關性的方法,該方法在一定程度上提高了插補精度,并且可以提高基于歷史數(shù)據(jù)的恢復平均值。但是該方法有一定的局限性,它只針對道路交叉口的數(shù)據(jù)缺失情形,而且該方法對道路檢測器的布局還存在特定的要求,所以在一些特殊情景下該方法并不能應用,例如當缺失數(shù)據(jù)處相鄰車道或該缺失數(shù)據(jù)道路其他的檢測器采集數(shù)據(jù)也同樣缺失的時候。
2.2.3 基于時空相關性的方法
早期的交通缺失數(shù)據(jù)插補方法很少將時間、空間相關性相結合,大多數(shù)只考慮單一的情況,因此在插補數(shù)據(jù)時就會破壞時空連續(xù)域的統(tǒng)一性,同時造成一些隱藏的有效信息丟失,降低了插補精度[36]。所以,充分利用路段之間的時空相關性來建立交通預測模型,提高現(xiàn)有模型的預測精度是非常重要的。最近,一種基于張量的插補方法被用于處理缺失數(shù)據(jù)[11]。這種方法將多個交通變量之間的相互作用建模為多維數(shù)組(張量),它可以結合和利用多模式相關性(例如:鏈路模式、周模式、日模式和小時模式),通過保留交通數(shù)據(jù)的多路特性,并提取張量每一模式的潛在因素,允許不同變量之間的多重相關性組合[37]。因此基于張量的方法被證明是處理多維數(shù)據(jù)的一個很好的分析工具。在前期的研究中,主要有兩種基于張量的方法:第一種是基于低階張量的方法,無需分解結構,該方法很好地避免了非凸優(yōu)化問題;另一種方法是張量分解,它可以被認為是奇異值分解(SVD)算法的高階擴展。
經(jīng)研究發(fā)現(xiàn),在上述這3種插補方法中,基于時空相關性的方法效果最好,精度最高。
基于時空相關性的缺失數(shù)據(jù)修復方法有很多種,現(xiàn)主流方法主要分為以下四類。
回歸算法是另一組簡單的基于統(tǒng)計學習的缺失值歸因方法,此種方法是構建缺失值與觀測值之間的時空關系,然后利用確定的映射關系逐個進行缺失值的估算。該方法主要包括自回歸綜合移動平均(ARIMA)模型[38]、線性回歸模型、局部回歸模型、二次回歸模型、時空自回歸綜合移動平均(STARIMA)模型[39]、向量自回歸模型[40]、隱馬爾可夫模型[41]以及用貝葉斯理論求解的線性回歸模型[29]等。這些回歸方法易于建立和應用,但在不同的交通條件下其精度不可靠,還存在擴展性差、時空相關性考慮不足、沒有考慮數(shù)據(jù)的不確定性、不適合高維數(shù)據(jù)、精度低等缺陷。
為了解決以上各種方法的不足和局限性,許多后續(xù)研究嘗試將交通數(shù)據(jù)的時空信息進行結合,從而構建出矩陣模型修復缺失值。矩陣模型可以覆蓋更多的信息和交通數(shù)據(jù)之間的相似性,并從整個矩陣中估計出缺失的交通數(shù)據(jù)值。通過插值缺失數(shù)據(jù)重建交通時間序列,并建立多維矩陣來描述交通流。這些基于矩陣的方法主要包括PPCA和BPCA、時空多視圖學習算法、貝葉斯非參數(shù)多輸出高斯模型等[42-43]、稀疏正則化矩陣分解(SRMF)[44]。在這些方法中,SRMF是一種用于交通矩陣插值、交通預測和異常檢測的新型時空壓縮感知框架,它利用交通數(shù)據(jù)的低秩特性及其時空特性估計缺失的交通數(shù)據(jù),PPCA和BPCA方法結合了矩陣體積模型的全局和局部信息,在缺失率低于40%的情況下,比其他傳統(tǒng)的計算方法更有效,精度更高。隨著交通數(shù)據(jù)的規(guī)模的不斷增長,同時也伴隨著大規(guī)模高維數(shù)據(jù)的相互關聯(lián)和冗余性加大,為了減少數(shù)據(jù)冗余,Cande提出了低秩稀疏矩陣分解的概念,也稱低秩矩陣分解(Low Rank Matrix Decomposition,LRMD)或魯棒主成分分析(Robust Princ Compo?nent Analysis , RPCA)[45]。Yu等[46]基于探測車輛數(shù)據(jù),通過使用Schatten p-范數(shù)矩陣補全算法解決了數(shù)據(jù)限制問題,并開發(fā)了一個全市范圍的交通數(shù)據(jù)插補框架。在許多現(xiàn)有研究中,矩陣分解方法在修復缺失數(shù)據(jù)方面優(yōu)于回歸分析。雖然基于矩陣的方法在丟失率較低的情況下具有更好的性能,但仍然存在許多挑戰(zhàn): (1)將交通數(shù)據(jù)耦合成矩陣模式,但矩陣模式不能同時利用空間交通信息和時間交通信息,因為矩陣數(shù)據(jù)不能覆蓋足夠的空間和時間數(shù)據(jù)。例如,矩陣模式可以表示每天某一點的交通流量,但它并沒有同時包含某些時刻的每天和每周的交通數(shù)據(jù)關系。(2)以往的矩陣模式?jīng)]有充分利用交通數(shù)據(jù)的內(nèi)部相關性,也會影響后續(xù)的交通數(shù)據(jù)分析。(3)以往基于矩陣的方法在交通數(shù)據(jù)缺失率較大的情況下,尤其是在全部缺失一天或數(shù)天的極端情況下,無法處理交通數(shù)據(jù)的缺失。
近年來,隨著人工智能的快速發(fā)展,機器學習方法作為一種可以解決許多問題的方法,已經(jīng)引起了學術界和工業(yè)界的廣泛關注,因此許多研究人員開發(fā)了人工智能模型對缺失的交通數(shù)據(jù)進行插補。這些模型主要包含k近鄰(KNN)[47]、支持向量回歸(SVR)[48]、人工神經(jīng)網(wǎng)絡(ANN)[49]、小波神經(jīng)網(wǎng)絡(WNN)[50]和極限學習機(ELM)[51]。近年來,為了實現(xiàn)更準確的數(shù)據(jù)插補,通過對人工神經(jīng)網(wǎng)絡改進,具有更復雜的神經(jīng)網(wǎng)絡結構的深度學習模型也被引入和發(fā)展。著名的深度學習模型包括堆疊自編碼器(SAE)[52]、長短期記憶神經(jīng)網(wǎng)絡(LSTM)[53]、時空協(xié)同克里金法[54]、深度信念網(wǎng)絡(DBN)[55]和卷積神經(jīng)網(wǎng)絡(CNN)[56]。特別是LSTM,由于具有時間建模的能力,在交通流預測任務中表現(xiàn)出了優(yōu)勢。由于深度學習模型具有通用逼近能力,可以逼近任何非線性函數(shù),在多源數(shù)據(jù)中表現(xiàn)出優(yōu)異的性能。然而,由于計算復雜度高,這些模型在訓練過程中會消耗大量的時間。
為了克服上述矩陣方法的缺點,提出了一種多維矩陣,即張量模型。張量又稱多維數(shù)組,是向量和矩陣的高階推廣。基于張量(multi-way array)的方法[57-58]將交通數(shù)據(jù)構建為多路矩陣,準確捕捉交通數(shù)據(jù)的底層多模式結構(日、周、時、空模式)。例如,交通數(shù)據(jù)的全局信息可以通過天×周×時間×空間張量模式來表示[11];然后根據(jù)張量數(shù)據(jù)的全局特性,利用張量補全算法處理張量內(nèi)部的缺失數(shù)據(jù)。與傳統(tǒng)的插補方法相比,基于張量的方法可以結合和利用更多的多模相關性。因此,基于張量插補方法具有更高的精度和魯棒性。通過對多維數(shù)據(jù)的一系列研究,張量方法被證明是處理多維數(shù)據(jù)的良好分析工具。近年來,基于張量的方法被引入到缺失交通數(shù)據(jù)的修復中[11-12],具有良好的性能。動態(tài)張量由交通時間序列構成,從時間維度中挖掘出交通數(shù)據(jù)的周期性、趨勢性和時空相關性,并通過張量分解對缺失數(shù)據(jù)進行插補。將貝葉斯概率矩陣階乘分解模型推廣到高階張量,并將其應用于損失數(shù)據(jù),通過高階分解可以捕獲全局結構。
3.4.1 基于張量的方法背景
張量分解于1927年由Hitchcock[59-60]提出,Hitchcock提出了張量的多元形式,在多元形式中,張量被表示為一組多項式乘積的和。但只提出了張量的表達式,直到1966年才闡明其應用,與此同時Tucker分解和CP(CANDECOMP/PARAFAC)分解被提出。這兩種分解方法都可以看作為矩陣奇異值分解(SVD)和主成分分析(PCA)的高階擴展形式。但與CP分解不同,Tucker分解的工作側重于具有多線性秩的最一般張量分解,它考慮了從一種模式到另一種模式的相關性變化。2013年,Tan等[11]開發(fā)了基于Tucker分解的方法估算缺失的交通數(shù)據(jù)。張量分解是一種多線性結構,基于張量的方法與傳統(tǒng)方法相對比,基于張量的插補方法能夠更好地結合和利用交通數(shù)據(jù)的多模相關性,很好地挖掘了交通數(shù)據(jù)的多維結構,有著更突出的魯棒性和插補精度。
許多研究表明,基于張量的方法可以有效地恢復丟失的數(shù)據(jù),目前張量數(shù)據(jù)插補模型主要是基于張量分解,其目的是從部分觀察到的條目中提取潛在的多線性因素,然后通過基于這些因素重建的張量估計未觀察到的數(shù)據(jù)[61]。CP分解和Tucker分解[62]的兩個經(jīng)典公式得到了最多的關注和應用。Tucker分解將給定的張量分解為一個核心張量,該張量乘以序列中每個模式的因子矩陣,如圖4(a)所示。CP分解是Tucker分解的一種特殊情況,其中核心張量是超對角的,并且所有因子矩陣具有相同的列數(shù)。它將張量分解為R個分量秩1張量,如圖4(b)所示。2011年Acar等[63]和2013年Tan等[11]分別提出了基于CP分解(CP-WOPT)和基于Tucker分解的數(shù)據(jù)完成(TDI)模型。
圖4 3階張量分解的兩個經(jīng)典公式Fig.4 Two classical formulas of the third-order tensor decom?position
在以前的研究中,大量方法側重于修復隨機缺失數(shù)據(jù),其他方法則側重于預測問題。然而,基于這些方法的結構缺失并沒有得到詳細的分析。在Chen等[64]的研究中,這些問題得到了很好的解決。他提出了一種基于Tucker分解的三步框架,通過從不完整數(shù)據(jù)中發(fā)現(xiàn)時空模式和底層結構完成恢復任務。該方法引入截斷奇異值分解(SVD),捕捉每個維度上的主要潛在特征,當丟失率在20%~80%之間時,該方法也可以成功修復數(shù)據(jù)[65-66]?;趶埩康姆椒?,可以通過保留交通數(shù)據(jù)的多向性并提取張量每種模式中的潛在因素,組合和利用多模式相關性。因此,用張量構造原始交通數(shù)據(jù)是非常重要的一種方法。
3.4.2 張量符號與基本理論
張量可以稱作是一個高階數(shù)組或矩陣,是高維數(shù)據(jù)的自然表示。但本文所介紹的張量的概念與物理以及工程中的應力張量概念不同,后者一般在數(shù)學中被稱為張量場。3階張量看起來像長方體(如圖5所示)。4階張量是3階張量沿一維的延伸(如圖6所示)??梢韵胂?,5階張量是3階張量在兩個方向上的擴展(如圖7所示)。一般將標量視為0階張量,1階張量是向量,2階為矩陣,3階或更高階的稱為高階張量[67-68]。
圖5 3階張量Fig.5 Third-order tensor
圖6 4階張量Fig.6 Fourth-order tensor
圖7 5階張量Fig.7 Fifth-order tensor
張量的階數(shù)是維數(shù),也稱為方式或模式。一般將標量(0階張量)用小寫字母a表示,而粗體小寫字母(a,b,…)用來表示向量,粗體大寫字母(A,B,…)表示矩陣。 高階張量(3階或更高階)用黑體歐拉腳本字母表示,比如X。
向量a的第i個條目用ai表示,矩陣A的元素(i,j)用aij表示,3階張量X的元素(i,j,k)用Xijk表示[69]。索引通常從1到其大寫,例如,i=1,…,Ι。序列中的第n個元素用括號中的上標表示,例如,A(n)表示序列中的n個矩陣,符號“×”表示兩個集合的笛卡爾積[70]。
用于交通流數(shù)據(jù)建模的張量可以捕捉多種模式數(shù)據(jù)之間的相關性,如由日、周、時間和空間組成的張量。大多數(shù)張量具有高階性質,而低階張量更容易修復缺失數(shù)據(jù)并完成張量分解,因此低秩可近似用于缺失數(shù)據(jù)估計或張量補全[71]。
研究人員使用小Tucker秩或n秩來恢復張量,基本理論如下:n維張量的n模Tucker秩為A∈RI1×I2×...×IN,用rn表示,是模式n展開矩陣A(n)的秩。
這里,張量A∈RI1×I2×...×IN定義為A(n),張量元素(i1i2,…,iN)映射到矩陣元素(iN,j),其中:
n維張量模積為X∈RI1×I2×...×IN,矩陣U∈RI×IN可以表示為大小為I1×I2×In?1×J×In+1×…×IN的X×nU。因此得到:
所以,理論上基于低階近似的張量方法可以轉化為以下最小化優(yōu)化問題:
式中 集合Ω中A的元素是已知的,而其余元素丟失。由于矩陣秩一般很難最小化,所以這個問題是一個困難的非凸問題。為了緩解這個問題,在一些文獻中,引入核范數(shù)是一種常用的方法,其近似矩陣的秩[72]。核范數(shù)的優(yōu)勢在于它是矩陣秩的最緊凸包絡,一般張量情況下核范數(shù)[73]的定義為:
式中αi為加權參數(shù)。因此,張量最小化問題可簡化為:
如上所示,將之前的非凸問題轉化為凸問題。已經(jīng)提出了許多基于核范數(shù)的張量方法[68]。有關張量插補方法的詳細基礎和相關應用,讀者可以參考相關文獻,如文獻[11,74-77]。
3.4.3 基于張量的插補方法的不足和前景
基于張量的插補方法是修復缺失交通數(shù)據(jù)的一個熱門話題,但還存在一些尚待解決的難題,如在數(shù)據(jù)處理中,一些一般的張量算法往往直接將輸入特征分解為多個維度,過分考慮了這些特征與其他無用特征的組合。因此,在分解過程中如何準確地提取有用信息,放棄無用的特征組合,是一個巨大的挑戰(zhàn)。如Tucker分解和CP分解,它們都將輸入張量分解為多個低階因子,但是由于照明、遮擋或實際應用中的一些噪聲,它們?nèi)菀壮霈F(xiàn)偏差。因此,分解的精度將降低,導致這些分解算法的魯棒性相對較差。最后,需要通過分解高階張量來獲得交通數(shù)據(jù)的全局結構,然而降低高維數(shù)據(jù)的維數(shù),改進學習更新算法,提高精度是一個具有挑戰(zhàn)性的問題。
表4和表5對早期和現(xiàn)行缺失交通數(shù)據(jù)處理方法的優(yōu)缺點進行了對比,從而更直觀地了解到目前交通領域缺失數(shù)據(jù)處理方法的多樣化。從表4和表5可以看出不同類型的缺失數(shù)據(jù)處理方法有不同的優(yōu)缺點,因此在處理缺失數(shù)據(jù)時,要根據(jù)缺失數(shù)據(jù)的自身情況,選擇最佳的處理方法以求達到最好的效果[21]。
表4 早期缺失數(shù)據(jù)處理方法比較Tab.4 Comparisons of early missing data processing methods
表5 現(xiàn)行缺失數(shù)據(jù)處理方法比較Tab.5 Comparisons of current missing data processing methods
為了科學地評價各種修復方法的準確性和可靠性,必須對插補后的交通流數(shù)據(jù)和實際的交通流數(shù)據(jù)實行對照,因此需要應用一些評估指標,平均絕對誤差(MAE)和均方根誤差(RMSE)通常用于評估插補方法的插值性能[78]。歸一化均方根誤差(NRMSE)和平均絕對百分比誤差(MAPE)也可用于修復方法的性能評估[79-80]。
平均絕對誤差(MAE)是測量值與測量值算術平均值誤差的絕對值的平均值,平均絕對誤差可以較好地反映出修復的數(shù)值誤差的真實狀態(tài)[33]。
均方根誤差(RMSE)反映了插值方法的平均性能,RMSE越小,插值性能越好。
平均絕對百分比誤差(MAPE)是相對誤差度量值,它使用絕對值來避免正誤差和負誤差相互抵消,它可以很好地比較各種時間序列模型預測的準確性。
歸一化均方根誤差 (NRMSE) 克服了尺度依賴性,有助于不同尺度模型之間的比較。
NRMSE是用于評估缺失交通數(shù)據(jù)修復方法準確性最高也是最常用的指標。
數(shù)據(jù)缺失是許多交通運輸管理系統(tǒng)面臨的常見問題。本綜述系統(tǒng)性回顧了關于缺失交通數(shù)據(jù)的插補方法,深入分析了各插補方法優(yōu)缺點,對早期與現(xiàn)行缺失交通數(shù)據(jù)插補方法進行了對比。并從張量符號、張量定義、張量分解、張量修復缺失交通數(shù)據(jù)方法等方面介紹了基于張量的插補方法,指出了張量方法存在的挑戰(zhàn)與前景。本文梳理了交通數(shù)據(jù)的采集方法和數(shù)據(jù)缺失的原因,闡述了缺失數(shù)據(jù)的缺失機制和缺失模式,提供了一些基于修復方法的精度評估,列舉了4個常用的插補性能評估指標。
基于交通數(shù)據(jù)插補方法仍然是一個具有挑戰(zhàn)性的問題,為了提高插補方法的精度,對于未來的研究可以考慮以下方面:(1)考慮不同交通狀態(tài)下的時空相關性,如早高峰、晚高峰和穩(wěn)定交通階段,并將時空相關性與張量方法結合,也可以將物理預測模型(如自動回歸(AR)、自動回歸滑動平均(ARMA))和自動回歸綜合移動平均(ARIMA)集成到張量觀測的時間維度中。(2)將天氣、事故數(shù)據(jù)和當前或計劃的道路工程納入預測模型。