訂閱
糾錯(cuò)
加入自媒體

如何訓(xùn)練好自動(dòng)駕駛端到端模型?

最近有位小伙伴在后臺(tái)留言提問(wèn):端到端算法是怎樣訓(xùn)練的?是模仿學(xué)習(xí)、強(qiáng)化學(xué)習(xí)和離線強(qiáng)化學(xué)習(xí)這三類嗎?其實(shí)端到端(end-to-end)算法在自動(dòng)駕駛、智能體決策系統(tǒng)里,確實(shí)會(huì)用到模仿學(xué)習(xí)(包括行為克隆、逆最優(yōu)控制/逆強(qiáng)化學(xué)習(xí)等)、強(qiáng)化學(xué)習(xí)(RL),以及近年來(lái)越來(lái)越受關(guān)注的離線強(qiáng)化學(xué)習(xí)(OfflineRL/BatchRL)這三類。

什么是“端到端”訓(xùn)練?

端到端(end-to-end)在自動(dòng)駕駛中的應(yīng)用越來(lái)越多,所謂端到端,就是指系統(tǒng)直接把最原始的感知輸入(比如攝像頭圖像、傳感器數(shù)據(jù)等)映射到最終控制輸出(比如車(chē)輛的轉(zhuǎn)向、加減速、剎車(chē)等動(dòng)作)。不像傳統(tǒng)的自動(dòng)駕駛把“感知→識(shí)別→規(guī)劃→控制”拆成好幾個(gè)模塊,每個(gè)模塊各自工作,端到端是把這些步驟合并到一個(gè)整體神經(jīng)網(wǎng)絡(luò)/模型。

這樣做的好處是流程簡(jiǎn)單、模型整體可優(yōu)化、理論上可以在足夠多數(shù)據(jù)+合適訓(xùn)練方法下能學(xué)到復(fù)雜映射邏輯。但對(duì)數(shù)據(jù)量、訓(xùn)練方法、泛化能力要求較高。既然只要有足夠的數(shù)據(jù)就可以訓(xùn)練出足夠聰明的端到端,那該用什么方式教它?這些方式又有什么優(yōu)缺點(diǎn)呢?

模仿學(xué)習(xí)(ImitationLearning)

模仿學(xué)習(xí),也稱示范學(xué)習(xí)(learningfromdemonstration),是端到端訓(xùn)練里最直觀、應(yīng)用最廣的一類方法。它的核心思想是,假設(shè)你已經(jīng)有專家(人類駕駛員/經(jīng)驗(yàn)控制系統(tǒng)/優(yōu)秀策略)做的一系列“狀態(tài)-動(dòng)作”的示范,模型就可以根據(jù)這些示范去學(xué)習(xí)。

在模仿學(xué)習(xí)里,比較經(jīng)典的做法是行為克。˙ehaviorCloning,BC)。也就是把專家數(shù)據(jù)當(dāng)成訓(xùn)練集,把狀態(tài)作為輸入,把專家對(duì)應(yīng)的動(dòng)作作為“標(biāo)簽/groundtruth”,用回歸或分類方式訓(xùn)練網(wǎng)絡(luò)。

為了讓模型不只是簡(jiǎn)單復(fù)制動(dòng)作,還能理解“為什么”這么做,也會(huì)用到“逆最優(yōu)控制/逆強(qiáng)化學(xué)習(xí)”(InverseOptimalControl/InverseReinforcementLearning,IRL)這類方式,這樣可以從專家行為中反推“獎(jiǎng)勵(lì)函數(shù)”(即專家為什么做出這些動(dòng)作、背后的目標(biāo)是什么),然后再基于這個(gè)獎(jiǎng)勵(lì)函數(shù)訓(xùn)練policy。

優(yōu)點(diǎn)和挑戰(zhàn)

模仿學(xué)習(xí)/行為克隆最大的優(yōu)點(diǎn)就是簡(jiǎn)單直接、數(shù)據(jù)利用高效。它可以將復(fù)雜的策略學(xué)習(xí)問(wèn)題轉(zhuǎn)化為標(biāo)準(zhǔn)的監(jiān)督學(xué)習(xí)任務(wù),從而充分利用大量高質(zhì)量的專家示范數(shù)據(jù),快速學(xué)會(huì)一個(gè)在數(shù)據(jù)分布內(nèi)表現(xiàn)合理的策略。在專家行為覆蓋充分、環(huán)境動(dòng)態(tài)相對(duì)穩(wěn)定的場(chǎng)景下,這種方法能取得非常不錯(cuò)的效果。

