打造全自動駕駛汽車所需要的技術(shù)堆棧是什么?企業(yè)和研究人員對這個問題的答案有著不同的理解。自動駕駛的實現(xiàn)方法多種多樣,從純攝像頭加計算機視覺、再到計算機視覺加先進傳感器等各類組合。
特斯拉一直是自動駕駛純視覺方法的擁護者。在今年的計算機視覺與模式識別大會(CVPR)上,公司首席AI科學家Andrej Karpathy解釋了個中原因。
在CVPR 2021自動駕駛研討會上,過去幾年負責特斯拉自動駕駛工作的Karpathy詳盡介紹了公司如何開發(fā)出僅需視頻輸入、即可理解汽車周邊環(huán)境的深度學習系統(tǒng)。此外,他還解釋了特斯拉為何在同樣使用視覺技術(shù)的自動駕駛汽車的一眾廠商中處于領(lǐng)先地位。
上周末,我們在CVPR上就近期特斯拉Autopilot項目的工作做出演講,介紹如何通過視覺神經(jīng)網(wǎng)絡(luò)提供高準確度的深度、速度與加速度識別功能。這項工作的實現(xiàn)前提包括:可處理上百萬車輛的數(shù)據(jù)引擎、強大的AI團隊以及超級計算機。
— Andrej Karpathy (@karpathy) 2021年6月21日
通用計算機視覺系統(tǒng)
深度神經(jīng)網(wǎng)絡(luò)是自動駕駛技術(shù)堆棧的主要組成部分之一。這套神經(jīng)網(wǎng)絡(luò)負責分析車載攝像頭捕捉到的道路、標識、汽車、障礙物以及行人等對象。
但深度學習模型在檢測圖像中的對象時也往往會出錯。也正因為如此,大多數(shù)自動駕駛汽車廠商(包括Alphabet旗下Waymo)傾向于使用激光雷達,這是一種通過向各個方向發(fā)射激光束來創(chuàng)建汽車周邊3D地圖的設(shè)備。激光雷達的存在,能夠提供大量用于填補神經(jīng)網(wǎng)絡(luò)空白的附加信息。
然而,將激光雷達添加至自動駕駛堆棧會進一步提升整個體系的復(fù)雜性。Karpathy解釋道,“首先需要用激光雷達預(yù)先繪制環(huán)境地圖,之后再創(chuàng)建一張高清地圖,添加所有車道、道路間連接方式以及交通指示燈。這樣在測試期間,只需定位到對應(yīng)地圖即可引導車輛四處行駛。”
但要為自動駕駛汽車創(chuàng)建各個區(qū)域的高精度地圖無疑相當困難。Karpathy表示,“這些高清激光雷達地圖的收購、構(gòu)建與維護工作成本極高,難以規(guī)?;瘮U展。這意味著我們很難讓整體基礎(chǔ)設(shè)施持續(xù)保持最新狀態(tài)。”
特斯拉的選擇,是不在自動駕駛堆棧當中使用激光雷達與高清地圖。Karpathy指出,“利用環(huán)繞車體的八個攝像頭及拍攝的視頻,周邊一切都將在車內(nèi)得到體現(xiàn)。”
自動駕駛技術(shù)必須弄清楚車道在哪里、交通燈在哪里、當前顯示為什么狀態(tài)、哪些會影響車輛自身。另外,這套技術(shù)方案還得有能力在不存在任何預(yù)定義道路導航信息的前提下完成定位工作。
Karpathy坦言,基于純視覺元素實現(xiàn)自動駕駛的技術(shù)難度確實更高,因為只有神經(jīng)網(wǎng)絡(luò)才能單純基于視頻輸入的情況下運行良好。但他也提到,“只要能讓這套系統(tǒng)運作起來,它就會成為一種通用式的視覺系統(tǒng),足以部署在地球上的任何區(qū)域。”
憑借通用視覺系統(tǒng),你的汽車不再需要任何輔助設(shè)備。Karpathy表示,特斯拉已經(jīng)在朝著這個方向前進。此前,該公司一直使用雷達加攝像頭的組合引導車輛完成自動駕駛。但近期,特斯拉開始銷售不安裝任何雷達的車輛。
Karpathy提到,“我們移除了雷達裝置,后續(xù)車輛只依靠視覺識別引導駕駛。”他還補充道,特斯拉的深度學習系統(tǒng)的自動駕駛效果已經(jīng)達到雷達的上百倍,到這個階段雷達本身已經(jīng)成為一種拖累并“產(chǎn)生噪聲”。
監(jiān)督學習
而反對純計算機視覺方法的主要論點,在于沒有激光雷達縱深圖的幫助,神經(jīng)網(wǎng)絡(luò)往往很難準確實現(xiàn)測距與縱深估算。
Karpathy指出,“很明顯,人類駕駛依靠的就是視覺,所以我們的神經(jīng)網(wǎng)絡(luò)能夠處理視覺輸入,借此理解我們周遭物體的縱深與速度。但最大的問題在于合成神經(jīng)網(wǎng)絡(luò)能否達成相同的效果。在我看來,過去幾個月來我們一直在努力解決這個問題?,F(xiàn)在,我們能夠就此給出明確而肯定的答案。”
特斯拉的工程師們希望創(chuàng)建一套深度學習系統(tǒng),由其實現(xiàn)物體、縱深、速度與加速度檢測。他們決定把這項挑戰(zhàn)視為監(jiān)督學習問題,其中神經(jīng)網(wǎng)絡(luò)在通過帶有注釋的數(shù)據(jù)進行訓練之后,即可學會檢測對象及其相關(guān)屬性。
為了訓練自己的深度學習架構(gòu),特斯拉團隊需要一套包含數(shù)百萬段視頻的海量數(shù)據(jù)集,并保證其中包含關(guān)于對象及屬性的相關(guān)注釋。事實上,為自動駕駛汽車創(chuàng)建數(shù)據(jù)集確實特別棘手,工程師們必須保證其中涵蓋種種罕見的道路規(guī)劃與極端狀況。
Karpathy表示,“要在實踐層面獲得成功保障,我們需要一套龐大、清潔、多樣化的數(shù)據(jù)集,這樣才能訓練出可靠的大型神經(jīng)網(wǎng)絡(luò)。”
自動標記數(shù)據(jù)集
特斯拉在全球售出數(shù)百萬輛配備有攝像頭的汽車,因此在收集用于汽車視覺深度學習模型訓練的數(shù)據(jù)方面處于優(yōu)勢地位。特斯拉自動駕駛團隊已經(jīng)積累下1.5 PB數(shù)據(jù),其中包括100萬段10秒視頻、60億個邊界框、縱深以及速度標記對象。
但對這樣規(guī)模的數(shù)據(jù)集進行標記是個巨大的挑戰(zhàn)。其中一種方法,是通過數(shù)據(jù)標記公司或者Amazon Turk等在線平臺對數(shù)據(jù)內(nèi)容進行手動注釋。但這需要大量手動工作、成本相當可觀,而且整個過程極為緩慢。
相反,特斯拉團隊決定使用一種自動標記技術(shù),將神經(jīng)網(wǎng)絡(luò)、雷達數(shù)據(jù)與人工審查結(jié)合起來。由于數(shù)據(jù)集采用離線注釋機制,神經(jīng)網(wǎng)絡(luò)可以往來播放視頻、將自己的預(yù)測結(jié)論與真實情況做出比較,并據(jù)此調(diào)整模型參數(shù)。這與測試時間推理就形成了鮮明對比——在測試時間推理中,一切都將實時發(fā)生,導致深度學習模型根本無法追索。
離線標記還能幫助工程師們建立并應(yīng)用起強大且計算高度密集的對象檢測網(wǎng)絡(luò)。由于規(guī)模太過龐大,這些網(wǎng)絡(luò)無法部署在汽車之上以供實時、低延遲應(yīng)用。通過離線方式,他們使用雷達傳感器數(shù)據(jù)進一步驗證神經(jīng)網(wǎng)絡(luò)推理,而這一切都能顯著提升標記網(wǎng)絡(luò)的精度。
Karpathy提到,“在離線狀態(tài)下,我們可以做做「事后諸葛亮」,更冷靜地將來自不同傳感器的數(shù)據(jù)融合起來。此外,我們還可以讓人類參與進來,由他們負責清理、驗證與編輯等工作。”
根據(jù)Karpathy在CVPR上大會上展示的視頻,物體檢測網(wǎng)絡(luò)已經(jīng)能夠較為穩(wěn)定地識別出碎屑、灰塵與雪云。
特斯拉的神經(jīng)網(wǎng)絡(luò)能夠在不同能見度條件下實現(xiàn)良好的物體檢測一致性。
Karpathy并沒有介紹自動標記系統(tǒng)的最終修正工作到底需要投入多少人力。但人類在引導自動標記系統(tǒng)朝著正確方向發(fā)展上,確實發(fā)揮著至關(guān)重要的作用。
在數(shù)據(jù)集的開發(fā)過程中,特斯拉團隊發(fā)現(xiàn)了200多個觸發(fā)器,表明對象檢測還需要調(diào)整。其中還包括不同攝像機的檢測結(jié)果之間或者攝像機與雷達之間存在不一致等問題。另外,他們還確定了可能需要特別注意的場景,例如隧道入口/出口以及頂部捆綁有其他物體的汽車等等。
開發(fā)和理解這些觸發(fā)器花掉了團隊四個月的時間。隨著標記網(wǎng)絡(luò)的質(zhì)量不斷提升,他們著手以“影子模式”進行部署,即把系統(tǒng)安裝在消費者的汽車中并靜默運行,全程不向汽車發(fā)出任何指令。之后,他們會將網(wǎng)絡(luò)的輸出結(jié)果與傳統(tǒng)網(wǎng)絡(luò)、雷達及駕駛員行為輸出進行比較。
特斯拉團隊經(jīng)歷了七輪數(shù)據(jù)工程迭代。他們首先從訓練神經(jīng)網(wǎng)絡(luò)的初始數(shù)據(jù)集開始,之后在實際車輛上以影子模式部署深度學習模型,再使用觸發(fā)器檢測其中的不一致、錯誤與極端場景。之后,工作人員及時修改、糾正錯誤,并在必要時向數(shù)據(jù)集內(nèi)添加新數(shù)據(jù)。
Karpathy指出,“我們一遍又一遍地推進這個循環(huán),直到網(wǎng)絡(luò)質(zhì)量達到令人滿意的程度。”
如此一來,這套架構(gòu)慢慢發(fā)展成具有良好分工的半自動標記系統(tǒng),其中神經(jīng)網(wǎng)絡(luò)負責執(zhí)行重復(fù)性工作、而人類操作員則負責處理高級認知問題與極端狀況。
有趣的是,當一位與會者詢問Karpathy能否自動生成觸發(fā)器時,他提到“自動化觸發(fā)器是一類非常棘手的場景,因為既有的通用觸發(fā)器往往無法正確表現(xiàn)錯誤模式。例如,他們就很難設(shè)計出能夠自動觸發(fā)進入及退出隧道的觸發(fā)器。這類挑戰(zhàn)在人類駕駛者身上往往需要依靠「直覺」來解決……而目前我們還不清楚直覺的實現(xiàn)原理。”
分層深度學習架構(gòu)
特斯拉的自動駕駛團隊需要一套非常高效且設(shè)計精良的神經(jīng)網(wǎng)絡(luò),用于充分利用自己收集到的高質(zhì)量數(shù)據(jù)集。
該公司創(chuàng)建了一套分層深度學習架構(gòu),由不同的神經(jīng)網(wǎng)絡(luò)組成,這些神經(jīng)網(wǎng)絡(luò)負責處理信息并將輸出結(jié)果交付至下一組網(wǎng)絡(luò)。
深度學習模型使用卷積神經(jīng)網(wǎng)絡(luò)從安裝在汽車車體的八個攝像頭處獲取視頻并提取特征,并使用transformer網(wǎng)絡(luò)將內(nèi)容融合在一起。之后,這些內(nèi)容將跨時間持續(xù)整合,借此實現(xiàn)軌跡預(yù)測及平滑推理中的不一致問題。
之后,團隊將空間與時間特征輸入至神經(jīng)網(wǎng)絡(luò)的分支結(jié)構(gòu)當中,Karpathy形象地將其描述為頭部、軀干與尾端。
Karpathy提到,“之所以采取這種分支結(jié)構(gòu),理由是我們需要關(guān)注大量需要跟進的輸出結(jié)果,而且不可能為每項輸出都配備一套獨立的神經(jīng)網(wǎng)絡(luò)。”
分層結(jié)構(gòu)能夠在不同的任務(wù)之間重用組件,并在不同的推理路徑之間實現(xiàn)特征共享。
網(wǎng)絡(luò)模塊化架構(gòu)的另一個優(yōu)勢,在于實現(xiàn)分布式開發(fā)的可能性。特斯拉公司目前雇傭了一支龐大的機器學習工程師團隊,致力于研究自動駕駛神經(jīng)網(wǎng)絡(luò)。他們每個人負責網(wǎng)絡(luò)中的一個具體組件,并將得出的結(jié)果插入到規(guī)模更大的網(wǎng)絡(luò)當中。
Karpathy表示,“我們擁有一支約20人的團隊,他們正在全職訓練神經(jīng)網(wǎng)絡(luò)。他們都在同一神經(jīng)網(wǎng)絡(luò)上開展合作。”
垂直整合
在CVPR的演講中,Karpathy分享了特斯拉用于深度學習模型訓練及調(diào)優(yōu)的超級計算機設(shè)備的相關(guān)細節(jié)。
這套計算集群由80個節(jié)點組成,每個節(jié)點中包含8個具有80 GB顯存的英偉達A100 GPU,總計包含5760個GPU與超過450 TB顯存。這臺超級計算機還擁有10 PB的NVMe超高速存儲與640 tbps的網(wǎng)絡(luò)容量,可用于連接所有節(jié)點、并允許對神經(jīng)網(wǎng)絡(luò)進行高效分布式訓練。
特斯拉還擁有并制造安裝在車內(nèi)的專用AI芯片。Karpathy解釋道,“這些芯片是專門為我們實現(xiàn)全自動駕駛所需要的神經(jīng)網(wǎng)絡(luò)所設(shè)計。”
特斯拉的一大優(yōu)勢,就在于垂直整合。特斯拉擁有完整的自動駕駛汽車堆棧,而且能夠制造汽車以及用于自動駕駛功能的硬件。此外,特斯拉還具有獨特的優(yōu)勢地位,能夠從已經(jīng)售出的數(shù)百萬輛汽車中收集各類遙測與視頻數(shù)據(jù)。他們還擁有專有數(shù)據(jù)集、特殊的內(nèi)部計算集群并創(chuàng)建/訓練神經(jīng)網(wǎng)絡(luò),同時配合影子測試進行網(wǎng)絡(luò)驗證與調(diào)優(yōu)。最后,特斯拉擁有一支由機器學習工程師、研究人員以及硬件設(shè)計師組成的才華橫溢的開發(fā)團隊,負責將所有這些元素整合在一起。
Karpathy提到,“我們可以在這套堆棧的各個層級之間實現(xiàn)協(xié)同設(shè)計與工程研發(fā),沒有任何來自第三方的阻力。每位成員完全掌控自己的方向,這樣的高效配合簡直令人嘆為觀止。”
正是這種創(chuàng)建數(shù)據(jù)、調(diào)節(jié)機器學習模型,并將其部署在大量車輛上的垂直融合與重復(fù)循環(huán)過程,讓特斯拉在純視覺自動駕駛汽車領(lǐng)域獲得了獨特的優(yōu)勢。在演講當中,Karpathy展示了多個案例,單憑新的神經(jīng)網(wǎng)絡(luò)也超越了傳統(tǒng)機器學習模型加雷達信息的組合。
如果系統(tǒng)繼續(xù)發(fā)展,Karpathy認為特斯拉有望完全走上淘汰激光雷達的道路。而且在我看來,沒有其他哪家公司能夠復(fù)制特斯拉的路線。
余留的開放問題
但目前的問題是,深度學習在現(xiàn)有狀況下恐怕還不足以克服自動駕駛領(lǐng)域的一切挑戰(zhàn)。物體、速度與范圍檢測在自動駕駛當中當然非常重要,但人類視覺還能夠執(zhí)行多種其他復(fù)雜功能,科學家們將其稱為視覺中的“暗物質(zhì)”。而這一切,都是對不同環(huán)境下各類視覺輸入與導航?jīng)Q策進行有意識/潛意識分析的重要前提。
深度學習模型也很難做出因果推理;當模型遭遇以往從未見過的新情況時,很可能無法給出正確的結(jié)論。因此,雖然特斯拉已經(jīng)努力創(chuàng)建起一套極為龐大且多樣化的數(shù)據(jù)集,但面對極端復(fù)雜的開放道路環(huán)境,新的、無法預(yù)測的狀況隨時都可能發(fā)生。
AI社區(qū)仍在討論是否有必要將因果關(guān)系及推理能力明確整合至深度神經(jīng)網(wǎng)絡(luò)當中,或者說可以通過“直接擬合”克服因果關(guān)系問題中的分歧。在后一種情況下,通用深度學習必須依賴于規(guī)模巨大且分布良好的數(shù)據(jù)集。特斯拉的視覺自動駕駛團隊似乎更支持后者(以全面控制堆棧為前提,他們未來可以不斷嘗試新的神經(jīng)網(wǎng)絡(luò)架構(gòu))。我們也期待觀察這項技術(shù)能否在全球的關(guān)注之下,真正經(jīng)受住時間的考驗。
好文章,需要你的鼓勵
新加坡國立大學研究團隊開發(fā)了SPIRAL框架,通過讓AI與自己對弈零和游戲來提升推理能力。實驗顯示,僅訓練AI玩簡單撲克游戲就能讓其數(shù)學推理能力提升8.6%,通用推理提升8.4%,且無需任何數(shù)學題目作為訓練材料。研究發(fā)現(xiàn)游戲中的三種推理模式能成功轉(zhuǎn)移到數(shù)學解題中,為AI訓練提供了新思路。
同濟大學團隊開發(fā)的GIGA-ToF技術(shù)通過融合多幀圖像的"圖結(jié)構(gòu)"信息,創(chuàng)新性地解決了3D相機噪聲問題。該技術(shù)利用圖像間的不變幾何關(guān)系,結(jié)合深度學習和數(shù)學優(yōu)化方法,在合成數(shù)據(jù)集上實現(xiàn)37.9%的精度提升,并在真實設(shè)備上展現(xiàn)出色泛化能力,為機器人、AR和自動駕駛等領(lǐng)域提供更可靠的3D視覺解決方案。
伊利諾伊大學研究團隊通過對比實驗發(fā)現(xiàn),經(jīng)過強化學習訓練的視覺語言模型雖然表現(xiàn)出"頓悟時刻"現(xiàn)象,但這些自我糾錯行為并不能實際提升推理準確率。研究揭示了AI模型存在"生成-驗證差距",即生成答案的能力強于驗證答案質(zhì)量的能力,且模型在自我驗證時無法有效利用視覺信息,為AI多模態(tài)推理發(fā)展提供了重要啟示。
MIT等頂尖機構(gòu)聯(lián)合提出SparseLoRA技術(shù),通過動態(tài)稀疏性實現(xiàn)大語言模型訓練加速1.6倍,計算成本降低2.2倍。該方法使用SVD稀疏性估計器智能選擇重要計算部分,在保持模型性能的同時顯著提升訓練效率,已在多個任務(wù)上驗證有效性。