首頁>科技>

導語:決策智慧是通向更高層次人工智慧的重要途徑。作為決策智慧開源平臺,OpenDILab 是SenseCore 商湯AI大裝置模型層的重要組成部分。我們在OpenDILab平臺上,提供了多個工業級應用,包括用於自動駕駛的高階決策系統、面向複雜遊戲的決策智慧系統及城市級交通訊號控制系統。今天帶大家來了解一下OpenDILab在自動駕駛領域的應用表現。

目錄

1.摘要

2.自動駕駛流程簡介

3.從模仿學習到強化學習:自動駕駛決策AI發展歷程

4.決策AI方法在自動駕駛中的挑戰

摘要

自動駕駛一直是人工智慧的重要應用領域,在人工智慧技術飛速發展的今天,如何將最新的機器學習技術應用到自動駕駛模型的訓練當中,已經成為人工智慧研究的前沿問題。隨著人們對 AI 的要求從感知型逐漸深化到決策型,AI 在自動駕駛任務中的應用能力也成為了衡量決策型 AI 技術發展的標準之一。

OpenDILab此前也建立了 DI-drive 這一基於真實自動駕駛AI case的評測和演算法平臺。本文章綜述了各種決策 AI 方法在自動駕駛環境中的嘗試,總結了它們針對自動駕駛任務所做的各種設計型別,同時也羅列了一些決策 AI 在現實世界部署的關鍵挑戰。

自動駕駛任務流程簡介

首先簡單介紹一下自動駕駛的國際標準,即人們常說的 L1 到 L5 。自動駕駛國際標準最早是由美國國家交通和公路安全管理局(NHTSA)採用的汽車工程協會(SAE)制定的標準。該標準將自動駕駛系統的能力標準分為從 0 級(人類駕駛員擁有完全控制權)到 5 級(車輛完全自行驅動):

級別1(L1):駕駛員和自動駕駛系統共同控制車輛,自動駕駛系統只起到輔助的作用;

級別2(L2):自動駕駛系統開始獨立控制車輛,但駕駛員必須隨時準備進行干預;

級別3(L3):駕駛員可以不必專注於確保車輛的安全性,但系統隨時可能要求立即響應,因此駕駛員仍然必須準備在有限的時間內進行干預;

級別4(L4):與級別 3 相同,但駕駛系統的安全性不需要駕駛員隨時準備響應,因而駕駛員可以離開駕駛座或安全地入睡;

現在 L4 的自動駕駛系統是各公司和機構的研究重點,也是人們所期望的人工智慧駕駛系統所能達到的狀態。一般來說,自動駕駛任務可以分解成如下幾個模組:

環境感知策略決策軌跡規劃運動控制

其中,環境感知包括感知模組定位模組,它們分別透過對車輛上不同感測器和 GPS 訊號等進行分析和處理,得到語義級別的感知輸出,可供後續模組來使用。

在此基礎上,決策模組依據行駛目標和車輛當前位置做出一些高階駕駛決策,如加速減速、直行轉向、跟車變道超車等行為策略。根據決策的具體內容,並結合周圍環境中道路、障礙物的分佈情況,路徑規劃模組會給出一條連續或離散的駕駛目標軌跡、目標速度或目標路徑點。最後,運動控制模組會根據這些目標計算出跟隨的控制訊號,並根據巡線反饋來進行控制矯正。

自動駕駛流程圖,圖中感知模組被細分為了左邊三部分,決策和規劃合併為了第四部分。不同文獻對自動駕駛任務的劃分粒度不同,但整體流程不變。本圖來自文獻 [1]

一個自動駕駛的車輛首先需要了解自己周圍的環境,找到自己在地圖中的定位,才能依據駕駛目標進行決策。隨著近些年深度學習方法在計算機視覺領域的突破進展,自動駕駛中的感知問題越來越多的採用深度學習模型依託大資料訓練解決。

自動駕駛感知主要涉及的 CV 領域包括 2D 和 3D 的檢測、分割、深度估計、運動估計和跟蹤等,其主要用的輸入包括單目和雙目影象、雷達和鐳射雷達、慣性感測器和GPS等。感知模組所用的模型和方法論與其他CV任務基本相同,其中主要的挑戰除了對駕駛這一特定場景的泛化外,還包括多模態的感知資訊融合、利用時序特性更新感知資訊、行人和障礙物的姿態和行為識別以及未來行動軌跡預測等。