模仿學(xué)習(xí)/行為克隆帶來(lái)的問(wèn)題也不少。模仿學(xué)習(xí)泛化能力與魯棒性較差,如果模型遇到專家示范里如罕見(jiàn)、危險(xiǎn)或者極端情景(緊急剎車(chē)、非常規(guī)轉(zhuǎn)向、路況突變等等)等從未出現(xiàn)過(guò)的情況,模型因?yàn)橛?xùn)練時(shí)沒(méi)見(jiàn)過(guò)類似場(chǎng)景,也沒(méi)有示范動(dòng)作,可能無(wú)法判斷該怎么做。

行為克隆會(huì)忽略決策過(guò)程的“序列性/時(shí)序相關(guān)性”,它把每一幀狀態(tài)與動(dòng)作當(dāng)獨(dú)立樣本對(duì)待,而現(xiàn)實(shí)中動(dòng)作之間高度相關(guān)、且一個(gè)動(dòng)作會(huì)影響未來(lái)狀態(tài)。這樣做容易導(dǎo)致所謂的分布偏移問(wèn)題,當(dāng)系統(tǒng)因?yàn)橐稽c(diǎn)錯(cuò)誤偏離了專家軌跡,就可能越偏越遠(yuǎn)。

強(qiáng)化學(xué)習(xí)(ReinforcementLearning)

端到端訓(xùn)練中另一種廣泛使用的方法是強(qiáng)化學(xué)習(xí)(RL)。不同于模仿學(xué)習(xí)依賴專家示范/標(biāo)簽數(shù)據(jù),RL是通過(guò)智能體(agent)與環(huán)境交互做動(dòng)作、觀察結(jié)果、得到“獎(jiǎng)勵(lì)”或“懲罰”,從而形成一個(gè)學(xué)習(xí)策略(policy),最終可以使長(zhǎng)期累積的獎(jiǎng)勵(lì)最大化。

當(dāng)將強(qiáng)化學(xué)習(xí)與深度神經(jīng)網(wǎng)絡(luò)相結(jié)合,就發(fā)展出了深度強(qiáng)化學(xué)習(xí)(DeepRL/DRL)。DRL能夠直接將高維的原始感知輸入(如圖像、激光雷達(dá)點(diǎn)云)映射到動(dòng)作或控制信號(hào),從而實(shí)現(xiàn)從感知到?jīng)Q策的端到端學(xué)習(xí)。這種強(qiáng)大的表征和學(xué)習(xí)能力,使其在處理自動(dòng)駕駛、機(jī)器人控制等具有復(fù)雜輸入和連續(xù)決策需求的任務(wù)時(shí),展現(xiàn)出巨大的潛力。

優(yōu)點(diǎn)和挑戰(zhàn)

用強(qiáng)化學(xué)習(xí)訓(xùn)練端到端模型,有一個(gè)明顯好處,那就是它理論上不依賴“專家示范”,而是通過(guò)“試錯(cuò)+獎(jiǎng)勵(lì)機(jī)制”,探索出一個(gè)新的,甚至是“專家都沒(méi)見(jiàn)過(guò)”的策略;在面對(duì)復(fù)雜、多變、動(dòng)態(tài)環(huán)境時(shí),有可能獲得比單純模仿更靈活、更強(qiáng)魯棒性的策略。

但想讓強(qiáng)化學(xué)習(xí)真的落地并不容易。對(duì)于RL來(lái)說(shuō),給出一個(gè)能真實(shí)反映安全、效率、舒適、法規(guī)等綜合目標(biāo)的獎(jiǎng)勵(lì)函數(shù)非常難。如果獎(jiǎng)勵(lì)函數(shù)設(shè)計(jì)不合理,RL容易學(xué)出一些奇怪但獎(jiǎng)勵(lì)高的策略。

RL的訓(xùn)練過(guò)程還依賴大量與環(huán)境的交互和試錯(cuò),導(dǎo)致數(shù)據(jù)采集、仿真與訓(xùn)練的計(jì)算成本和時(shí)耗都非常高。若直接在真實(shí)車(chē)輛上部署訓(xùn)練,則會(huì)因?yàn)橹悄荏w在探索初期產(chǎn)生的策略極不穩(wěn)定,導(dǎo)致危險(xiǎn)行為甚至事故的發(fā)生。即便在模擬器中訓(xùn)練,也存在“模擬↔真實(shí)”的差異(sim-to-realgap)。

