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