感知模組是現在深度學習應用在自動駕駛當中最成熟的模組,不論是理論研究還是各大廠商在實際駕駛環境中的應用都已具有一定的規模,學術界在自動駕駛領域的文章中佔比最多的也是關於感知問題的。然而在後續的如決策、規劃、控制模組中,包含很多傳統監督學習無法完成的任務。

一方面,環境的動態特性和不確定性需要駕駛策略學會針對各種不同的場景給出最佳的決策,這是很難透過有限的資料集學習到的;另一方面,駕駛策略的輸出會作用在執行的環境中,改變車輛的狀態和未來的感知結果。這些問題需要具有序貫決策能力的 AI 來學習在動態環境中進行探索和互動,並依據巡線情況和歷史資訊實時修改決策和動作內容。

以模仿學習和強化學習為代表的決策 AI 方法透過將駕駛問題建模為馬爾可夫決策過程(MDP)來學習如何從環境表示中給出最優的行為。簡而言之,決策 AI 方法將自動駕駛策略建模成了從環境的狀態(State)到動作(Action)的實時對映,駕駛策略透過輸出動作並應用在駕駛環境中,得到下一時刻的狀態(State)和獎勵(Reward)。

強化學習並非直接學習資料提供的標籤動作,而是透過環境反饋的獎勵來學習如何提高在指定任務上的效能,其最佳化目標是使得整個駕駛流程的折扣總回報(discounted reward)最大。在學習過程中,駕駛策略會選擇一些動作並時不時的獲得一些獎勵,並朝著提高其生命週期內獲得的累積獎勵來進行迭代最佳化。隨著時間的推移,駕駛策略透過建立起關於不同狀態-動作對的預期收益的知識來增加其獲取長期獎勵的能力,以此來得到更好的駕駛效能。強化學習是當下機器學習研究中非常火熱的領域,人們對其在自動駕駛的決策、規劃與控制任務中的表現也充滿了預期。

從模仿學習到強化學習:

自動駕駛決策AI的發展

接下來,本文結合一些具體的研究成果簡單梳理下決策 AI 在自動駕駛中的應用發展脈絡和主要的型別。決策 AI 應用於自動駕駛主要分為兩大派系,即分層的模組化(Modular)方法和端到端(End-to-end)方法。

前者將自動駕駛任務從感知、決策、規劃、控制等不同角度分解為多個級別的模組,其中的一個或幾個採用決策 AI 方法訓練的模型替代,其他部分採用傳統方法或傳統方法與決策 AI 融合的方法提升效能並保障穩定性。端到端的方法無需做任務分解,直接用深度網路模型建立從感知資訊到駕駛動作的對映。這兩種設定的優劣目前尚無定論。

模組化方法和端到端方法的對比,本圖來自文獻[2]

一般來說,端到端的方法更符合對深度學習問題的建模形式,依託深度模型的強擬合能力和海量資料及計算資源得到高效能的駕駛策略,但端到端神經網路是一個黑箱模型,其輸出的分佈難以預測,針對一些複雜場景或邊界情況的輸出安全性難以保障。模組化的方法可以透過將自動駕駛流程分成不同的序列模組,指定不同模組的輸入和輸出模態,並透過一些安全檢測機制來將輸出限制在合理的範圍內。同樣的,模組化的設計思路會遇到一些複雜模態下的網路訓練問題,多個網路共同作用在一個任務上也會導致網路訓練難度大大增加。

模仿學習是當下應用在自動駕駛上最成功的決策 AI 方法。模仿學習的目標是從收集到的人類駕駛記錄中學習駕駛員的行為。與強化學習一樣,模仿學習也將自動駕駛策略建模為從環境狀態(State)到動作(Action)的對映,這樣一來人類的駕駛經驗就可以被用作是這一對映的標籤資料。

行為克隆(Behavior Cloning, BC)便是這樣一種有監督的模仿學習方法,在文章 “End-to-end Learning of Driving Models from Large-scale Video Datasets” 中,便是採用這樣的方法建立了端到端的駕駛模型,透過模仿學習從人類駕駛資料中學習策略。

ChauffeurNet [4]是 Google Waymo 提出的一個成功應用於實車的模仿學習自動駕駛方法。ChauffeurNet 建立了一系列共同作用的網路結構,包括提取特徵的 FeatureNet,用於獲取自車目標路徑的 AgentRNN 以及預測他車路徑的 PerceptionRNN 等。透過設計一系列模仿學習的 Loss,從專家資料中學習出效果良好的駕駛策略。ChauffeurNet 採用了 Waymo 公司內部路測和模擬得到的大量資料進行訓練,最終應用在了實車駕駛系統中,進行了閉環評估。