端到端RL的可解釋性也比較差,因?yàn)樯窠?jīng)網(wǎng)絡(luò)內(nèi)部沒(méi)有清晰的人類可理解模塊(如“檢測(cè)行人→判斷優(yōu)先級(jí)→規(guī)劃軌跡→控制”),而是一整個(gè)黑箱映射。這樣在出現(xiàn)錯(cuò)誤或異常行為時(shí),很難追溯到具體的原因。

離線強(qiáng)化學(xué)習(xí)(OfflineRL/BatchRL)

近年來(lái),有技術(shù)方案中提出離線強(qiáng)化學(xué)習(xí)(OfflineRL,也叫BatchRL)的方法,以解決將RL用于現(xiàn)實(shí)系統(tǒng)(自動(dòng)駕駛、醫(yī)療、機(jī)器人)時(shí)面臨的安全/資源/實(shí)際交互等難題。離線RL的基本設(shè)定是不讓模型在訓(xùn)練時(shí)與真實(shí)環(huán)境互動(dòng)。而是先收集一批類似于專家示范數(shù)據(jù)或日志的歷史交互數(shù)據(jù),然后用這些靜態(tài)數(shù)據(jù)訓(xùn)練一個(gè)策略。訓(xùn)練過(guò)程中不再需要交互。

離線RL可被視為一種結(jié)合了數(shù)據(jù)驅(qū)動(dòng)與策略優(yōu)化的混合方案。它既像模仿學(xué)習(xí)那樣利用靜態(tài)的歷史交互數(shù)據(jù)進(jìn)行訓(xùn)練,避免了在線試錯(cuò)的安全風(fēng)險(xiǎn)與成本;同時(shí)又保留了傳統(tǒng)強(qiáng)化學(xué)習(xí)的核心機(jī)制,通過(guò)對(duì)數(shù)據(jù)中的狀態(tài)與動(dòng)作價(jià)值進(jìn)行估計(jì)與優(yōu)化,使策略能夠在已有數(shù)據(jù)的基礎(chǔ)上進(jìn)一步提升性能。這種形式使得它能在保證安全的前提下,嘗試學(xué)習(xí)出比行為克隆更優(yōu)、更魯棒的策略。

優(yōu)點(diǎn)和挑戰(zhàn)

離線RL的最大優(yōu)勢(shì)是安全性和可用已有數(shù)據(jù),并可以減少對(duì)真實(shí)世界探索的依賴,對(duì)于自動(dòng)駕駛、醫(yī)療、金融、機(jī)器人等高風(fēng)險(xiǎn)領(lǐng)域尤為適用。它將RL的潛力與現(xiàn)實(shí)約束結(jié)合起來(lái),是一個(gè)很有前景的發(fā)展方向。

但因?yàn)槠溆?xùn)練時(shí)不能再探索新?tīng)顟B(tài)/動(dòng)作,只能依賴數(shù)據(jù)集中已有的狀態(tài)/動(dòng)作組合,這就帶來(lái)“分布偏移”(distributionshift)的問(wèn)題。也就是說(shuō),當(dāng)訓(xùn)練出來(lái)的策略在現(xiàn)實(shí)中使用時(shí),可能遇到數(shù)據(jù)集中沒(méi)有覆蓋到的狀態(tài)/動(dòng)作,從而表現(xiàn)不可靠。為了解決這個(gè)問(wèn)題,有技術(shù)方案中提出引入各種約束/正則/不確定性懲罰/動(dòng)作空間限制/模型-基方法等機(jī)制,從而約束模型行為。

其他學(xué)習(xí)方法

1)自監(jiān)督學(xué)習(xí)(Self-SupervisedLearning)

對(duì)于自動(dòng)駕駛這種依賴大量視覺(jué)/傳感器數(shù)據(jù)的系統(tǒng),數(shù)據(jù)量極大,但手工標(biāo)注不僅費(fèi)時(shí)成本也高。于是有技術(shù)方案中引入自監(jiān)督學(xué)習(xí)思路,讓系統(tǒng)先從大量未標(biāo)注的原始數(shù)據(jù)中學(xué)習(xí)有意義的特征/表示,再用于downstream的端到端控制/決策任務(wù),這樣可以減少對(duì)人工標(biāo)注的依賴。

2)“教師-學(xué)生”(Teacher-Student)/特權(quán)信息蒸餾

