技術(shù)
導(dǎo)讀:近日,特斯拉中國(guó)在線下與媒體分享了其采用純視覺(jué)方案的思路與研究進(jìn)展。
近日,特斯拉中國(guó)在線下與媒體分享了其采用純視覺(jué)方案的思路與研究進(jìn)展。
堅(jiān)持視覺(jué)感知 用AI神經(jīng)網(wǎng)絡(luò)技術(shù)提升輔助駕駛能力
如圖1所示,Andrej說(shuō):“我們希望能夠打造一個(gè)類似動(dòng)物視覺(jué)皮層的神經(jīng)網(wǎng)絡(luò)連接,模擬大腦信息輸入和輸出的過(guò)程。就像光線進(jìn)入到視網(wǎng)膜當(dāng)中,我們希望通過(guò)攝像頭來(lái)模擬這個(gè)過(guò)程。”
圖1 攝像頭模擬人類圖像處理流程示意
多任務(wù)學(xué)習(xí)神經(jīng)網(wǎng)絡(luò)架構(gòu)HydraNets,通過(guò)一個(gè)主干網(wǎng)絡(luò)處理8個(gè)攝像頭傳入進(jìn)來(lái)的原始數(shù)據(jù),利用RegNet殘差網(wǎng)絡(luò)和BiFPN算法模型統(tǒng)一處理,得出不同精度下的各類型圖像特征,供給不同需求類型的神經(jīng)網(wǎng)絡(luò)任務(wù)所用。
圖2 多任務(wù)學(xué)習(xí)神經(jīng)網(wǎng)絡(luò)架構(gòu)HydraNets
不過(guò)由于該結(jié)構(gòu)處理的是單個(gè)攝像頭的單幀圖片畫(huà)面,在實(shí)際應(yīng)用時(shí)候遇到很多瓶頸;于是在次結(jié)構(gòu)之上加入了Transformer神經(jīng)網(wǎng)絡(luò)結(jié)構(gòu),使得原本提取的二維的圖像特征,變?yōu)榱硕鄠€(gè)攝像頭拼合起來(lái)的三維向量空間的特征,從而大大提升了識(shí)別率和精準(zhǔn)度。
還沒(méi)完,由于仍是單幀的畫(huà)面,所以還需要時(shí)間維度和空間維度,以讓車(chē)輛擁有特征“記憶”功能,用于應(yīng)對(duì)“遮擋”、“路牌”等多種場(chǎng)景,最終實(shí)現(xiàn)以視頻流的形式,將行駛環(huán)境的特征提取出來(lái),形成向量空間,讓車(chē)輛能夠精準(zhǔn)、低延遲地判斷周?chē)h(huán)境,形成4D向量空間,這些視頻形式特征的數(shù)據(jù)庫(kù)為訓(xùn)練自動(dòng)駕駛所用。
圖3 視頻化4D向量空間的神經(jīng)網(wǎng)絡(luò)架構(gòu)
不過(guò)由于城市自動(dòng)駕駛與高速自動(dòng)駕駛不同,車(chē)輛規(guī)劃模塊有兩大難題,其一是行車(chē)方案不一定有最優(yōu)解,其局部最優(yōu)解會(huì)很多,也就意味著同樣的駕駛環(huán)境,自動(dòng)駕駛可以選擇很多種可能的解決方案,并且都是好的方案;其二是維度較高,車(chē)輛不僅需要做出當(dāng)下的反應(yīng),還需要為接下來(lái)的一段時(shí)間做好規(guī)劃,估算出位置空間、速度、加速度等諸多信息。
所以特斯拉選擇兩個(gè)途徑解決規(guī)劃模塊這兩大難題,一個(gè)是用離散搜索方式解決局部最優(yōu)解的“答案”,以每1.5毫秒2500次搜索的超高效率執(zhí)行;另一個(gè)是用連續(xù)函數(shù)優(yōu)化來(lái)解決高維度問(wèn)題。通過(guò)離散搜索方式先得出一個(gè)全局最優(yōu)解,然后利用連續(xù)函數(shù)優(yōu)化來(lái)平衡多個(gè)維度的訴求,例如舒適型、平順性等,得出最終的規(guī)劃路徑。
此外,除了要為自己做規(guī)劃,還要“估算”和猜測(cè)其他物體的規(guī)劃,即用同樣的方式,基于對(duì)其他物體的識(shí)別以及基礎(chǔ)的速度、加速度等參數(shù),然后替其他車(chē)輛規(guī)劃路徑,并以此應(yīng)對(duì)。
不過(guò)全球各地的道路狀況千變?nèi)f化,非常復(fù)雜,如果采用離散搜索的方式會(huì)消耗大量資源,并且使得決策時(shí)間過(guò)長(zhǎng),所以選擇了深度神經(jīng)網(wǎng)絡(luò)結(jié)合蒙地卡羅搜索樹(shù)的方式,大大提高的決策效率,幾乎是數(shù)量級(jí)的差距。
圖5 不同方式下的效率
最終規(guī)劃模塊的整體架構(gòu)如圖5,先基于純視覺(jué)方案的架構(gòu)將數(shù)據(jù)處理為4D向量空間,然后基于之前得到的物體識(shí)別以及共享的特征數(shù)據(jù),再利用深度神經(jīng)網(wǎng)絡(luò)尋找全局最優(yōu)解,最終規(guī)劃結(jié)果交給執(zhí)行機(jī)構(gòu)執(zhí)行。
圖6 視覺(jué)識(shí)別+規(guī)劃、執(zhí)行整體架構(gòu)
當(dāng)然,再好的神經(jīng)網(wǎng)絡(luò)架構(gòu)和處理辦法,都離不開(kāi)一個(gè)有效且龐大的數(shù)據(jù)庫(kù)。在數(shù)據(jù)從2D向3D、4D轉(zhuǎn)換過(guò)程中,約1000多人的人工標(biāo)注團(tuán)隊(duì)也在與時(shí)俱進(jìn)在4D空間上進(jìn)行標(biāo)注,并且僅需在向量空間中標(biāo)注后,會(huì)自動(dòng)映射入不同攝像頭的具體單個(gè)畫(huà)面中,大大增加的數(shù)據(jù)標(biāo)注量,但這些還遠(yuǎn)遠(yuǎn)不夠,人工標(biāo)注的數(shù)據(jù)量遠(yuǎn)遠(yuǎn)喂不飽自動(dòng)駕駛所需的訓(xùn)練量。
圖7 4D向量空間中人工標(biāo)注的演示
由于人更擅長(zhǎng)語(yǔ)義識(shí)別,而計(jì)算機(jī)更加擅長(zhǎng)與幾何、三角化、跟蹤、重建等,所以特斯拉想要?jiǎng)?chuàng)造一個(gè)人和計(jì)算機(jī)“和諧分工”共同標(biāo)注的模式。
特斯拉搭建了一個(gè)龐大的自動(dòng)標(biāo)注流水線,用45秒-1分的視頻,包括大量傳感器數(shù)據(jù),交給神經(jīng)網(wǎng)絡(luò)離線學(xué)習(xí),然后利用大量機(jī)器和人工智能算法生成可以用于訓(xùn)練網(wǎng)絡(luò)的標(biāo)注數(shù)據(jù)集。
圖8 視頻片段自動(dòng)標(biāo)注處理流程
對(duì)與可行駛區(qū)域例如道路、道線、十字路口等的識(shí)別,特斯拉使用了NeRF“神經(jīng)輻射場(chǎng)”,即一種2D向3D轉(zhuǎn)化的圖像處理算法,給出既定的XY坐標(biāo)點(diǎn)數(shù)據(jù),讓神經(jīng)網(wǎng)絡(luò)預(yù)測(cè)地面的高度,由此生成無(wú)數(shù)的XYZ坐標(biāo)點(diǎn),以及各種語(yǔ)義,例如路邊、車(chē)道線、路面等,形成大量的信息點(diǎn),并反向投射到攝像頭畫(huà)面中;然后將其道路數(shù)據(jù)和之前神經(jīng)網(wǎng)絡(luò)識(shí)別出來(lái)的畫(huà)面分割結(jié)果進(jìn)行比較,并整體優(yōu)化所有攝像頭的圖像;同時(shí)結(jié)合時(shí)間維度和空間維度,創(chuàng)建出較為完善的重建場(chǎng)景。
圖9 重建道路的演示
利用此技術(shù)將不同車(chē)輛經(jīng)過(guò)同一地點(diǎn)所重建的道路信息,進(jìn)行交叉比對(duì),他們必須在所有位置點(diǎn)信息一致對(duì)的上,才為預(yù)測(cè)正確,這樣共同作用下,形成了一種有效的道路表面的標(biāo)注方法。
圖10 多視頻數(shù)據(jù)標(biāo)注重疊互相校驗(yàn)
這與高精地圖完全不一樣,所有的視頻片段所產(chǎn)生的標(biāo)注信息只要越來(lái)越精確精準(zhǔn),標(biāo)注信息和視頻里實(shí)際道路情況相符,就不必再維護(hù)這些數(shù)據(jù)。
同時(shí)利用這些技術(shù),還可以對(duì)靜態(tài)的物體進(jìn)行識(shí)別和重建,并且有紋理、沒(méi)紋理都可以根據(jù)這些3D信息點(diǎn)做出標(biāo)注;這些標(biāo)注點(diǎn)對(duì)于攝像頭識(shí)別任意障礙物都非常有用。
圖11 靜態(tài)物體的3D信息點(diǎn)重建
采用離線處理這些數(shù)據(jù)和標(biāo)注的另一個(gè)好處是,單車(chē)網(wǎng)絡(luò)每次只能對(duì)其他運(yùn)動(dòng)事物進(jìn)行預(yù)測(cè),而離線由于數(shù)據(jù)既定行,可以通曉過(guò)去和未來(lái),就能依照確定的數(shù)據(jù),忽視遮擋與否,對(duì)所有的物體的速度、加速度進(jìn)行預(yù)測(cè)和校準(zhǔn)優(yōu)化,并標(biāo)注,訓(xùn)練網(wǎng)絡(luò)后來(lái)更準(zhǔn)確判斷其他運(yùn)動(dòng)事物,便于規(guī)劃模塊進(jìn)行規(guī)劃。
圖12 離線對(duì)車(chē)輛、行人的速度、加速度校對(duì)和標(biāo)注
然后將這些結(jié)合起來(lái),就形成了對(duì)視頻數(shù)據(jù)中,所有道路相關(guān)、靜動(dòng)態(tài)物體的識(shí)別、預(yù)判和重建,并對(duì)其動(dòng)力學(xué)數(shù)據(jù)標(biāo)注。
圖13 視頻片段對(duì)周?chē)h(huán)境的重建和標(biāo)注
這樣的視頻數(shù)據(jù)標(biāo)注將成為訓(xùn)練自動(dòng)駕駛神經(jīng)網(wǎng)絡(luò)的核心部分。其中一個(gè)項(xiàng)目就是在3個(gè)月內(nèi),利用這些數(shù)據(jù)訓(xùn)練網(wǎng)絡(luò),成功實(shí)現(xiàn)了毫米波雷達(dá)所有功能并且更加準(zhǔn)確,所以去掉了毫米波雷達(dá)。
圖14 攝像頭幾乎無(wú)法看到情況下,對(duì)速度和距離的判斷依然精準(zhǔn)
驗(yàn)證了這種方式的高度有效,那么就需要海量的視頻數(shù)據(jù)來(lái)訓(xùn)練。所以同時(shí),特斯拉還開(kāi)發(fā)了“仿真場(chǎng)景技術(shù)”,可以模擬現(xiàn)實(shí)中不太常見(jiàn)的“邊緣場(chǎng)景”用于自動(dòng)駕駛培訓(xùn)。如圖4所示,在仿真場(chǎng)景中,特斯拉工程師可以提供不同的環(huán)境以及其他參數(shù)(障礙物、碰撞、舒適度等),極大提升了訓(xùn)練效率。
圖15 仿真場(chǎng)景
特斯拉利用仿真模式訓(xùn)練網(wǎng)絡(luò),已經(jīng)用了3億張圖像和50億個(gè)標(biāo)注來(lái)訓(xùn)練網(wǎng)絡(luò),接下來(lái)還會(huì)利用該模式繼續(xù)解決更多的難題。
圖16 仿真模式帶來(lái)的提升和未來(lái)幾個(gè)月預(yù)期
綜上,如果要更快速提升自動(dòng)駕駛網(wǎng)絡(luò)的能力,需要處理海量的視頻片段以及運(yùn)算。舉個(gè)簡(jiǎn)單的例子,為了拿掉毫米波雷達(dá),就處理了250萬(wàn)個(gè)視頻片段,生成了超過(guò)100億個(gè)標(biāo)注;而這些,讓硬件越來(lái)越成為發(fā)展速度的瓶頸。
之前特斯拉使用的是一組約3000塊GPU、稍低于20000個(gè)CPU的訓(xùn)練硬件,并為了仿真還加入了2000多臺(tái)FSD計(jì)算機(jī);后來(lái)發(fā)展到10000塊GPU組成的世界排名第五的超級(jí)計(jì)算機(jī),但是即便如此,還是遠(yuǎn)遠(yuǎn)不夠。
圖17目前在使用的超級(jí)計(jì)算機(jī)參數(shù)和變化
所以特斯拉決定自己研制超級(jí)計(jì)算機(jī)。
“工程學(xué)的創(chuàng)舉”——D1芯片與Dojo超級(jí)計(jì)算機(jī)
當(dāng)下,隨著所需處理的數(shù)據(jù)開(kāi)始指數(shù)級(jí)增長(zhǎng),特斯拉也在提高訓(xùn)練神經(jīng)網(wǎng)絡(luò)的算力,因此,便有了特斯拉Dojo超級(jí)計(jì)算機(jī)。
特斯拉的目標(biāo)是實(shí)現(xiàn)人工智能訓(xùn)練的超高算力,處理大型復(fù)雜的神經(jīng)網(wǎng)絡(luò)模式、同時(shí)還要擴(kuò)展帶寬、減少延遲、節(jié)省成本。這就要求Dojo超級(jí)計(jì)算機(jī)的布局,要實(shí)現(xiàn)空間和時(shí)間的最佳平衡。
如圖所示,組成Dojo超級(jí)計(jì)算機(jī)的關(guān)鍵單元是特斯拉自主研發(fā)的神經(jīng)網(wǎng)絡(luò)訓(xùn)練芯片——D1芯片。D1芯片采用分布式結(jié)構(gòu)和7納米工藝,搭載500億個(gè)晶體管、354個(gè)訓(xùn)練節(jié)點(diǎn),僅內(nèi)部的電路就長(zhǎng)達(dá)17.7公里,實(shí)現(xiàn)了超強(qiáng)算力和超高帶寬。
圖18 D1芯片技術(shù)參數(shù)
圖19 D1芯片現(xiàn)場(chǎng)展示
如圖所示,Dojo超級(jí)計(jì)算機(jī)的單個(gè)訓(xùn)練模塊由25個(gè)D1芯片組成。由于每個(gè)D1芯片之間都是無(wú)縫連接在一起,相鄰芯片之間的延遲極低,訓(xùn)練模塊最大程度上實(shí)現(xiàn)了帶寬的保留,配合特斯拉自創(chuàng)的高帶寬、低延遲的連接器;在不到1立方英尺的體積下,算力高達(dá)9PFLOPs(9千萬(wàn)億次),I/O帶寬高達(dá)36TB/s。
圖20 D1芯片組成的訓(xùn)練模塊
圖21 訓(xùn)練模塊現(xiàn)場(chǎng)展示
得益于訓(xùn)練模塊的獨(dú)立運(yùn)行能力和無(wú)限鏈接能力,由其組成的Dojo超級(jí)計(jì)算機(jī)的性能拓展在理論上無(wú)上限,是個(gè)不折不扣的“性能野獸”。如圖9所示,實(shí)際應(yīng)用中,特斯拉將以120個(gè)訓(xùn)練模塊組裝成ExaPOD,它是世界上首屈一指的人工智能訓(xùn)練計(jì)算機(jī)。與業(yè)內(nèi)其他產(chǎn)品相比,同成本下它的性能提升4倍,同能耗下性能提高1.3倍,占用空間節(jié)省5倍。
圖9 訓(xùn)練模塊組合成ExaPOD
與強(qiáng)大硬件相匹配的,是特斯拉針對(duì)性開(kāi)發(fā)的分布式系統(tǒng)——DPU(Dojo Processing Unit)。DPU是一個(gè)可視化交互軟件,可以隨時(shí)根據(jù)要求調(diào)整規(guī)模,高效地處理和計(jì)算,進(jìn)行數(shù)據(jù)建模、存儲(chǔ)分配、優(yōu)化布局、分區(qū)拓展等任務(wù)。
不久后,特斯拉即將開(kāi)始Dojo超級(jí)計(jì)算機(jī)的首批組裝,并從整個(gè)超級(jí)計(jì)算機(jī)到芯片、系統(tǒng),進(jìn)行更進(jìn)一步的完善。對(duì)于人工智能技術(shù),馬斯克顯然還有更遠(yuǎn)大的追求。這種追求,寄托在他開(kāi)場(chǎng)白中“我們?cè)庥隽艘稽c(diǎn)技術(shù)問(wèn)題,希望以后可以用AI來(lái)解決”的調(diào)侃,更在于活動(dòng)結(jié)尾時(shí)他許下的“我們會(huì)進(jìn)一步在整個(gè)人類世界里暢游”的承諾。