ChauffeurNet 策略網路結構圖

在以自動駕駛模擬器為基礎構建的演算法中,有一類非常成功的方法名為 Conditional Learning。其基本思路是策略分為一個主幹網路和若干個不同的分支輸出,環境的狀態被表示為感知訊號和一個離散的決策訊號,包括直行、轉向、跟隨等命令,策略網路會依據環境輸入的命令在多個分支輸出中選擇一個作為實際的輸出。在訓練時也會根據資料裡的決策訊號只更新對應分支裡的網路引數,但不同分支會共享主幹部分引數。Conditional Imitation Learning [5] 是這一系列方法的鼻祖。在 Carla 自動駕駛模擬器中可以較方便地獲得條件決策訊號,因此後續採用 Carla 模擬器的方法大都沿用了這一設計,如 CILRS [6] 在 CIL 的基礎上添加了和速度有關的處理,更深的網路結構等。

CIL 模型結構

Learning by Cheating(LBC) [7] 是另一個表現優秀的模仿學習演算法。LBC 提出採用兩階段的“欺騙學習”形式來提升模仿學習的精度,首先在俯檢視(Bird-eye View)輸入的特權模型(cheating model)上模仿學習一個性能較好的駕駛策略,隨後用前置圖片輸入的目標模型去學習特權模型的輸入,兩者的輸出均為自車預期的後續駕駛路徑。LBC 透過引入俯檢視這一特權資訊,降低了模仿學習的難度,取得了現階段 Carla 模擬環境中 state-of-the-art 的效果。

LBC 訓練原理

強化學習方法目前正處在探索前進階段。由於強化學習網路更新的複雜性,對自動駕駛任務來說,即便是在模擬器上,從頭開始訓練一個純粹的強化學習模型也是很難的,解決方案一般來說有兩種思路,一種是先採用模仿學習訓練一個初始化的模型權重,再在其基礎上用強化學習訓練得到更好的效能,如 CIRL [8]。另一種是先用監督學習方法訓練一些以感知結果為label的網路,再將其骨幹部分作為特徵提取器,用特徵作為環境的狀態訓練強化學習模型,如 Implicit Affordance [9] 方法。

“Learning to Drive in A Day”[10] 是一個成功將端到端的強化學習方法應用在實車駕駛環境中的工作。該方法將駕駛員視角的影象和狀態作為輸入,設計了 Actor-Critic 結構的強化學習端到端模型,直接輸出車輛控制訊號。其先在一個簡單的模擬環境中訓練,隨後遷移到實車環境中完成訓練。最終實現了可以在一個沒有他車、行人的鄉村環境中安全巡線的實車駕駛系統。

Learning to Drive in A Day

決策AI方法在自動駕駛中的挑戰

在本節中,我們在介紹前述方法的基礎上,總結了一些將決策 AI 方法應用在實際的自動駕駛系統中面臨的一些挑戰和未來的改進方向。

模仿學習中的偏離問題

模仿學習作為一大類決策 AI 的方法,已在自動駕駛任務的模擬、實車環境中取得了一定的成果,然而其根本問題——累計誤差導致的分佈偏移 依然難以得到解決。一般來說專家資料中難以窮舉實際駕駛中所有可能遇到的情況,缺少對於極端狀態和異常狀態的反應,因此在模型運行當中,由於環境的動態特性和噪音導致的駕駛軌跡與專家軌跡的偏移會逐漸累積,最終導致巡線失敗,這大大降低了駕駛系統的安全性。現階段主要採用的方法包括在資料中新增擾動、做資料聚合(DAgger)、生成對抗模仿學習(GAIL)等。

強化學習中的取樣和最佳化問題

取樣效率問題一直是強化學習的一個重要挑戰,對自動駕駛來說這一挑戰更加嚴峻。自動駕駛任務的環境依賴於現實的物理模型。在實車環境中,取樣速率與實際世界執行速率一致;在模擬環境中雖然可以透過並行化加速,但在複雜的模擬器中仍然面臨比較多的困難,並且對計算資源有較大的限制。現在的駕駛方法多采用模仿學習或先訓練感知模型作為強化學習的初始化模型來降低收斂難度。另一種思路是嘗試對感知資訊進行降維,透過學習一個對自動駕駛的決策規劃完備的狀態表示,降低強化學習的訓練難度。

強化學習的 reward 設計問題

