LVLM賦能端到端!地平線&華科聯(lián)手打造更強(qiáng)自動(dòng)駕駛系統(tǒng)Senna!
本文經(jīng)自動(dòng)駕駛之心公眾號(hào)授權(quán)轉(zhuǎn)載,轉(zhuǎn)載請(qǐng)聯(lián)系出處。
寫(xiě)在前面&筆者的個(gè)人理解
近年來(lái),自動(dòng)駕駛技術(shù)發(fā)展迅速,在駕駛感知、運(yùn)動(dòng)預(yù)測(cè)、規(guī)劃等領(lǐng)域取得了重大進(jìn)展,為實(shí)現(xiàn)更準(zhǔn)確、更安全的駕駛決策奠定了堅(jiān)實(shí)的基礎(chǔ)。其中,端到端自動(dòng)駕駛技術(shù)取得了重大突破,端到端方法以大規(guī)模數(shù)據(jù)為基礎(chǔ),展現(xiàn)出卓越的規(guī)劃能力。此外,大型視覺(jué)語(yǔ)言模型已經(jīng)表現(xiàn)出越來(lái)越強(qiáng)大的圖像理解和推理能力。通過(guò)利用其常識(shí)和邏輯,LVLM 可以分析駕駛環(huán)境并在復(fù)雜場(chǎng)景中做出安全的決策。利用大量駕駛數(shù)據(jù)來(lái)提高 LVLM 在自動(dòng)駕駛中的性能并連接 LVLM 和端到端模型,對(duì)于實(shí)現(xiàn)安全、穩(wěn)健和可推廣的自動(dòng)駕駛至關(guān)重要。
端到端自動(dòng)駕駛的常見(jiàn)做法是直接預(yù)測(cè)未來(lái)軌跡或控制信號(hào),而無(wú)需決策步驟。然而,這種方法可能會(huì)使模型學(xué)習(xí)更加困難,同時(shí)缺乏可解釋性。相比之下,當(dāng)人腦做出詳細(xì)決策時(shí),由分層高級(jí)決策和低級(jí)執(zhí)行組成的系統(tǒng)起著至關(guān)重要的作用。此外,端到端模型通常缺乏常識(shí),在簡(jiǎn)單場(chǎng)景中可能會(huì)出錯(cuò)。例如,它們可能會(huì)將載有交通錐的卡車(chē)誤認(rèn)為是路障,從而觸發(fā)不必要的剎車(chē)。這些限制阻礙了端到端模型的規(guī)劃性能。因此,本文針對(duì)以下涉及到的三個(gè)問(wèn)題進(jìn)行探索。
- 如何將 LVLM 與端到端模型相結(jié)合?目前,LVLM 在自動(dòng)駕駛規(guī)劃中的應(yīng)用主要分為兩類。一是直接使用 LVLM 作為規(guī)劃器來(lái)預(yù)測(cè)軌跡點(diǎn)或控制信號(hào);另一種方法是將 LVLM 與端到端模型相結(jié)合。涉及使用 LVLM 預(yù)測(cè)低頻軌跡點(diǎn),然后通過(guò)端到端模型對(duì)其進(jìn)行細(xì)化以產(chǎn)生高頻軌跡。在本文,我們提出了一種結(jié)構(gòu)化的自動(dòng)駕駛系統(tǒng)Senna,該系統(tǒng)將大型視覺(jué)語(yǔ)言模型與端到端模型相結(jié)合,具體來(lái)說(shuō),大型視覺(jué)語(yǔ)言模型用自然語(yǔ)言預(yù)測(cè)高級(jí)規(guī)劃決策,并將其編碼為高維特征,然后輸入到端到端自動(dòng)駕駛系統(tǒng)中。根據(jù)高級(jí)決策,端到端自動(dòng)駕駛系統(tǒng)生成最終的規(guī)劃軌跡。
- 如何設(shè)計(jì)適合駕駛?cè)蝿?wù)的LVLM?目前流行的LVLM并未專門(mén)針對(duì)多圖像輸入進(jìn)行優(yōu)化。以前用于駕駛?cè)蝿?wù)的 LVLM 要么僅支持前視輸入,這會(huì)限制空間感知并增加安全風(fēng)險(xiǎn),要么可以適應(yīng)多圖像輸入但仍然缺乏詳細(xì)設(shè)計(jì)或有效性驗(yàn)證。我們提出的Senna,它支持多圖像輸入來(lái)編碼環(huán)視數(shù)據(jù),這對(duì)于了解駕駛場(chǎng)景和確保安全至關(guān)重要。
- 如何有效地訓(xùn)練駕駛 LVLM?在開(kāi)發(fā)用于駕駛?cè)蝿?wù)的 LVLM 之后,最后一步是確保有效的訓(xùn)練,這需要合適的數(shù)據(jù)和策略。我們引入了一系列面向規(guī)劃的問(wèn)答,旨在增強(qiáng) VLM 對(duì)駕駛場(chǎng)景中規(guī)劃相關(guān)線索的理解,最終實(shí)現(xiàn)更準(zhǔn)確的規(guī)劃。
針對(duì)上述相關(guān)問(wèn)題的討論,本文提出了一種將 LVLM 與端到端模型相結(jié)合的自動(dòng)駕駛系統(tǒng),實(shí)現(xiàn)了從高級(jí)決策到低級(jí)軌跡預(yù)測(cè)的結(jié)構(gòu)化規(guī)劃。該算法稱之為Senna。并且在nuScenes數(shù)據(jù)集和DriveX大規(guī)模數(shù)據(jù)集上的大量實(shí)驗(yàn)也證明了Senna的SOTA規(guī)劃性能。
論文鏈接:https://arxiv.org/pdf/2410.22313
網(wǎng)絡(luò)結(jié)構(gòu)&技術(shù)細(xì)節(jié)梳理
在詳細(xì)介紹本文提出的算法模型的網(wǎng)絡(luò)架構(gòu)細(xì)節(jié)之前,下圖展示了我們提出的Senna算法模型的整體網(wǎng)絡(luò)結(jié)構(gòu)圖。
整體而言,輸入的場(chǎng)景信息包括多視角圖像序列、用戶指令和導(dǎo)航命令。用戶指令作為提示輸入到Senna-VLM中,其他指令則同時(shí)發(fā)送給Senna-VLM和Senna-E2E。Senna-VLM將圖像和文本信息分別編碼為圖像和文本標(biāo)記,然后由LLM進(jìn)行處理。LLM生成高級(jí)決策,這些決策通過(guò)元?jiǎng)幼骶幋a器編碼為高維特征。Senna-E2E根據(jù)場(chǎng)景信息和Senna-VLM生成的元?jiǎng)幼魈卣黝A(yù)測(cè)最終的規(guī)劃軌跡。我們?cè)O(shè)計(jì)了一系列面向規(guī)劃的QA來(lái)訓(xùn)練Senna-VLM,這些QA不需要人工注釋,并且可以完全通過(guò)自動(dòng)標(biāo)記流程大規(guī)模生成。
駕駛場(chǎng)景理解
了解駕駛場(chǎng)景中的關(guān)鍵因素對(duì)于安全準(zhǔn)確地進(jìn)行規(guī)劃至關(guān)重要。我們?cè)O(shè)計(jì)了一系列面向規(guī)劃的 QA,以增強(qiáng) Senna-VLM 對(duì)駕駛場(chǎng)景的理解。每種類型的 QA 的細(xì)節(jié)如下圖所示。用于生成這些 QA 的原始數(shù)據(jù)(例如 3D 物體檢測(cè)框和物體跟蹤軌跡)可以通過(guò)自動(dòng)注釋系統(tǒng)獲得。此外,描述性 QA 可以由 GPT-4o 等 LVLM 生成。
- 場(chǎng)景描述:我們利用預(yù)先訓(xùn)練的 LVLM 根據(jù)環(huán)視圖像生成駕駛場(chǎng)景描述。為了避免生成與規(guī)劃無(wú)關(guān)的冗余信息,我們?cè)谔崾局兄付怂璧男畔ⅲǎ航煌顩r、環(huán)境(例如城市、鄉(xiāng)村等)、道路類型(例如鋪裝道路、高速公路)、天氣狀況、一天中的時(shí)間以及道路狀況(例如道路是否平坦或是否有任何障礙物)。通過(guò)以這種方式構(gòu)建提示,我們可以獲得簡(jiǎn)潔且信息豐富的場(chǎng)景描述。
- 交通燈信號(hào)檢測(cè):交通信號(hào)燈有多種類型,但這里我們主要關(guān)注最關(guān)鍵的一種:交通信號(hào)燈。交通信號(hào)燈的狀態(tài)可分為四種:紅色、綠色、黃色和無(wú),其中無(wú)表示在自車(chē)前方未檢測(cè)到交通信號(hào)燈。
- VRU識(shí)別:通過(guò)識(shí)別環(huán)境中的VRU,我們?cè)鰪?qiáng)了 Senna 對(duì)這些關(guān)鍵物體的感知,并提高了規(guī)劃的安全性。具體來(lái)說(shuō),我們使用真值 3D 檢測(cè)結(jié)果來(lái)獲取 VRU 的類別和位置,然后以文本形式描述這些信息。位置信息以自車(chē)為中心,包括每個(gè) VRU 相對(duì)于自車(chē)的橫向和縱向距離。我們僅使用 Senna-VLM 來(lái)預(yù)測(cè)距離的整數(shù)部分,以在構(gòu)建距離感知的同時(shí)降低學(xué)習(xí)復(fù)雜性。
- 運(yùn)動(dòng)意圖預(yù)測(cè):準(zhǔn)確預(yù)測(cè)其他車(chē)輛的未來(lái)運(yùn)動(dòng)意圖是安全規(guī)劃的先決條件。我們還采用了元?jiǎng)幼鞣椒?,?Senna 能夠預(yù)測(cè)周?chē)?chē)輛的未來(lái)行為。這增強(qiáng)了 Senna 對(duì)場(chǎng)景動(dòng)態(tài)特征的理解,使其能夠做出更明智的決策。
- 元?jiǎng)幼饕?guī)劃:為了避免使用 LVLM 進(jìn)行精確的軌跡預(yù)測(cè),我們將自身車(chē)輛的未來(lái)軌跡轉(zhuǎn)換為元?jiǎng)幼饕赃M(jìn)行高級(jí)規(guī)劃。具體而言,元?jiǎng)幼靼M向和縱向決策。橫向元?jiǎng)幼靼ㄗ筠D(zhuǎn)、直行和右轉(zhuǎn),而縱向元?jiǎng)幼靼铀?、保持、減速和停止。橫向元?jiǎng)幼魇歉鶕?jù)預(yù)測(cè)的未來(lái)時(shí)間步長(zhǎng) T 內(nèi)的橫向位移確定的,縱向元?jiǎng)幼魇歉鶕?jù)預(yù)測(cè)期間的速度變化確定的。最終的元?jiǎng)幼靼M向和縱向元?jiǎng)幼鳌?/li>
- 規(guī)劃解釋:我們還使用基于車(chē)輛真實(shí)未來(lái)運(yùn)動(dòng)的 LVLM 生成規(guī)劃解釋。換句話說(shuō),我們向 LVLM 告知車(chē)輛的實(shí)際未來(lái)運(yùn)動(dòng)(例如加速和左轉(zhuǎn)),并要求它們分析此類決策背后的原因。在提示中,我們通過(guò)考慮以下影響規(guī)劃的因素來(lái)指導(dǎo)模型分析決策:其他交通參與者的行為、導(dǎo)航信息、道路狀況和交通信號(hào)燈狀態(tài)。
Senna-VLM
Senna-VLM 由四個(gè)組件組成。視覺(jué)編碼器以多視角圖像序列作為輸入并提取圖像特征,然后由Driving Vision Adapter進(jìn)一步編碼和壓縮,產(chǎn)生圖像標(biāo)記。文本編碼器將用戶指令和導(dǎo)航命令編碼為文本標(biāo)記。圖像和文本標(biāo)記均輸入到 LLM 中,后者預(yù)測(cè)高級(jí)決策。在實(shí)踐中,我們使用 Vicuna-v1.5-7b作為我們的 LLM。最后,元?jiǎng)幼骶幋a器對(duì)決策進(jìn)行編碼并輸出元?jiǎng)幼魈卣鳌?/p>
我們使用 CLIP 的 ViT-L/14 作為視覺(jué)編碼器,由于多幅圖像輸入,導(dǎo)致圖像 token 數(shù)量過(guò)多,不僅減慢了 VLM 的訓(xùn)練和推理速度,還會(huì)導(dǎo)致模型崩潰和解碼失敗。因此,我們引入了 Driving Vision Adapter 模塊。該模塊不僅將圖像特征映射到LLM特征空間,而且還對(duì)圖像特征進(jìn)行額外的編碼和壓縮,以減少圖像標(biāo)記的數(shù)量。具體來(lái)說(shuō),我們采用一組圖像查詢來(lái)對(duì)圖像特征進(jìn)行編碼并輸出圖像標(biāo)記:
其中,MHSA代表的是多頭自注意力機(jī)制。
為了讓 Senna-VLM 能夠區(qū)分不同視圖中的圖像特征并建立空間理解,我們?yōu)轳{駛場(chǎng)景設(shè)計(jì)了一個(gè)簡(jiǎn)單而有效的環(huán)視提示。以正面視圖為例,相應(yīng)的提示是:FRONT VIEW: \n image \n,其中 image 是 LLM 的特殊標(biāo)記,在生成過(guò)程中將被圖像標(biāo)記替換。下圖說(shuō)明了我們提出的多視圖提示和圖像編碼方法的設(shè)計(jì)。
最后,我們提出了元?jiǎng)幼骶幋a器,將LLM輸出的高級(jí)決策轉(zhuǎn)換為元?jiǎng)幼魈卣?。元?jiǎng)幼骶幋a器使用一組可學(xué)習(xí)的嵌入實(shí)現(xiàn)從元?jiǎng)幼鞯皆獎(jiǎng)幼魈卣鞯囊粚?duì)一映射,下面的公式說(shuō)明了生成元?jiǎng)幼魈卣鞯倪^(guò)程
隨后,元?jiǎng)幼魈卣鲗⒈惠斎氲?SennaE2E 中以預(yù)測(cè)規(guī)劃軌跡。
Senna-E2E
Senna-E2E 擴(kuò)展了 VADv2。具體來(lái)說(shuō),Senna-E2E 的輸入包括多視角圖像序列、導(dǎo)航命令和元?jiǎng)幼魈卣鳌K扇齻€(gè)模塊組成:感知模塊,用于檢測(cè)動(dòng)態(tài)物體并生成局部地圖;運(yùn)動(dòng)預(yù)測(cè)模塊,用于預(yù)測(cè)動(dòng)態(tài)物體的未來(lái)軌跡;規(guī)劃模塊,使用一組通過(guò)注意力機(jī)制與場(chǎng)景特征交互的規(guī)劃標(biāo)記來(lái)預(yù)測(cè)規(guī)劃軌跡。我們將元?jiǎng)幼魈卣骷蔀?Senna-E2E 的附加交互標(biāo)記。由于元?jiǎng)幼魈卣鞑捎们度胂蛄康男问剑虼?Senna-VLM 可以輕松與其他端到端模型結(jié)合。Senna-E2E的軌跡規(guī)劃過(guò)程可以表述如下
訓(xùn)練策略
我們?yōu)?Senna-VLM 提出了一種三階段訓(xùn)練策略。第一階段是混合預(yù)訓(xùn)練,我們使用單圖像數(shù)據(jù)訓(xùn)練Driving Vision Adapter,同時(shí)保持 Senna-VLM 中其他模塊的參數(shù)不變。這樣可以將圖像特征映射到 LLM 特征空間?;旌鲜侵甘褂脕?lái)自多個(gè)來(lái)源的數(shù)據(jù),包括 LLaVA中使用的指令跟蹤數(shù)據(jù)和我們提出的駕駛場(chǎng)景描述數(shù)據(jù)。第二階段是駕駛微調(diào),我們根據(jù)之前提出的面向規(guī)劃的 QA 對(duì) Senna-VLM 進(jìn)行微調(diào),不包括元?jiǎng)幼饕?guī)劃 QA。在此階段,使用環(huán)視多圖像輸入而不是單圖像輸入。第三階段是規(guī)劃微調(diào),我們僅使用元?jiǎng)幼饕?guī)劃 QA 進(jìn)一步微調(diào) Senna-VLM。
實(shí)驗(yàn)結(jié)果&評(píng)價(jià)指標(biāo)
下圖的實(shí)驗(yàn)結(jié)果展示了 Senna 在高級(jí)規(guī)劃和場(chǎng)景描述方面的表現(xiàn),并與最先進(jìn)的開(kāi)源 LVLM(包括 QwenVL、LLaVA 和 VILA)進(jìn)行了比較。前三行的結(jié)果是通過(guò)直接評(píng)估原始模型獲得的??梢钥闯?,使用預(yù)訓(xùn)練權(quán)重的模型在駕駛?cè)蝿?wù)上表現(xiàn)不佳,因?yàn)樗鼈兊挠?xùn)練目標(biāo)是面向一般理解和對(duì)話,而不是專門(mén)針對(duì)駕駛相關(guān)任務(wù)而量身定制的。
為了進(jìn)一步驗(yàn)證 Senna 的優(yōu)勢(shì),我們還使用相同的訓(xùn)練流程在 DriveX 數(shù)據(jù)集上對(duì)這些模型進(jìn)行了微調(diào)。Senna 在高級(jí)規(guī)劃和場(chǎng)景描述方面均優(yōu)于其他方法。與其他方法的最佳結(jié)果相比,Senna 將規(guī)劃準(zhǔn)確率提高了 10.44%。此外,在減速等最關(guān)鍵的駕駛安全決策中,F(xiàn)1 得分從 52.68 提升至 61.99,提升幅度達(dá) 17.67%,凸顯了Senna在駕駛場(chǎng)景分析和空間理解方面的卓越能力。
此外,我們?cè)谙卤碇姓故玖?Senna 在 nuScenes 數(shù)據(jù)集上的軌跡規(guī)劃性能。為了進(jìn)行公平比較,我們用 VAD 替換 VADv2 作為端到端模型。與之前將 LVLM 與端到端模型相結(jié)合的 SOTA 方法相比,Senna 有效地將平均規(guī)劃位移誤差降低了 29.03%,碰撞率降低了 20.00%。為了避免與使用自車(chē)狀態(tài)特征相關(guān)的潛在問(wèn)題,我們還報(bào)告了未使用自車(chē)狀態(tài)特征的結(jié)果。通過(guò)使用來(lái)自 DriveX 數(shù)據(jù)集的預(yù)訓(xùn)練權(quán)重初始化模型并在 nuScenes 數(shù)據(jù)集上進(jìn)行微調(diào),Senna 實(shí)現(xiàn)了最先進(jìn)的規(guī)劃性能。與 VAD 相比,平均規(guī)劃位移誤差顯著降低了 40.28%,平均碰撞率降低了 45.45%。通過(guò)在 DriveX 數(shù)據(jù)集上進(jìn)行預(yù)訓(xùn)練,然后在 nuScenes 數(shù)據(jù)集上進(jìn)行微調(diào),Senna 的性能得到顯著增強(qiáng),展示了其強(qiáng)大的泛化和可轉(zhuǎn)移性。
下表展示了DriveX 數(shù)據(jù)集上的軌跡規(guī)劃結(jié)果。除了端到端模型 VADv2 之外,我們還引入了兩個(gè)額外的比較模型。第一個(gè)模型將真值規(guī)劃元?jiǎng)幼髯鳛轭~外的輸入特征,旨在驗(yàn)證我們提出的結(jié)構(gòu)化規(guī)劃策略的性能上限。第二個(gè)模型是我們復(fù)現(xiàn)的 DriveVLM,它預(yù)測(cè)低頻軌跡而不是元?jiǎng)幼鳎洚?dāng) LVLM 和端到端模型之間的連接器。
通過(guò)實(shí)驗(yàn)結(jié)果可以看出,利用真值規(guī)劃元?jiǎng)幼鞯?VADv2 實(shí)現(xiàn)了最低的規(guī)劃誤差,驗(yàn)證了我們提出的結(jié)構(gòu)化規(guī)劃策略的有效性。預(yù)測(cè)低頻軌跡作為連接器的 DriveVLM僅比 VADv2 顯示出微小的改進(jìn)。相比之下,我們提出的 Senna 在所有方法中提供了最佳的規(guī)劃性能,將平均規(guī)劃位移誤差大大降低了 14.27%。
結(jié)論
在本文中,我們提出了LVLM 與端到端模型相結(jié)合,用于結(jié)構(gòu)化規(guī)劃,從高級(jí)決策到低級(jí)軌跡規(guī)劃的自動(dòng)駕駛系統(tǒng)Senna,大量的實(shí)驗(yàn)結(jié)果證明了我們提出的Senna算法模型的卓越性能,凸顯了通過(guò)基于語(yǔ)言的規(guī)劃將 LVLM 與端到端模型相結(jié)合的潛力。