制造真正的自動(dòng)駕駛汽車(chē)(即能夠在任何要求的環(huán)境中安全駕駛)的關(guān)鍵是更加重視關(guān)于其軟件的自學(xué)能力。換句話(huà)說(shuō),自動(dòng)駕駛汽車(chē)首先是人工智能問(wèn)題,需要一個(gè)非常具體的機(jī)器學(xué)習(xí)開(kāi)發(fā)技能。而強(qiáng)化學(xué)習(xí)是機(jī)器學(xué)習(xí)的一個(gè)重要分支,是多學(xué)科多領(lǐng)域交叉的一個(gè)產(chǎn)物,它的本質(zhì)是解決決策(decision making)問(wèn)題,即自動(dòng)進(jìn)行決策,并且可以做連續(xù)決策。今天人工智能頭條給大家介紹強(qiáng)化學(xué)習(xí)在自動(dòng)駕駛的一個(gè)應(yīng)用案例,無(wú)需 3D 地圖也無(wú)需規(guī)則,讓汽車(chē)從零開(kāi)始在二十分鐘內(nèi)學(xué)會(huì)如何自動(dòng)駕駛。
▌前言
強(qiáng)化學(xué)習(xí)是通過(guò)對(duì)未知環(huán)境一邊探索一邊建立環(huán)境模型以及學(xué)得一個(gè)最優(yōu)策略。強(qiáng)化學(xué)習(xí)具有以下特征:
沒(méi)有監(jiān)督數(shù)據(jù),只有獎(jiǎng)勵(lì)(reward)信號(hào);
獎(jiǎng)勵(lì)信號(hào)不一定是實(shí)時(shí)的,而很可能是延后的,有時(shí)甚至延后很多;
時(shí)間(序列)是一個(gè)重要因素;
智能體當(dāng)前的行為影響后續(xù)接收到的數(shù)據(jù)。
而有監(jiān)督學(xué)習(xí)則是事先給你了一批樣本,并告訴你哪些樣本是優(yōu)的哪些是劣的(樣本的標(biāo)記信息),通過(guò)學(xué)習(xí)這些樣本而建立起對(duì)象的模型及其策略。在強(qiáng)化學(xué)習(xí)中沒(méi)有人事先告訴你在什么狀態(tài)下應(yīng)該做什么,只有在摸索中反思之前的動(dòng)作是否正確來(lái)學(xué)習(xí)。從這個(gè)角度看,可以認(rèn)為強(qiáng)化學(xué)習(xí)是有時(shí)間延遲標(biāo)記信息的有監(jiān)督學(xué)習(xí)。
其他許多機(jī)器學(xué)習(xí)算法中學(xué)習(xí)器都是學(xué)得怎樣做,而強(qiáng)化學(xué)習(xí)是在嘗試的過(guò)程中學(xué)習(xí)到在特定的情境下選擇哪種行動(dòng)可以得到最大的回報(bào)。
簡(jiǎn)而言之,強(qiáng)化學(xué)習(xí)采用的是邊獲得樣例邊學(xué)習(xí)的方式,在獲得樣例之后更新自己的模型,利用當(dāng)前的模型來(lái)指導(dǎo)下一步的行動(dòng),下一步的行動(dòng)獲得獎(jiǎng)勵(lì)之后再更新模型,不斷迭代重復(fù)直到模型收斂。
強(qiáng)化學(xué)習(xí)有廣泛的應(yīng)用:像直升機(jī)特技飛行、經(jīng)典游戲、投資管理、發(fā)電站控制、讓機(jī)器人模仿人類(lèi)行走等等。
英國(guó)初創(chuàng)公司 wayve 日前發(fā)表的一篇文章 Learning to drive in a day,闡述了強(qiáng)化學(xué)習(xí)在自動(dòng)駕駛汽車(chē)中的應(yīng)用。Wayve是英國(guó)兩位劍橋大學(xué)的機(jī)器學(xué)習(xí)博士創(chuàng)立的英國(guó)自動(dòng)駕駛汽車(chē)公司,正在建立“端到端的機(jī)器學(xué)習(xí)算法”,它聲稱(chēng)使用的方法與大部分自駕車(chē)的思維不同。具體來(lái)說(shuō),這家公司認(rèn)為制造真正的自動(dòng)駕駛汽車(chē)的關(guān)鍵在于軟件的自學(xué)能力,而其他公司使用更多的傳感器并不能解決問(wèn)題,它需要的是更好的協(xié)調(diào)。
自動(dòng)駕駛的人工智能包含了感知、決策和控制三個(gè)方面。
感知指的是如何通過(guò)攝像頭和其他傳感器的輸入解析出周?chē)h(huán)境的信息,例如有哪些障礙物、障礙物的速度和距離、道路的寬度和曲率等。而感知模塊不可能做到完全可靠。Tesla 的無(wú)人駕駛事故就是在強(qiáng)光的環(huán)境中感知模塊失效導(dǎo)致的。強(qiáng)化學(xué)習(xí)可以做到,即使在某些模塊失效的情況下也能做出穩(wěn)妥的行為。強(qiáng)化學(xué)習(xí)可以比較容易地學(xué)習(xí)到一系列的行為。自動(dòng)駕駛中需要執(zhí)行一系列正確的行為才能成功的駕駛。如果只有標(biāo)注數(shù)據(jù),學(xué)習(xí)到的模型每個(gè)時(shí)刻偏移了一點(diǎn),到最后可能會(huì)偏移非常多,產(chǎn)生毀滅性的后果。強(qiáng)化學(xué)習(xí)能夠?qū)W會(huì)自動(dòng)修正偏移。
自動(dòng)駕駛的決策是指給定感知模塊解析出的環(huán)境信息如何控制汽車(chē)的行為達(dá)到駕駛的目標(biāo)。例如,汽車(chē)加速、減速、左轉(zhuǎn)、右轉(zhuǎn)、換道、超車(chē)都是決策模塊的輸出。決策模塊不僅需要考慮到汽車(chē)的安全性和舒適性,保證盡快到達(dá)目標(biāo)地點(diǎn),還需要在旁邊的車(chē)輛惡意的情況下保證乘客的安全。因此,決策模塊一方面需要對(duì)行車(chē)的計(jì)劃進(jìn)行長(zhǎng)期規(guī)劃,另一方面需要對(duì)周?chē)?chē)輛和行人的行為進(jìn)行預(yù)測(cè)。而且,無(wú)人駕駛中的決策模塊對(duì)安全性和可靠性有嚴(yán)格的要求?,F(xiàn)有的無(wú)人駕駛的決策模塊一般是根據(jù)規(guī)則構(gòu)建的。雖然基于規(guī)則的構(gòu)建可以應(yīng)付大部分的駕駛情況,對(duì)于駕駛中可能出現(xiàn)的各種各樣的突發(fā)情況,基于規(guī)則的決策系統(tǒng)不可能枚舉到所有突發(fā)情況。我們需要一種自適應(yīng)的系統(tǒng)來(lái)應(yīng)對(duì)駕駛環(huán)境中出現(xiàn)的各種突發(fā)情況。
現(xiàn)在,讓我們來(lái)看看 Wayve 的自動(dòng)駕駛汽車(chē)的解決方案有什么新穎的地方。
▌從零開(kāi)始學(xué)會(huì)如何通過(guò)試錯(cuò)法來(lái)學(xué)會(huì)自動(dòng)駕駛
還記得小時(shí)候?qū)W騎自行車(chē)的情景嗎?又興奮,又有一點(diǎn)點(diǎn)焦慮。你可能是第一次坐在自行車(chē)上,踩著踏板,大人跟隨在你身邊,準(zhǔn)備在你失去平衡的時(shí)候扶住你。在一些搖擺不定的嘗試之后,你可能設(shè)法保持了幾米距離的平衡。幾個(gè)小時(shí)過(guò)去后,你可能在公園里的沙礫和草地上能夠飛馳了。大人只會(huì)給你一些簡(jiǎn)短的提示。你不需要一張公園的密集 3D 地圖,也不需要在頭上裝一個(gè)高保真激光攝像頭。你也不需要遵循一長(zhǎng)串的規(guī)則就能在自行車(chē)上保持平衡。大人只是為你提供了一個(gè)安全的環(huán)境,讓你學(xué)會(huì)如何根據(jù)你所見(jiàn)來(lái)決定你的行為,從而成功學(xué)會(huì)騎車(chē)。
如今,自動(dòng)駕駛汽車(chē)安裝了大量的傳感器,并通過(guò)緩慢的開(kāi)發(fā)周期中被告知如何通過(guò)一長(zhǎng)串精心設(shè)計(jì)的規(guī)則來(lái)駕駛車(chē)輛。在本文中,我們將回到基礎(chǔ),讓汽車(chē)從零開(kāi)始學(xué)會(huì)如何通過(guò)試錯(cuò)法來(lái)學(xué)會(huì)自動(dòng)駕駛,就像你學(xué)騎自行車(chē)一樣。
看看我們做了什么:只用了 15~20 分鐘,我們就能夠教會(huì)一輛汽車(chē)從零開(kāi)始沿著一條車(chē)道行駛,而這只有當(dāng)安全駕駛員接手時(shí)作為訓(xùn)練反饋才使用。
譯注:試錯(cuò)(trial and error)是一種用來(lái)解決問(wèn)題、獲取知識(shí)的常見(jiàn)方法。此種方法可視為簡(jiǎn)易解決問(wèn)題的方法中的一種,與使用洞察力和理論推導(dǎo)的方法正好相反。在試錯(cuò)的過(guò)程中,選擇一個(gè)可能的解法應(yīng)用在待解問(wèn)題上,經(jīng)過(guò)驗(yàn)證后如果失敗,選擇另一個(gè)可能的解法再接著嘗試下去。整個(gè)過(guò)程在其中一個(gè)嘗試解法產(chǎn)生出正確結(jié)果時(shí)結(jié)束。
像學(xué)騎自行車(chē)的方法只有一種:試錯(cuò)。雖然簡(jiǎn)單,但這個(gè)思想實(shí)驗(yàn)突出了人類(lèi)智能的一些重要方面。對(duì)于某些任務(wù),我們采用試錯(cuò)法;而對(duì)于其他任務(wù)我們則使用規(guī)劃的方法。在強(qiáng)化學(xué)習(xí)中也出現(xiàn)了類(lèi)似的現(xiàn)象。按照強(qiáng)化學(xué)習(xí)的說(shuō)法,實(shí)證結(jié)果表明,一些任務(wù)更適合無(wú)模型(試錯(cuò))方法,而另一些則更適合基于模型的(規(guī)劃)方法。
▌無(wú)需密集 3D 地圖,無(wú)需手寫(xiě)規(guī)則
這是自動(dòng)駕駛汽車(chē)在網(wǎng)上學(xué)習(xí)的第一個(gè)例子,每一次嘗試都會(huì)讓它變得更好。那么,我們是怎么做到的呢?
我們采用了一種流行的無(wú)模型深度強(qiáng)化學(xué)習(xí)算法(深度確定性策略梯度:deep deterministic policy gradients,DDPG)來(lái)解決車(chē)道跟蹤問(wèn)題。我們的模型輸入是單目鏡攝像頭圖像。我們的系統(tǒng)迭代了三個(gè)過(guò)程:探索、優(yōu)化和評(píng)估。
譯注:DDPG,由DeepMind的Lillicrap 等于 2016 年提出,全稱(chēng)是:Deep Deterministic Policy Gradient,是將深度學(xué)習(xí)神經(jīng)網(wǎng)絡(luò)融合進(jìn)DPG的策略學(xué)習(xí)方法。而 DPG 是由 DeepMind 的 D.Silver 等人在 2014 年提出的: Deterministic Policy Gradient,即確定性的行為策略。在此之前,業(yè)界普遍認(rèn)為,環(huán)境模型無(wú)關(guān)(model-free)的確定性策略是不存在的,在 2014 年的 DPG 論文中,D.Silver 等通過(guò)嚴(yán)密的數(shù)學(xué)推導(dǎo),證明了 DPG 的存在。DDPG 相對(duì)于 DPG 的核心改進(jìn)是:采用卷積神經(jīng)網(wǎng)絡(luò)作為策略函數(shù)μ 和 Q 函數(shù)的模擬,即策略網(wǎng)絡(luò)和 Q 網(wǎng)絡(luò);然后使用深度學(xué)習(xí)的方法來(lái)訓(xùn)練上述神經(jīng)網(wǎng)絡(luò)。
DDPG 算法是利用 QDN 擴(kuò)展 Q 學(xué)習(xí)算法的思路對(duì) DPG 方法進(jìn)行改造,提出的一種基于行動(dòng)者-評(píng)論家(Actor-Critic,AC)框架的算法,該算法可用于解決連續(xù)動(dòng)作空間上的 DRL 問(wèn)題。
可參考論文《Continuous control with deep reinforcementlearning》(https://arxiv.org/abs/1509.02971)
無(wú)模型的 DDPG 方法學(xué)習(xí)更慢,但最終優(yōu)于基于模型的方法。
我們的網(wǎng)絡(luò)架構(gòu)是一個(gè)深度網(wǎng)絡(luò),有 4 個(gè)卷積層和 3 個(gè)完全連接的層,總共略低于 10k 個(gè)參數(shù)。為了比較,現(xiàn)有技術(shù)的圖像分類(lèi)體系結(jié)構(gòu)有數(shù)百萬(wàn)個(gè)參數(shù)。
所有的處理都是在汽車(chē)上的一個(gè)圖形處理單元(GPU)上執(zhí)行的。
在危險(xiǎn)的真實(shí)環(huán)境中使用真正的機(jī)器人會(huì)帶來(lái)很多新問(wèn)題。為了更好地理解手頭的任務(wù),并找到合適的模型架構(gòu)和超參數(shù),我們進(jìn)行了大量的仿真測(cè)試。
上組動(dòng)圖所示,是我們的車(chē)道跟隨不同角度顯示的模擬環(huán)境的示例。這個(gè)算法只能看到駕駛員的視角,也就是圖中有青色邊框的圖像。在每一次模擬中,我們都會(huì)隨機(jī)生成一條彎曲的車(chē)道,以及道路紋理和車(chē)道標(biāo)記。智能體會(huì)一直探索,直到模擬終止時(shí)它才離開(kāi)。然后根據(jù)手機(jī)到的數(shù)據(jù)進(jìn)行策略?xún)?yōu)化,我們重復(fù)這樣的步驟。
在安全駕駛員接管之前,汽車(chē)行駛的距離與模擬探索的數(shù)量有關(guān)。
我們使用模擬測(cè)試來(lái)嘗試不同的神經(jīng)網(wǎng)絡(luò)架構(gòu)和超參數(shù),直到我們找到一致的設(shè)置,這些設(shè)置在很少的訓(xùn)練集中,也就是幾乎沒(méi)有數(shù)據(jù)的情況下,始終如一地解決了車(chē)道跟隨的問(wèn)題。例如,我們的發(fā)現(xiàn)之一,是使用自動(dòng)編碼器重構(gòu)損失訓(xùn)練卷積層可以顯著提高訓(xùn)練的穩(wěn)定性和數(shù)據(jù)效率。
▌潛在的影響力
我們的方法的潛在影響是巨大的。想象一下,部署一支自動(dòng)駕駛車(chē)隊(duì),使用一種最初只有人類(lèi)司機(jī) 95% 質(zhì)量的駕駛算法會(huì)怎么樣。這樣一個(gè)系統(tǒng)將不會(huì)像我們的演示視頻中的隨機(jī)初始化模型那樣搖搖晃晃地行駛,而是幾乎能夠處理交通信號(hào)燈、環(huán)形交叉路口、十字路口等道路情況。經(jīng)過(guò)一天的駕駛和人類(lèi)安全駕駛員接管的在線(xiàn)改進(jìn)后,系統(tǒng)也許可以提高到 96%。一個(gè)星期以后,提高到 98%。一個(gè)月以后,提高到99%。幾個(gè)月以后,這個(gè)系統(tǒng)可能會(huì)變得超人類(lèi),因?yàn)樗鼜脑S多不同的安全駕駛員的反饋中受益得以提高。
今天的自動(dòng)駕駛汽車(chē)仍停留在良好的狀態(tài),但性能水平還不夠好。在本文中,我們?yōu)榈谝粋€(gè)可行的框架提供了證據(jù),以便快速改善駕駛算法,使其從不堪造就到可安全行駛。通過(guò)巧妙的試錯(cuò)法快速學(xué)習(xí)解決問(wèn)題的能力,使人類(lèi)擁有具備進(jìn)化和生存能力的萬(wàn)能機(jī)器。我們通過(guò)各種各樣的模仿來(lái)學(xué)習(xí),從騎自行車(chē)到學(xué)習(xí)烹飪,我們經(jīng)歷了很多試錯(cuò)的過(guò)程。
DeepMind 向我們展示了深度強(qiáng)化學(xué)習(xí)方法可以在許多游戲中實(shí)現(xiàn)超人類(lèi)的表現(xiàn),包括圍棋、象棋和電腦游戲,幾乎總是比任何基于規(guī)則的系統(tǒng)表現(xiàn)的更好。我們發(fā)現(xiàn),類(lèi)似的哲學(xué)在現(xiàn)實(shí)世界中也是可能的,特別是在自動(dòng)駕駛汽車(chē)中。有一點(diǎn)需要注意的是,DeepMind 的 Atari算法需要數(shù)百萬(wàn)次試驗(yàn)才能完成一個(gè)任務(wù)。值得注意的是,我們?cè)诓坏?20 次試驗(yàn)中,一貫都學(xué)會(huì)了沿著車(chē)道行駛。
▌結(jié)束語(yǔ)
20 分鐘,我們從零開(kāi)始,學(xué)會(huì)了沿著車(chē)道行駛。想象一下,我們一天可以學(xué)到什么?
Wayve 的理念是構(gòu)建機(jī)器人智能,不需要大量的模型、花哨的傳感器和無(wú)盡的數(shù)據(jù)。我們需要的是一個(gè)聰明的訓(xùn)練過(guò)程,可以快速有效地學(xué)習(xí),就像我們上面的視頻一樣。人工設(shè)計(jì)的自動(dòng)駕駛技術(shù)在性能上達(dá)到了令人不滿(mǎn)意的玻璃天花板。Wayve 正視圖通過(guò)更智能的機(jī)器學(xué)習(xí)來(lái)開(kāi)發(fā)自動(dòng)駕駛功能。
-
自動(dòng)駕駛
+關(guān)注
關(guān)注
782文章
13621瀏覽量
165939 -
強(qiáng)化學(xué)習(xí)
+關(guān)注
關(guān)注
4文章
265瀏覽量
11197
原文標(biāo)題:講真?一天就學(xué)會(huì)了自動(dòng)駕駛——強(qiáng)化學(xué)習(xí)在自動(dòng)駕駛的應(yīng)用
文章出處:【微信號(hào):AI_Thinker,微信公眾號(hào):人工智能頭條】歡迎添加關(guān)注!文章轉(zhuǎn)載請(qǐng)注明出處。
發(fā)布評(píng)論請(qǐng)先 登錄
相關(guān)推薦
評(píng)論