自動駕駛的獎勵函式如何設計是一個尚無明確結論的前沿問題。一個駕駛巡線任務一般只在順利完成巡線的時刻才能算是完成了既定目標,能夠收穫獎勵。但這樣的獎勵函式在強化學習環境當中過於稀疏,極大拉高了模型最佳化的難度。因此,實際使用中通常針對巡線狀態設計了可以實時反饋的獎勵函式,並對一些危險行為進行懲罰。在強化學習方法的研究中也有些能解決稀疏 reward 問題的新進展,如課程學習(Curriculum learning)採用從簡單任務到逐漸複雜的難度遞增方式進行訓練;model-based RL 基於模型來進行動作選擇,例如基於 MCTS 的 Alpha-Go 方法;逆強化學習(Inverse RL)從專家策略中學習獎勵函式等。

虛擬環境與真實環境的 gap

對於採用模擬環境訓練的駕駛策略來說,一個很尷尬的現狀就是它們難以部署在實車環境中。模擬環境與真實環境的區別體現在方方面面,除了對感測訊號的模擬、對系統狀態的模擬計算外,模擬環境的執行引擎無論做的多麼逼真也不可能與現實世界一致。很多模擬器上使用的感知訊號在現實世界中往往不能拿到,或者成本高昂。實際駕駛中可能遇到的各種複雜的環境和他車互動情況也難以在模擬器中模擬。【在 OpenDILab 的自動駕駛應用:DI-drive 中對這一問題做了最大程度的努力,DI-drive 構建了“Casezoo”,將實車採集到的駕駛資料和場景轉化到了模擬環境中,並構建了場景的執行邏輯,而非採用一般模擬方法中只通過起始點、終點和路徑來判斷成功與否。Casezoo對於解決模擬 gap 尤其是對他車行為的近似上取得了不小的進步。】

自動駕駛的安全性問題

安全問題是自動駕駛的核心問題,然而對深度學習模型來說,這一點是難以保證的。在端到端的方法中,一個簡單的思路是將網路模型的輸出和傳統方法的輸出做融合,或者只在部分情況下信任網路模型的輸出。在模組化的方法上,一般透過最終的控制器模組來確保駕駛訊號的安全性,也可以在中間輸出中新增安全性檢查。深度學習的訓練集同樣對模型的安全性起著重要作用。一些方法透過在資料集中新增負面專家樣本,或者使用負面駕駛策略(Evil expert)進行模仿學習來提高模型對極端情況的可靠性。但總體上,包含深度學習元件的系統安全性依然是個懸而未決的問題。

參考文獻

[1] Kiran, B. R. , et al. "Deep Reinforcement Learning for Autonomous Driving: A Survey." IEEE Transactions on Intelligent Transportation Systems PP.99(2021):1-18.

[2] Grigorescu, S. , et al. "A survey of deep learning techniques for autonomous driving." Journal of Field Robotics 37.3(2020):362-386.

[3] H. Xu, Y. Gao, F. Yu and T. Darrell, "End-to-End Learning of Driving Models from Large-Scale Video Datasets," 2017 IEEE Conference on Computer Vision and Pattern Recognition (CVPR), 2017, pp. 3530-3538, doi: 10.1109/CVPR.2017.376.

[4] Bansal, Mayank, Alex Krizhevsky, and Abhijit Ogale. "Chauffeurnet: Learning to drive by imitating the best and synthesizing the worst." arXiv preprint arXiv:1812.03079 (2018).

[5] Codevilla, F. , et al. "End-to-end Driving via Conditional Imitation Learning." IEEE (2018).

[6] Codevilla, F. , et al. "Exploring the Limitations of Behavior Cloning for Autonomous Driving." IEEE (2019).

[7] Chen, D. , et al. "Learning by Cheating." (2019).

[8] Liang, X. , et al. CIRL: Controllable Imitative Reinforcement Learning for Vision-Based Self-driving: 15th European Conference, Munich, Germany, September 8–14, 2018, Proceedings, Part VII. Springer, Cham, 2018.

[9] Toromanoff, M. , E. Wirbel , and F. Moutarde . "End-to-End Model-Free Reinforcement Learning for Urban Driving using Implicit Affordances." (2019).

[10] Kendall, A. , et al. "Learning to Drive in a Day." 2019 International Conference on Robotics and Automation (ICRA) 2019.

9
  • 整治雙十一購物亂象,國家再次出手!該跟這些套路說再見了
  • iPhone 13最受期待,手錶耳機大更新,蘋果釋出會搶先看