今天就談談端到端自動駕駛的因果關系,如何通俗易懂的解釋分析?
寫在前面&個人理解
基于深度學習的模型在自動駕駛領域得到了廣泛應用,尤其是日益受到關注的端到端解決方案。然而,這些模型的黑箱特性引發了關于其自主駕駛可信賴性和安全性的擔憂,并且如何調試因果關系已成為亟待解決的問題。盡管目前已有一些關于自動駕駛可解釋性的研究,但目前還沒有系統的解決方案來幫助研究人員調試和識別導致端到端自動駕駛最終預測動作的關鍵因素。這里提出了一種綜合方法來探索和分析端到端自動駕駛的因果關系。首先,使用控制變量和反事實干預進行定性分析,以驗證最終規劃所依賴的關鍵信息。然后,通過可視化和統計分析關鍵模型輸入的響應來定量評估影響模型決策的因素。最后,基于對多因素端到端自動駕駛系統的綜合研究,開發了一個強大的基準和一個在閉環模擬器CARLA中探索因果關系的工具。它利用關鍵的輸入源來獲得設計精良的模型,從而具有高度的競爭力。這次工作是首個揭示端到端自動駕駛奧秘并將其黑箱變為白箱的研究。全面的閉環實驗表明,提出的方法可以應用于端到端自動駕駛解決方案的因果關系調試。代碼將發布在:https://github.com/bdvisl/DriveInsight。
領域背景介紹
在過去的十年里,基于深度神經網絡的自動駕駛領域經歷了顯著的增長,涵蓋了學術界和工業界的進步。盡管深度學習具有強大的表示能力,但它缺乏透明度,使得識別問題變得困難。對于自動駕駛任務而言,其需要極高的安全性要求,系統的黑箱行為顯著降低了人們的信任度,從而限制了其實際應用。因此,闡明并解決這些系統中的因果關系是迫切需求的,并且仍然是一個未解決的挑戰。
最近在可解釋性方法上的進展為理解這個復雜系統的復雜性提供了一種有前途的手段,并引起了越來越多的興趣。通過將自然語言描述符集成到自動駕駛控制模塊中的整個決策和行動過程中,這些方法有助于更直觀和可理解地解釋網絡的預測。然而,自動駕駛的端到端架構包含多個模塊,每個模塊對最終決策輸出的具體影響尚不清楚。這種不清晰性強調了需要一個系統的分析框架來幫助研究人員進行調試,從而阻礙了該領域的進展。
這項工作提出了一種全面的方法來調試和分析端到端自動駕駛的因果關系。核心思想是評估每個因素的單獨貢獻,并找到關于決定最終預測動作的最具影響力特征的解釋。類似于人類駕駛的決策過程,端到端自動駕駛模型的最終動作/控制預測通常是多因素的。例如,在進行無保護左轉時,智能體需要同時考慮交通燈、直行來車、過馬路的行人和靜態車道線等。在現實世界的模仿學習環境中,錯誤歸因是很常見的。因此,對關鍵組件的作用進行了定量消融實驗分析,并提出了兩種定性分析方法:反事實干預和響應可視化。最后,基于對多因素端到端自動駕駛系統的綜合研究,提供了一個強大的基準和一個用于在閉環模擬器CARLA中調試因果關系的工具。它利用基本輸入源來獲得一個魯棒且設計良好的模型,該模型不僅實現了有競爭力的結果,還提供了預測的可解釋性。
據我們所知,這個工作是第一個揭開端到端自動駕駛神秘面紗,將黑箱變成白箱的研究。我們對駕駛場景進行了徹底的實驗,并表明方法可以應用于端到端自動駕駛解決方案,以有效地診斷因果關系問題。
主要貢獻如下:
- 提出了首個調試和分析解決方案及基準,通過明確解釋多因素決策的因果關系,揭示了黑箱端到端自動駕駛的神秘面紗。
- 進行了詳細的定量消融實驗和反事實干預實驗,并提出了兩種響應可視化方法:組件級可視化,從響應的時間一致性和場景相關性角度進行了深入分析;以及激活圖可視化,展示了語義特征影響的空間分布。
- 首先采用反事實推理來定性找出導致最終預測動作的最具影響力特征,然后應用基于注意力的策略來定量分析每個因素的貢獻,以調整端到端模型,從而能夠全面了解決策過程。
相關工作
隨著計算能力的不斷提升、海量數據的可用性、閉環模擬和評估工具的完善,端到端自動駕駛系統正在學術界和工業界獲得越來越多的關注。以原始傳感器數據作為輸入,端到端框架通過單一模型直接預測規劃和控制信號,而不是傳統的級聯多模塊設計。得益于數據驅動范式和聯合優化的優勢,累積誤差被消除,從而能夠像人類一樣進行更智能的操作。
在工業界,最引人注目的L2+級自動駕駛端到端解決方案當屬特斯拉最近發布的FSD V12,由于特斯拉持續提高AI訓練能力,FSD V12已經占據了越來越多的行駛里程。Wayve的AV2.0通過開發端到端AI基礎模型,尤其是語言模型LINGO來開啟自動駕駛的新時代,增加了端到端推理和決策過程的透明度,同時還推出了生成式世界模型GAIA-1,該模型能夠從文本、動作和視頻提示中生成逼真的駕駛視頻,以加速訓練和驗證過程。
在學術界,面向規劃的端到端流程UniAD將傳統的獨立級聯模塊轉變為聯合優化流程,以消除累積誤差。然而,它僅在開環數據集上進行了驗證,而非閉環評估。ThinkTwice提出了一種由粗到細的漸進式范式,以強調在基于端到端轉換器的流程中解碼器的重要性。VADv2將輸入傳感器數據統一為場景標記嵌入,以預測動作的概率分布,在CARLA基準測試中實現了最先進的閉環性能。
大量工作研究了深度學習模型的可解釋性、可說明性或因果推理,因為這對調試和洞察模型的決策至關重要。我們主要關注更復雜的“黑箱”端到端自動駕駛框架,并介紹了幾個類別的可解釋性/因果性。(1)利用大型語言模型的強大功能,通過將駕駛任務構建為視覺問答(VQA)問題,或輸出決策制定的解釋,來提供高級別的解釋。然而,由于虛構的幻覺和不準確的解釋,駕駛系統的語言輔助模型仍有改進空間。(2)構建因果注意力/顯著性模型,以指示哪些輸入因素或部分對最終預測具有高度影響。(3)反事實解釋旨在通過設想修改這些特征會導致模型做出不同的預測,來找出決策制定的關鍵輸入特征。(4)除了最終的駕駛策略任務外,還經常構建可解釋的輔助任務,以提供可分析的信息,并幫助模型獲得對場景的高級理解。輔助任務通常將潛在特征表示解碼為感知預測,如目標檢測、語義分割、深度估計、運動預測等。(5)因果識別。在復雜場景下,給定多個時序輸入,如自車過去的狀態、路線和傳感器數據,端到端模型很容易受到因果混淆或模仿者問題的影響,這意味著模型無法區分虛假關聯與真實因素。為了緩解因果混淆問題,一些先驅工作學習了一個從因果圖到策略的映射,然后使用有針對性的干預來高效地搜索正確的策略。PlanTF采用基于注意力的狀態丟棄編碼器和數據增強技術來減輕累積誤差。ChauffeurNet通過將過去的自車運動作為中間俯視圖(BEV)抽象,并在訓練過程中隨機丟棄它們,從而解決了因果混淆問題。
然而,上述大部分工作并不是專門為端到端自動駕駛框架量身定制的,它們只能在一定程度上提高端到端“黑箱”屬性的可追溯性,而無法正確識別出與設計真正因果模型最相關的因果因素。因此,本文的主要動機是提出調試和分析工具,以明確解釋多因素復雜端到端應用的因果關系。工作首先定性地識別出因果因素,然后定量地分析每個因素的貢獻,以獲得對端到端自動駕駛的穩健且全面的控制。
主要方法詳解
DriveInsight,其總體架構如圖1所示。給定多視圖圖像和點云輸入,首先引入特定模態的編碼器來分別提取和轉換它們獨特的特征到鳥瞰圖(BEV)表示。隨后,利用多模態和時間融合模塊,將這些表示合并以推導出統一的BEV特征。最后,應用規劃解碼器根據生成的BEV標記和其他環境指標來預測自車主體的未來軌跡。
1)Modality-Specific Encoders
相機編碼器。對于多視圖相機圖像,首先采用具有特征金字塔網絡的圖像骨干架構(如ResNet ),以提取富含語義信息的多尺度圖像特征。遵循廣泛采用的LSS ,使用估計的深度將多視圖特征提升到3D視錐體,并將視錐體投射到參考平面上以生成BEV特征。具體來說,該過程首先從深度預測網絡(DepthNet)開始,為每個像素預測離散的深度分布,然后使用該深度將每個像素沿相機射線散射到離散點上。在每個點上,得到的特征被確定為預測深度的結果與相應像素特征的乘積。在BEV特征聚合的每個網格內,使用Frustum Pooling來合并位于網格內的點的特征。
激光雷達編碼器。對于給定的激光雷達點云,首先將輸入點體素化為均勻的bins,并使用一系列3D稀疏卷積塊在體素空間中提取局部3D形狀信息,這與該領域已建立的方法一致。接下來,采用沙漏卷積網絡作為BEV特征提取器,將3D特征展平為2D BEV視圖,以捕獲富含上下文信息的BEV表示。為了最大化多尺度語義的利用,采用特征金字塔網絡來整合來自不同層次級別的特征,從而產生具有尺度感知能力的BEV輸出特征。
2)Fusion Encoders
多模態融合。在將所有感官特征轉換為統一的BEV表示之后,采用多模態融合技術來合并兩組不同的特征,從而產生融合的多模態特征。首先,使用一系列2D卷積層分別將兩種不同的BEV特征標準化為統一維度,然后將它們連接起來并通過一系列2D卷積層進行處理。為了增強通道間的相互作用,應用了多個Squeeze-and-Excitation(SE)塊來操作融合后的特征。鑒于最終規劃預測中的單獨直接監督不足以有效解決高維多傳感器輸入的復雜性,受到DriveAdapter 的啟發,為BEV特征圖引入了補充的特征級監督。
時間融合。為了充分利用廣泛的歷史上下文信息,這里開發了時間融合模塊,這些模塊對齊并整合時間線索以實現更準確的預測。首先,構建了一個記憶庫Q來存儲從相鄰幀和相對姿態中提取的上下文特征。請注意,記憶庫中每個幀對應的特征都通過姿態變換映射到當前幀的坐標系中。在獲取當前幀的BEV特征后,將這些特征與記憶庫中存儲的所有特征進行連接,并應用一個卷積層來降低通道維度以節省計算資源。隨后,使用一個SE塊來促進交互,從而有助于推導出當前幀的時間融合特征。這些融合特征隨后被納入記憶庫,同時移除最早的幀以實現記憶庫的必要更新。
3)Planning Decoders
規劃解碼器接收兩個組件作為輸入:第一個是BEV特征,它簡潔地模擬了當前環境的感知;第二個組件包含額外的結構化信息,主要包括三類:自車狀態、環境信息和導航信息。自車狀態信息包括當前時刻和歷史時刻的速度,而環境信息則包括關于高清地圖、障礙物、交通信號燈和停車標志的結構化信息。通常,這些信息可以通過模型的輔助任務模塊進行預測,本研究中相關數據直接由模擬環境提供。導航信息包括命令、目標點和路線。命令代表來自高級規劃器的信息,如直行、右轉、左轉等。目標點指示目標的位置和方向,而路線則是車道級別的密集導航點集合。BEV特征和結構化信息分別通過多層感知機(MLPs)進行編碼,然后連接起來以獲得最終的增強特征,這為下游行為規劃提供了豐富且必要的指導。為了避免捷徑學習問題,在訓練階段采用了dropout策略,該策略以一定概率隨機屏蔽某些輸入。在測試階段,dropout率設置為0。遵循UniAD,使用基于查詢的設計,使用ego 查詢與上述特征進行交叉注意力操作,最終獲得自車的未來軌跡T。
實驗對比
實驗設置
為了有效且直觀地評估多因素起源的端到端自動駕駛框架,我們建立了一個名為DriveInsight的基線模型,并采用流行的CARLA 0.9.10.1版本模擬器進行訓練和測試。
數據收集和過濾。我們推出了一個基于規則的專家代理,利用CARLA模擬器的特權信息,在8個城鎮和14種天氣條件下以2Hz的頻率收集訓練數據。對于不同的城鎮和天氣條件,路線是隨機生成的,并且為了獲得更好的數據多樣性,動態目標和對抗性場景也是隨機生成的。對于傳感器,使用了四個具有相同分辨率(1600 × 900)和視野(FOV:150°)的RGB攝像頭(前、左、右、后),一個具有默認配置(旋轉頻率:10 Hz,上/下視野:10°/-30°,通道數:32)的激光雷達(LiDAR),一個慣性測量單元(IMU,20 Hz),一個全球定位系統(GPS,100 Hz)和一個速度計(20 Hz)。除了感知和自車狀態信息外,還收集了矢量地圖、交通元素狀態、稀疏目標點、高級命令和密集路由信息。目標點按照CARLA的標準協議以GPS坐標形式提供,這些坐標是稀疏的,可能相隔數百米。路由是車道級別的,可以看作是目標點以一米分辨率的插值版本。
我們收集了包含所有8個城鎮的310萬幀(19,105條路線)的數據集。對于所有路線,截斷了最后幾幀,即車輛在超時時停止的幀(移除了50萬幀)。由于我們使用的專家代理并不完美,如果發生任何違規行為(即,代理闖了停車或紅燈,撞到了物體,被阻擋,駛出了其路線車道,或偏離了路線),還會額外過濾掉整條路線。這一后處理過程移除了1,229條路線。最終用于訓練的數據量為180萬幀(17,876條路線)。
評估指標。遵循常見做法,利用CARLA排行榜引入的三個官方指標進行評估:路線完成率(RC)、違規分數(IS)和駕駛分數(DS)。路線完成率(RC)表示代理完成路線距離的百分比。它考慮了agent對指定路線的遵循程度,并對偏離規定路徑的情況進行懲罰。違規分數(IS)量化代理所犯的違規行為,包括與行人、車輛、道路布局的碰撞以及違反交通信號的行為。每項違規行為都會產生一個懲罰系數,該系數與違規行為的嚴重程度成比例地降低總分。駕駛分數(DS)是一個綜合指標,同時考慮了駕駛進度和安全性。它是路線完成率和違規分數的乘積,為agent的性能提供了全面評估。通過使用這些指標,我們旨在對每個agent的駕駛行為進行全面評估,從而更深入地了解它們在不同場景下的表現。
消融實驗分析
Effectiveness of Prompts of Planning Decoder
在這一部分,我們進行了廣泛的實驗,以展示規劃解碼器中關鍵組件的效果。通過系統地單獨將每個組件設置為零,分析了它們對最終性能的具體貢獻。結果如表1所示。可以看到,排除鳥瞰圖(BEV)特征會導致性能顯著下降。這是因為自動駕駛的一個基本方面是周圍環境的場景建模。BEV技術的主要優勢在于其能夠提供場景分布的直觀表示,從而對最終軌跡規劃的準確性和有效性產生最大影響。相比之下,在缺少地圖、命令、停車標志或障礙物的情況下,最終性能并沒有顯示出任何顯著變化,這強調了這些變量在確定最終規劃結果時的不重要性。
對于與導航相關的組件,包括路由和目標點,缺少它們會嚴重降低最終性能,尤其是路線完成率。為了進一步說明,駕駛分數表現出顯著的下降,分別從95.30下降到20.64和32.64。這揭示了全局目標導向引導在自動駕駛網絡建模中的至高重要性。此外,我們還比較了當前速度和歷史速度信息對模型性能的影響。我們發現歷史速度的貢獻相當有限,而當前速度信息對于模型的運動規劃至關重要。
Prompt Editing
在本節中,采用反事實干預來手動編輯可能影響模型最終規劃預測的因素。我們構建了針對模型在時間t(Ot,Pt)的輸入的反事實或擾動提示,從而產生新的輸入(Ot,P't),其中O表示觀察到的信息,P表示提示信息。
通過實施這種方法,我們觀察了模型提示在不同人為干預下的表現,使我們能夠定性地分析每個組件的實際影響。
Routing和目標點。僅修改Routing或目標點中的任何一個都無法顯著干預自車的行為。然而,當同時修改Routing和目標點時,可以成功干預和控制自車的行為。即使修改后的規劃路線可能不符合正常駕駛邏輯(例如,逆向行駛或駛向路邊),也是如此。這證明了Routing和目標點對自車行為規劃的聯合影響。
當前速度。將當前速度修改為固定值,分別為0m/s(靜止)和10m/s,并將這些結果與車輛實際行駛速度的輸入進行了比較。當給定速度持續為0m/s時,模型傾向于預測一組非常接近的路點,這導致車輛模仿啟動階段,緩慢向前爬行。當給定速度持續為10m/s時,預測的路點跨度顯著增大,表明車輛有明顯加速。有趣的是,即使在加速后,自車仍然會根據障礙物執行避障操作。
地圖。我們對結構化地圖信息進行了擾動,包括疊加二維高斯噪聲和應用隨機掩碼。通過實驗,我們發現模型對地圖中的擾動表現出很強的魯棒性;對于駛離道路和阻塞情況,并沒有顯著增加。這可能是因為模型已經從BEV特征中獲取了足夠的道路建模信息,導致對地圖輸入的依賴減少。
交通燈。我們嘗試編輯結構化提示中的交通燈顏色信息,并觀察到自車的駕駛行為很容易受到交通燈顏色的影響。例如,當綠燈變為紅燈時,自車會在停止線前減速并剎車。
BEV特征。在測試階段,我們對傳遞給規劃解碼器的BEV特征應用了隨機掩碼。與基線相比,我們發現當BEV缺少部分信息時,即使提供了相關的結構信息,模型也更容易與障礙物發生碰撞、闖紅燈、進入錯誤的車道以及駛離道路。車輛被阻塞的可能性也顯著增加。這表明BEV特征匯集了重要的環境感知信息,這對于車輛安全駕駛是必不可少的。
組件響應的可視化分析
這里進一步通過分析不同組件相對于輸出的梯度,并結合具體場景和自車的行為,可視化了Transformer層的注意力權重,從而深入分析了每個輸入的作用。
通過分析圖2和圖3,可以得出在特定場景中組件級別的相關性結論,這表明模型在固定場景內對不同組件變化的敏感度。具體來說,通過結合環境感知信息,可以觀察到每個標記隨時間變化的獨特模式。例如,當車輛通過交叉路口時,模型對交通信號燈和停車標志更為敏感;當車輛前方出現障礙物時,模型對障礙物信息和路由更為敏感;當車輛轉彎時,指令、路由和地圖的作用更為顯著。此外,我們還注意到,在多個場景中,如轉彎和避障,BEV特征都表現出較高的響應值。
從圖4中,可以觀察到Transformer解碼器在不同組件上的head-level響應。條形圖的排列表明不同的Head可能對應多個組件,并且這些組件的響應偏好表現出高度一致性。例如,head3可能更關注障礙物和BEV特征,而head4可能更關注速度。此外,通過比較條形圖和曲線,可以看到盡管少數條形圖和曲線可能不完全對齊,但在觀察期內,Head對組件的響應總體上保持了時間一致性。利用這種一致性,可以更直觀地分析模型的黑盒行為,并為模型的響應提供合理的與輸入相關的解釋。
為了進一步分析語義特征及其在中間層中的空間分布對最終預測的影響,我們計算了目標特征圖中每個通道k的每個位置相對于兩個方向上預測路徑點的梯度,并執行全局平均池化以獲得每個通道α的權重系數:
其中,p是預測的路徑點,是目標特征圖的第k個通道,Z是其空間大小。然后,我們使用這些權重系數來計算目標特征圖在所有通道上的加權平均值,接著計算路徑點在x和y方向上的L2范數,以獲得最終的梯度加權激活圖F:
我們對兩種特征圖的激活響應進行了分析。首先,分析了BEV特征,如圖5(a)所示。我們發現模型對前方行駛方向上的障礙物具有很強的感知能力。當車輛在交叉路口等待轉彎時,模型對停車線位置和交叉路口的交通流表現出顯著的響應。此外,如圖5(b)所示,前視攝像頭特征的激活圖表明,模型也高度關注交通信號燈、可行駛的車道區域以及交叉路口的車輛。
我們在CARLA的Town05 Long和Town05 Short基準上進行了閉環評估。如表2所示,與其他最先進的方法相比,我們的模型在獲得有競爭力的駕駛評分的同時,也實現了最高的路線完成率。值得注意的是,與其他算法相比,這些算法需要在PID(比例-積分-微分)控制器之后手動設計規則來處理控制信號,以避免違規或陷入困境,我們的端到端方法并沒有融入任何手動規則;相反,我們的模型生成的路徑點直接通過PID控制器轉換為控制信號。