這種方法被稱為教師—學(xué)生框架。其采用分階段訓(xùn)練的思路,先利用仿真或數(shù)據(jù)中才可獲得的信息(如精確地圖、物體真實(shí)狀態(tài)等),訓(xùn)練一個(gè)強(qiáng)大的“教師”模型,使其掌握決策與規(guī)劃能力;接著訓(xùn)練一個(gè)“學(xué)生”模型,它僅能使用實(shí)際車(chē)輛可獲取的傳感器輸入信息(如攝像頭圖像、雷達(dá)點(diǎn)云),通過(guò)模仿教師模型的決策輸出,間接學(xué)習(xí)到教師的推理能力。

這樣可以把現(xiàn)實(shí)中可獲取的信息+強(qiáng)模型決策能力結(jié)合起來(lái),降低了直接從原始感知信號(hào)進(jìn)行端到端策略學(xué)習(xí)的難度,是提升系統(tǒng)性能與可靠性的重要途徑。

3)混合/混合階段訓(xùn)練(Hybrid/StagedTraining)

訓(xùn)練端到端模型可以不單靠一種訓(xùn)練方式,也可以組合多種方式,如先用模仿學(xué)習(xí)或自監(jiān)督學(xué)習(xí)做“預(yù)訓(xùn)練/初始化”(pre-training/behaviorcloning/feature-learning),然后再用強(qiáng)化學(xué)習(xí)或離線RL在此基礎(chǔ)上fine-tune/優(yōu)化策略。在這樣的“混合訓(xùn)練pipeline”中,可以兼顧“模仿專家行為”的初步安全/合理性,以及“探索和優(yōu)化策略”的靈活性/魯棒性。

4)進(jìn)化/進(jìn)化式學(xué)習(xí)方法(如Neuroevolution)

除了基于梯度下降的反向傳播與強(qiáng)化學(xué)習(xí),還有一種值得關(guān)注的技術(shù)路徑是進(jìn)化算法在神經(jīng)網(wǎng)絡(luò)優(yōu)化中的應(yīng)用,即神經(jīng)進(jìn)化。該方法不依賴梯度計(jì)算,而是通過(guò)模擬自然進(jìn)化中的種群生成、變異、交叉與適者生存機(jī)制,迭代地優(yōu)化網(wǎng)絡(luò)結(jié)構(gòu)、參數(shù)或行為策略。這種梯度無(wú)關(guān)的優(yōu)化方式,能夠處理不可導(dǎo)或獎(jiǎng)勵(lì)稀疏的復(fù)雜環(huán)境,具備一定的魯棒性與探索優(yōu)勢(shì)。雖然在當(dāng)前自動(dòng)駕駛端到端系統(tǒng)中并非主流方案,但它為應(yīng)對(duì)傳統(tǒng)方法難以解決的優(yōu)化問(wèn)題提供了一種補(bǔ)充思路。

最后的話

對(duì)于端到端而言,訓(xùn)練算法的選擇固然重要,但想讓車(chē)輛學(xué)會(huì)安全、可靠的駕駛能力,更取決于數(shù)據(jù)質(zhì)量、訓(xùn)練策略、場(chǎng)景覆蓋與運(yùn)行監(jiān)控等要素。這些因素有時(shí)會(huì)比模型結(jié)構(gòu)本身更重要。

-- END --

       原文標(biāo)題 : 如何訓(xùn)練好自動(dòng)駕駛端到端模型?

聲明: 本文由入駐維科號(hào)的作者撰寫(xiě),觀點(diǎn)僅代表作者本人,不代表OFweek立場(chǎng)。如有侵權(quán)或其他問(wèn)題,請(qǐng)聯(lián)系舉報(bào)。

發(fā)表評(píng)論

0條評(píng)論,0人參與

請(qǐng)輸入評(píng)論內(nèi)容...

請(qǐng)輸入評(píng)論/評(píng)論長(zhǎng)度6~500個(gè)字

您提交的評(píng)論過(guò)于頻繁,請(qǐng)輸入驗(yàn)證碼繼續(xù)

  • 看不清,點(diǎn)擊換一張  刷新

暫無(wú)評(píng)論

暫無(wú)評(píng)論

    掃碼關(guān)注公眾號(hào)
    OFweek人工智能網(wǎng)
    獲取更多精彩內(nèi)容
    文章糾錯(cuò)
    x
    *文字標(biāo)題:
    *糾錯(cuò)內(nèi)容:
    聯(lián)系郵箱:
    *驗(yàn) 證 碼:

    粵公網(wǎng)安備 44030502002758號(hào)