打造全自動(dòng)駕駛汽車所需的技術(shù)棧是什么?公司和研究人員對這個(gè)問題的答案存在分歧。自動(dòng)駕駛的方法范圍從單純的攝像頭和計(jì)算機(jī)視覺到計(jì)算機(jī)視覺和先進(jìn)傳感器的組合。
特斯拉一直是自動(dòng)駕駛純視覺方法的擁護(hù)者,在今年的計(jì)算機(jī)視覺和模式識(shí)別會(huì)議 (CVPR) 上,其首席人工智能科學(xué)家 Andrej Karpathy 解釋了原因。
在 CVPR 2021 自動(dòng)駕駛研討會(huì)上,過去幾年一直領(lǐng)導(dǎo)特斯拉自動(dòng)駕駛工作的 Karpathy詳細(xì)介紹了該公司如何開發(fā)僅需要視頻輸入即可了解汽車周圍環(huán)境的深度學(xué)習(xí)系統(tǒng)。他還解釋了為什么特斯拉處于使基于視覺的自動(dòng)駕駛汽車成為現(xiàn)實(shí)的最佳位置。
通用計(jì)算機(jī)視覺系統(tǒng)
深度神經(jīng)網(wǎng)絡(luò)是自動(dòng)駕駛技術(shù)堆棧的主要組成部分之一。神經(jīng)網(wǎng)絡(luò)分析道路、標(biāo)志、汽車、障礙物和人的車載攝像頭。
但是深度學(xué)習(xí)在檢測圖像中的對象時(shí)也會(huì)出錯(cuò)。這就是為什么大多數(shù)自動(dòng)駕駛汽車公司,包括Alphabet 子公司 Waymo,使用激光雷達(dá),這是一種通過向各個(gè)方向發(fā)射激光束來創(chuàng)建汽車周圍 3D 地圖的設(shè)備。激光雷達(dá)提供了可以填補(bǔ)神經(jīng)網(wǎng)絡(luò)空白的附加信息。
然而,將激光雷達(dá)添加到自動(dòng)駕駛堆棧會(huì)帶來其自身的復(fù)雜性。“你必須用激光雷達(dá)預(yù)先繪制環(huán)境地圖,然后你必須創(chuàng)建一張高清地圖,你必須插入所有車道及其連接方式以及所有交通燈,”Karpathy說。“在測試時(shí),您只需定位到該地圖即可四處行駛。”
創(chuàng)建自動(dòng)駕駛汽車將要行駛的每個(gè)位置的精確地圖是極其困難的。“收集、構(gòu)建和維護(hù)這些高清激光雷達(dá)地圖是不可擴(kuò)展的,”Karpathy說。“讓這個(gè)基礎(chǔ)設(shè)施保持最新狀態(tài)將是極其困難的。”
特斯拉在其自動(dòng)駕駛堆棧中不使用激光雷達(dá)和高清地圖。“根據(jù)圍繞汽車的八個(gè)攝像頭拍攝的視頻,發(fā)生的一切都是第一次發(fā)生在車內(nèi),”Karpathy說。
自動(dòng)駕駛技術(shù)必須弄清楚車道在哪里,紅綠燈在哪里,它們的狀態(tài)是什么,以及哪些與車輛相關(guān)。它必須在沒有任何關(guān)于它所導(dǎo)航道路的預(yù)定義信息的情況下完成所有這些工作。
Karpathy承認(rèn),基于視覺的自動(dòng)駕駛在技術(shù)上更加困難,因?yàn)樗枰窠?jīng)網(wǎng)絡(luò),僅基于視頻輸入就可以運(yùn)行得非常好。“但一旦你真正讓它工作起來,它就是一個(gè)通用的視覺系統(tǒng),主要可以部署在地球上的任何地方,”他說。
使用通用視覺系統(tǒng),您的汽車將不再需要任何輔助裝備。Karpathy說,特斯拉已經(jīng)在朝著這個(gè)方向前進(jìn)。此前,該公司的汽車使用雷達(dá)和攝像頭的組合進(jìn)行自動(dòng)駕駛。但它最近開始運(yùn)送沒有雷達(dá)的汽車。
“我們刪除了雷達(dá),在這些車?yán)镏豢恳曈X駕駛,”Karpathy說,并補(bǔ)充說,原因是特斯拉的深度學(xué)習(xí)系統(tǒng)已經(jīng)達(dá)到了比雷達(dá)好一百倍的地步,現(xiàn)在雷達(dá)開始了阻止事情發(fā)生并“開始產(chǎn)生噪音”。
監(jiān)督學(xué)習(xí)
反對純計(jì)算機(jī)視覺方法的主要論點(diǎn)是,在沒有激光雷達(dá)深度圖的幫助下,神經(jīng)網(wǎng)絡(luò)是否可以進(jìn)行測距和深度估計(jì)存在不確定性。
Karpathy說:“顯然,人類駕駛時(shí)有視覺,所以我們的神經(jīng)網(wǎng)絡(luò)能夠處理視覺輸入,以了解我們周圍物體的深度和速度。”“但最大的問題是合成神經(jīng)網(wǎng)絡(luò)能否做到同樣的事情。我認(rèn)為,在過去幾個(gè)月我們一直在努力解決這個(gè)問題的內(nèi)部,對我們的回答是明確的“是”。”
特斯拉的工程師想要?jiǎng)?chuàng)建一個(gè)深度學(xué)習(xí)系統(tǒng),該系統(tǒng)可以執(zhí)行物體檢測以及深度、速度和加速度。他們決定將挑戰(zhàn)視為監(jiān)督學(xué)習(xí)問題,其中神經(jīng)網(wǎng)絡(luò)在對帶注釋的數(shù)據(jù)進(jìn)行訓(xùn)練后學(xué)習(xí)檢測對象及其相關(guān)屬性。
為了訓(xùn)練他們的深度學(xué)習(xí)架構(gòu),Tesla團(tuán)隊(duì)需要一個(gè)包含數(shù)百萬個(gè)視頻的海量數(shù)據(jù)集,并用它們包含的對象及其屬性仔細(xì)注釋。為自動(dòng)駕駛汽車創(chuàng)建數(shù)據(jù)集特別棘手,工程師必須確保包含不經(jīng)常發(fā)生的各種道路設(shè)置和邊緣情況。
“當(dāng)你擁有一個(gè)龐大、干凈、多樣化的數(shù)據(jù)集,并在其上訓(xùn)練一個(gè)大型神經(jīng)網(wǎng)絡(luò)時(shí),我在實(shí)踐中看到的是……成功是有保證的,”Karpathy說。
自動(dòng)標(biāo)記數(shù)據(jù)集
特斯拉在全球銷售了數(shù)百萬輛配備攝像頭的汽車,在收集訓(xùn)練汽車視覺深度學(xué)習(xí)模型所需的數(shù)據(jù)方面處于有利地位。特斯拉自動(dòng)駕駛團(tuán)隊(duì)積累了1.5 PB的數(shù)據(jù),其中包括100萬個(gè)10秒視頻和60億個(gè)用邊界框、深度和速度標(biāo)注的對象。
但是標(biāo)記這樣的數(shù)據(jù)集是一個(gè)巨大的挑戰(zhàn)。一種方法是通過數(shù)據(jù)標(biāo)記公司或Amazon Turk 等在線平臺(tái)對其進(jìn)行手動(dòng)注釋。但這需要大量的手動(dòng)工作,可能會(huì)花費(fèi)一大筆錢,并且過程非常緩慢。
相反,特斯拉團(tuán)隊(duì)使用了一種自動(dòng)標(biāo)記技術(shù),該技術(shù)涉及神經(jīng)網(wǎng)絡(luò)、雷達(dá)數(shù)據(jù)和人工審查的組合。由于數(shù)據(jù)集是離線注釋的,神經(jīng)網(wǎng)絡(luò)可以來回運(yùn)行視頻,將它們的預(yù)測與真實(shí)情況進(jìn)行比較,并調(diào)整它們的參數(shù)。這與測試時(shí)間推理形成對比,在測試時(shí)間推理中,一切都是實(shí)時(shí)發(fā)生的,深度學(xué)習(xí)模型無法追索。
離線標(biāo)記還使工程師能夠應(yīng)用非常強(qiáng)大且計(jì)算密集型的對象檢測網(wǎng)絡(luò),這些網(wǎng)絡(luò)無法部署在汽車上并用于實(shí)時(shí)、低延遲的應(yīng)用程序。他們使用雷達(dá)傳感器數(shù)據(jù)進(jìn)一步驗(yàn)證了神經(jīng)網(wǎng)絡(luò)的推論。所有這些都提高了標(biāo)記網(wǎng)絡(luò)的精度。
“如果您處于離線狀態(tài),您可以事后諸葛亮,因此您可以更好地冷靜地融合 [不同的傳感器數(shù)據(jù)],”Karpathy 說。“此外,你可以讓人類參與進(jìn)來,他們可以進(jìn)行清理、驗(yàn)證、編輯等工作。”
根據(jù) Karpathy 在 CVPR 上展示的視頻,物體檢測網(wǎng)絡(luò)通過碎片、灰塵和雪云保持一致。
Karpathy 沒有說明對自動(dòng)標(biāo)記系統(tǒng)進(jìn)行最終修正需要多少人力。但人類認(rèn)知在引導(dǎo)自動(dòng)標(biāo)簽系統(tǒng)朝著正確方向發(fā)展方面發(fā)揮了關(guān)鍵作用。
在開發(fā)數(shù)據(jù)集時(shí),特斯拉團(tuán)隊(duì)發(fā)現(xiàn)了200多個(gè)觸發(fā)器,表明對象檢測需要調(diào)整。其中包括諸如不同相機(jī)的檢測結(jié)果之間或相機(jī)與雷達(dá)之間的不一致等問題。他們還確定了可能需要特別注意的場景,例如隧道入口和出口以及頂部有物體的汽車。
開發(fā)和掌握所有這些觸發(fā)器花了四個(gè)月的時(shí)間。隨著標(biāo)簽網(wǎng)絡(luò)變得更好,它以“影子模式”部署,這意味著它安裝在消費(fèi)車輛中并靜默運(yùn)行,無需向汽車發(fā)出命令。將網(wǎng)絡(luò)的輸出與傳統(tǒng)網(wǎng)絡(luò)、雷達(dá)和駕駛員行為的輸出進(jìn)行比較。
特斯拉團(tuán)隊(duì)經(jīng)歷了七次數(shù)據(jù)工程迭代。他們從一個(gè)初始數(shù)據(jù)集開始,在該數(shù)據(jù)集上訓(xùn)練他們的神經(jīng)網(wǎng)絡(luò)。然后,他們在真實(shí)汽車上以影子模式部署深度學(xué)習(xí),并使用觸發(fā)器來檢測不一致、錯(cuò)誤和特殊場景。然后修改、糾正錯(cuò)誤,并在必要時(shí)將新數(shù)據(jù)添加到數(shù)據(jù)集中。
“我們一遍又一遍地旋轉(zhuǎn)這個(gè)循環(huán),直到網(wǎng)絡(luò)變得非常好,”Karpathy說。
因此,該架構(gòu)可以更好地描述為具有巧妙分工的半自動(dòng)標(biāo)記系統(tǒng),其中神經(jīng)網(wǎng)絡(luò)執(zhí)行重復(fù)性工作,人類處理高級(jí)認(rèn)知問題和極端情況。
有趣的是,當(dāng)一位與會(huì)者問Karpathy是否可以自動(dòng)生成觸發(fā)器時(shí),他說,“[自動(dòng)化觸發(fā)器] 是一個(gè)非常棘手的場景,因?yàn)槟梢該碛型ㄓ糜|發(fā)器,但它們不會(huì)正確表示錯(cuò)誤模式. 例如,很難自動(dòng)觸發(fā)進(jìn)入和退出隧道的觸發(fā)器。這是你作為一個(gè)人必須直覺[強(qiáng)調(diào)我的]這是一個(gè)挑戰(zhàn)的語義上的東西......目前尚不清楚這將如何運(yùn)作。”
分層深度學(xué)習(xí)架構(gòu)
特斯拉的自動(dòng)駕駛團(tuán)隊(duì)需要一個(gè)非常高效且設(shè)計(jì)精良的神經(jīng)網(wǎng)絡(luò),以充分利用他們收集的高質(zhì)量數(shù)據(jù)集。
該公司創(chuàng)建了一個(gè)分層深度學(xué)習(xí)架構(gòu),由不同的神經(jīng)網(wǎng)絡(luò)組成,這些神經(jīng)網(wǎng)絡(luò)處理信息并將其輸出提供給下一組網(wǎng)絡(luò)。
深度學(xué)習(xí)模型使用卷積神經(jīng)網(wǎng)絡(luò)從安裝在汽車周圍的八個(gè)攝像頭的視頻中提取特征,并使用變壓器網(wǎng)絡(luò)將它們?nèi)诤显谝黄稹H缓罂鐣r(shí)間融合它們,這對于諸如軌跡預(yù)測和平滑推理不一致的任務(wù)很重要。
然后將空間和時(shí)間特征輸入到神經(jīng)網(wǎng)絡(luò)的分支結(jié)構(gòu)中,Karpathy將其描述為頭部、軀干和終端。
“你想要這種分支結(jié)構(gòu)的原因是因?yàn)槟愀信d趣的輸出數(shù)量巨大,而且你不能為每個(gè)輸出都配備一個(gè)單一的神經(jīng)網(wǎng)絡(luò),”Karpathy說。
層次結(jié)構(gòu)可以為不同的任務(wù)重用組件,并在不同的推理路徑之間實(shí)現(xiàn)特征共享。
網(wǎng)絡(luò)模塊化架構(gòu)的另一個(gè)好處是分布式開發(fā)的可能性。特斯拉目前雇傭了一個(gè)龐大的機(jī)器學(xué)習(xí)工程師團(tuán)隊(duì),致力于自動(dòng)駕駛神經(jīng)網(wǎng)絡(luò)的研究。他們每個(gè)人都在網(wǎng)絡(luò)的一個(gè)小組件上工作,并將他們的結(jié)果插入到更大的網(wǎng)絡(luò)中。
“我們有一個(gè)大約20人的團(tuán)隊(duì),他們正在全職訓(xùn)練神經(jīng)網(wǎng)絡(luò)。他們都在一個(gè)單一的神經(jīng)網(wǎng)絡(luò)上進(jìn)行合作,”Karpathy說。
垂直整合
在 CVPR 的演講中,Karpathy分享了有關(guān)特斯拉用來訓(xùn)練和微調(diào)其深度學(xué)習(xí)模型的超級(jí)計(jì)算機(jī)的一些細(xì)節(jié)。
計(jì)算集群由 80 個(gè)節(jié)點(diǎn)組成,每個(gè)節(jié)點(diǎn)包含 8 個(gè)具有 80 GB 視頻內(nèi)存的 Nvidia A100 GPU,總計(jì) 5,760 個(gè) GPU 和超過 450 TB 的 VRAM。這臺(tái)超級(jí)計(jì)算機(jī)還擁有 10 PB 的 NVME 超高速存儲(chǔ)和 640 tbps 的網(wǎng)絡(luò)容量,可連接所有節(jié)點(diǎn)并允許對神經(jīng)網(wǎng)絡(luò)進(jìn)行高效的分布式訓(xùn)練。
特斯拉還擁有并制造安裝在其汽車內(nèi)的人工智能芯片。Karpathy說:“這些芯片是專門為我們想要為[全自動(dòng)駕駛]應(yīng)用運(yùn)行的神經(jīng)網(wǎng)絡(luò)而設(shè)計(jì)的。”
特斯拉的一大優(yōu)勢在于其垂直整合。特斯拉擁有整個(gè)自動(dòng)駕駛汽車堆棧。它制造汽車和用于自動(dòng)駕駛功能的硬件。它處于獨(dú)特的位置,可以從已售出的數(shù)百萬輛汽車中收集各種遙測和視頻數(shù)據(jù)。它還在其專有數(shù)據(jù)集、其特殊的內(nèi)部計(jì)算集群上創(chuàng)建和訓(xùn)練其神經(jīng)網(wǎng)絡(luò),并通過對其汽車的陰影測試來驗(yàn)證和微調(diào)網(wǎng)絡(luò)。而且,當(dāng)然,它擁有一支由機(jī)器學(xué)習(xí)工程師、研究人員和硬件設(shè)計(jì)師組成的非常有才華的團(tuán)隊(duì),可以將所有部分組合在一起。
“您可以在該堆棧的所有層進(jìn)行協(xié)同設(shè)計(jì)和工程,”Karpathy說。“沒有第三方阻止你。你完全掌握自己的命運(yùn),我認(rèn)為這太不可思議了。”
這種創(chuàng)建數(shù)據(jù)、調(diào)整機(jī)器學(xué)習(xí)模型并將其部署在許多汽車上的垂直整合和重復(fù)循環(huán)使特斯拉處于實(shí)現(xiàn)僅視覺自動(dòng)駕駛汽車功能的獨(dú)特位置。在他的演講中,Karpathy展示了幾個(gè)示例,其中僅新神經(jīng)網(wǎng)絡(luò)就超過了與雷達(dá)信息結(jié)合使用的傳統(tǒng)ML模型。
如果系統(tǒng)繼續(xù)改進(jìn),正如Karpathy所說,特斯拉可能會(huì)走上淘汰激光雷達(dá)的軌道。而且我認(rèn)為沒有任何其他公司能夠復(fù)制特斯拉的方法。
開放式問題
但問題仍然是,深度學(xué)習(xí)在目前的狀態(tài)下是否足以克服自動(dòng)駕駛的所有挑戰(zhàn)。當(dāng)然,物體檢測以及速度和范圍估計(jì)在駕駛中起著重要作用。但是人類視覺還執(zhí)行許多其他復(fù)雜的功能,科學(xué)家將其稱為視覺的“暗物質(zhì)”。這些都是對不同環(huán)境的視覺輸入和導(dǎo)航進(jìn)行有意識(shí)和潛意識(shí)分析的重要組成部分。
度學(xué)習(xí)模型也很難進(jìn)行因果推理,當(dāng)模型面臨他們以前從未見過的新情況時(shí),這可能是一個(gè)巨大的障礙。因此,雖然特斯拉設(shè)法創(chuàng)建了一個(gè)非常龐大和多樣化的數(shù)據(jù)集,但開放的道路也是非常復(fù)雜的環(huán)境,新的和不可預(yù)測的事情隨時(shí)可能發(fā)生。
AI社區(qū)在是否需要將因果關(guān)系和推理明確集成到深度神經(jīng)網(wǎng)絡(luò)中存在分歧,或者是否可以通過“直接擬合”克服因果關(guān)系障礙,其中大型且分布良好的數(shù)據(jù)集足以達(dá)到通用深度學(xué)習(xí)。特斯拉基于視覺的自動(dòng)駕駛團(tuán)隊(duì)似乎更喜歡后者(盡管他們完全控制堆棧,他們將來總是可以嘗試新的神經(jīng)網(wǎng)絡(luò)架構(gòu))。這項(xiàng)技術(shù)如何經(jīng)受住時(shí)間的考驗(yàn)將會(huì)很有趣。