PTT評價

[分享] 特斯拉高管揭秘自動駕駛技術:48種神經網

看板car標題[分享] 特斯拉高管揭秘自動駕駛技術:48種神經網作者
Scape
(缺鈣缺很大)
時間推噓11 推:15 噓:4 →:6

這一篇文章是根據Tesla Autopilot 部門主管Andrej Karpathy 在二月份時所
做的一場演講寫的。Andrej Karpathy 專門研究深度學習以及影像識別,他在
史丹佛大學念博士時是李飛飛的學生,畢業後加入OpenAI,2017年時加入Tesla。

他在這場演講時提到很多Tesla 目前正在做的事情,其中最有趣的應該是利用
軟體算法製造出鳥瞰圖,以及如何應用軟體算法來辨識距離,甚至可以做到辨
識每個像素的深度是多少。

演講影片:
https://youtu.be/hx7BXih7zx8

=====================================================================

https://36kr.com/p/708377901357573

特斯拉高管揭秘自動駕駛技術:48種神經網絡上陣,最多可檢測1000種物體

特斯拉是怎麼靠攝像頭,來做到城市自動駕駛的?

編者按:本文來自微信公眾號“車東西”(ID:chedongxi),作者James,36氪經授權發
布。

近日,特斯拉更新了自動駕駛軟件的2020.12版本更新,在這一版更新中,特斯拉加入了交通信號燈和停車標誌識別的自動駕駛功能。如果特斯拉選配了FSD完全自動駕駛能力套件,就能通過OTA升級體驗車輛在紅燈前自動停下,綠燈亮起後又自動加速的自動駕駛功能。

這項功能正式發布,為即將到來的特斯拉城市道路自動駕駛打下基礎,也標誌著特斯拉向“完全自動駕駛”又邁進了一步。


https://i.imgur.com/rwIbUDd.gif

▲特斯拉交通信號燈識別功能

對交通信號燈和停車標誌的識別實際上並不容易。對於駕駛員來說很容易識別的內容,對於還不太聰明的機器來說還是個不小的挑戰。例如,不同車道有不同的交通信號燈,停車標誌也是五花八門,有些還被遮擋,這就非常考驗機器識別的效率和準確性。

今年2月,特斯拉人工智能高級主管Andrej Karpathy發表了一個演講,他在演講中闡述了特斯拉是如何憑藉視覺系統識別道路環境,並應用於自動駕駛當中的。


https://i.imgur.com/CygIlsj.png

▲Andrej Karpathy的演講視頻

特斯拉利用“影子模式”,在駕駛員駕駛的過程中,自動駕駛電腦進行實時同步計算,但
不參與車輛控制。一旦駕駛員的操作和機器的計算有所出入,特斯拉的自動駕駛電腦就會記錄下這個案例,並上傳給特斯拉總部。在收集到大量的數據之後,特斯拉將不同場景進行分類,機器學習之後就能讓整個識別算法更加“聰明”。

在應用於車輛時,特斯拉還會利用機器學習,用二維的圖像計算出三維的場景,就能準確判斷與障礙物之間的距離,實現更加精準的自動駕駛功能。

特斯拉自動等紅燈,離城市自動駕駛又近一步
4月24日,特斯拉向用戶推出了2020.12軟件更新。在這一更新中,特斯拉正式推出了“識別交通信號燈和停車標誌並做出反應”功能。

選配有FSD的特斯拉車主在更新軟件之後,車輛就可以自動識別紅綠燈和停車標誌。如果前方有禁止通行的紅燈或停車標誌,特斯拉會在車機屏幕上提前發出提示信息,告訴駕駛員距離前方停止線的距離。

如果駕駛員沒有及時採取制動措施,車輛制動系統就會及時介入,並緩緩停在停止線之前。在綠燈亮起之後,車輛會自動繼續加速前進。如果駕駛員在需要停車的路口確認安全之後,踩下加速踏板,車輛也會重新加速前進。


https://i.imgur.com/8AG21ZO.gif

▲特斯拉軟件更新後車主的測試

在行駛過程中,車輛可以檢測到前方的綠燈、黃燈閃爍和紅燈,並在車機上顯示。如果檢測到前方有紅燈或停車標誌,車輛會提前提醒駕駛員停止線的位置,如果駕駛員沒有做出反應,車輛就會自動減速並停在停止線前。如果駕駛員確認安全後希望前行,只要踩下油門踏板,車輛就會繼續加速前進。

不過,由於這項功能剛剛發布,運行的邏輯會比較保守,車輛在一些情況下不會嘗試自行通過交叉路口。隨著使用這一功能車輛數量的增加,特斯拉自動駕駛計算芯片進行機器學習後會讓這項功能更加完善。

根據此前公佈的特斯拉自動駕駛使用手冊,這項功能實際也有一定的局限性。特斯拉表示,雖然車輛可以自行監測前方的交通信號燈和停車標誌,但駕駛責任完全由駕駛員負責。駕駛員需要始終注意行車道上發生的情況,並隨時準備採取緊急措施。


https://i.imgur.com/qioQP0A.png

▲特斯拉交通信號燈和停車標誌識別功能使用手冊(美國版)

值得注意的是,用戶手冊中有這樣一句話:如果在特斯拉汽車行駛較多的路段,停車標誌和交通信號燈的識別準確度會更高。也就是說,特斯拉確實是依靠深度學習讓算法變得更加優秀,並且同一場景學習的次數越多,識別準確率也就越高。

此外,信號燈和停車標誌識別功能也不是在所有場景都可以使用。特斯拉在使用手冊中表示,在美國地區,鐵路道口、禁區、收費站、人行橫道區域、不清晰或臨時的交通信號燈、複雜信號燈和車道指示燈等環境下都無法啟用這項功能。

這項功能更新是特斯拉FSD自動駕駛系統的一大進步,也讓特斯拉距離城市道路的自動駕駛更近一步。

今年2月,特斯拉人工智能高級主管Andrej Karpathy在ScaledML會議上的一次演講,就透露了特斯拉自動駕駛系統的最新進展。利用機器學習的算法,特斯拉就能準確判斷路旁的信號標誌,同時也能計算出與停止線、障礙物之間的距離信息。

特斯拉強在哪?上百萬車主幫特斯拉測試軟件
在特斯拉人工智能高級主管Andrej Karpathy的演講中,首先對特斯拉自動駕駛系統的工作原理進行了講解。他表示,當前特斯拉主要依靠視覺系統採集圖像信號,自動駕駛電腦進行計算之後,就能控制車輛的車速和轉向,從而實現自動駕駛。在這個過程中,自動駕駛電腦的計算是最重要的一環,需要人工智能算法提供支持。


https://i.imgur.com/Wkir1z6.png

▲Andrej Karpathy演講現場

在今年2月美國加州車管局(DMV)公佈的自動駕駛路側數據可以發現,2019年全年,特斯拉官方進行的自動駕駛公路測試僅有12.2英里(約合19.6公里)。與百度、Waymo、
Cruise等公司每年動輒數十萬上百萬英里的自動駕駛測試里程相比,可以說特斯拉官方相當於沒有進行測試。

如果不進行大量的自動駕駛測試,特斯拉又如何進步呢?原來,特斯拉的測試者是百萬量級的特斯拉車主,依靠“影子模式”進行自動駕駛測試的。

2016年,特斯拉發布了“影子模式”,在駕駛員駕駛過程中,裝有HW1及更新自動駕駛電
腦的特斯拉就能實時進行自動駕駛運算,但不會參與控制車輛的方向和速度。如果駕駛員的操作和自動駕駛電腦的操作有較大出入,自動駕駛電腦就會自動記錄下這個案例,並上傳給特斯拉。


從2018年正式啟用至今,影子模式已運算了超過30億英里(約合48.3億公里)的駕駛里程。每天,特斯拉自動駕駛研發團隊都會收到大量的案例:駕駛員停車,自動駕駛電腦繼續前進;駕駛員向左微調了方向,自動駕駛電腦直行前進;當然,也會有駕駛員發生碰撞,但自動駕駛電腦避開危險。

舉例來說,路旁的停止標誌並不全都清晰可見,有些被樹葉擋住,有些屬於臨時標誌,有些標誌在夜間非常模糊,還有部分停車標誌左轉停車,右轉不用停……這些並不清晰的標
誌就有可能對自動駕駛電腦產生干擾,一旦識別出錯,可能就會造成駕駛事故。


https://i.imgur.com/Sdem0m1.png

▲上圖:不清晰的停車標誌;下圖:有條件的停車標誌

為解決這個問題,特斯拉利用了數據引擎對算法進行訓練。首先,車輛將收集的數據回傳至特斯拉自動駕駛研發部門,然後特斯拉相似的場景進行分類,同一類的機器學習訓練,讓特斯拉的算法更強大,也更加“聰明”。


https://i.imgur.com/9ExOLAg.png

▲特斯拉的“數據引擎”機器學習模型

在對算法進行訓練之後,特斯拉會持續關注自動駕駛電腦對類似場景的識別準確率,形成下面這個表格。

從中可以看出,特斯拉對Stop Sign(停止標識)這一種路牌,竟然給出了至少14種可能存在的情況,包括大雨、大雪下的路牌、被擋住的路牌、校車上路牌、甚至還有門上的路牌、手持路牌等。

也就是說,特斯拉的目標是要在各種特殊情況下,都能識別路牌。


https://i.imgur.com/4Vy7IX9.png

▲同一標誌在不同場景下的準確度評估

回到正題,特斯拉在訓練完模型後,會把算法通過影子模式進行測試,對每一個場景的識別準確率進行重新評估,準確率不斷提高,也就意味著算法正在一點點進步。當識別準確率提升到了較高水平,特斯拉就可以考慮對所有車輛進行功能更新,增加自動駕駛的功能和使用場景。

這裡面講一個有趣的小細節。

特斯拉此前推送了識別雪糕筒的更新,有用戶為了弄明白特斯拉能識別哪一些雪糕筒專門進行了一個堪稱變態的測試。

這裡測試的道具除了大小高低不同的雪糕筒之外,他們竟然還有一個穿著雪糕筒衣服的人類作為道具。從視頻中看,只要穿著雪糕筒衣服的人類在移動或者站著,特斯拉就能識別出這是一個人。但如果這個人蹲下不動,就會被識別為雪糕筒。


https://i.imgur.com/MihqYNa.gif

▲外國網友穿著雪糕筒的衣服,但沒有騙過特斯拉

這也就說明,特斯拉在識別雪糕筒這件事兒上,也同時考慮到了大量的特殊情況,才會表現出這種成績。

從算法的代碼層面來說,特斯拉把它們的深度學習網絡稱為HydraNet。其中,基礎算法代碼是共享的,整個HydraNet包含48個不同的神經網絡,通過這48個神經網絡,就能輸出
1000個不同的預測張量。理論上來說,特斯拉的這個超級網絡,能同時檢測1000種物體。完成這些運算並不簡單,特斯拉已經耗費了7萬個GPU小時進行深度學習模型訓練。


https://i.imgur.com/LDGRiA5.png

▲特斯拉HydraNet網絡

雖然工作量很大,但由於大部分工作由機器承擔,特斯拉的人工智能團隊僅由幾十人組成,與其他自動駕駛公司數百人甚至數千人的規模相比,確實規模不大。

二維圖像秒變3D,算法還能自己改代碼
在經過大量的機器學習訓練之後,特斯拉的算法會逐漸成熟,這套算法也會以OTA升級的方式分發到每一輛特斯拉汽車當中,在車主實際駕駛過程中還能進一步試錯,讓算法更加完美。

研發這套算法的最終目的是要實現特斯拉的自動駕駛功能,最終還是需要車上硬件互相配合才能實現。

特斯拉全車共配備了8個攝像頭,一個毫米波雷達和12個超聲波雷達,監測外部環境,向自動駕駛電腦實時傳送信息。


https://i.imgur.com/3hADxjC.png

▲特斯拉車外傳感器

簡單來看,特斯拉的攝像頭、毫米波雷達、超聲波雷達以及慣性測量單元記錄下當前車輛所處的環境數據,並將數據發送給特斯拉的自動駕駛電腦。自動駕駛電腦在進行算法的計算之後,將速度和方向信息傳遞給轉向舵以及加速、制動踏板,實現對車輛的控制。

不過,在日常行駛過程中,攝像頭作為傳感器捕捉的內容都是二維圖像,並沒有深度信息。


https://i.imgur.com/UcCwY1u.png

▲特斯拉攝像頭採集的畫面可以確定邊界,但不包含深度信息

也就是說,雖然二維圖像已經可以區分公路和路旁的人行道,但並不知道現在車輛距離“馬路牙子”還有多遠。由於缺失這樣一個重要信息,自動駕駛的運算可能並不准確,操作可能出錯。因此,捕捉或者建立一個三維的圖景很有必要。

傳統工程師認為,直接在車頂安裝三維攝像機就能解決這一問題。不過,這既要增加車輛的製造成本,又影響車輛美觀。此外,由於車頂面積比較大,如果三維攝像頭高度不夠,盲區將會非常大。

特斯拉的工程師又想到用算法解決這個問題。如果有一種算法能夠將二維圖景的時序、邊緣對齊,投影形成三維圖景,這個問題就解決了。


https://i.imgur.com/QHlqv0f.png

▲通過算法得出的“鳥瞰視圖”

在計算出三維圖景之後,特斯拉甚至可以計算出車輛的“鳥瞰視圖”。也就是說,雖然車
輛上方沒有攝像頭,但通過計算就能模擬出從車輛上方向下看的圖景。這樣一來,車輛離障礙物還有多遠的距離,車內都能直觀地看到。


https://i.imgur.com/I39uSbL.gif

▲特斯拉視覺系統預測的馬路邊緣和車道線

實際上,特斯拉還有更厲害的地方,那就是算法可以預測流媒體視頻中每一個像素的深度信息。也就是說,只要算法足夠好,流媒體視頻更加清晰,特斯拉的視覺傳感器所捕捉的深度信息甚至可以超過激光雷達。


https://i.imgur.com/r9LorZ1.gif

▲特斯拉採集視覺信息(上),預測每一個像素的深度信息(中)並投影形成鳥瞰視圖(下)

在實際的自動駕駛應用中,泊車入位和智能召喚兩個使用場景下就能充分利用這套算法。在停車場行駛時,車輛之間的距離很小,即使是駕駛員駕駛,稍不留神也很容易出現刮蹭事故。對於機器來說,停車場場景的行駛更加困難。在預測到深度信息之後,車輛可以在超聲波雷達的輔助之下,快速完成對周圍環境的識別,車輛泊車就會更加順利。

在完成深度信息的預測之後,這部分信息會顯示在車機上,同時也會直接參與控制轉向、加速、制動等駕駛動作。不過,轉向、加速、制動這些駕駛策略沒有固定的規則,有一定靈活性。

因此,自動駕駛的駕駛策略沒有最佳,只有更好。

特斯拉基礎的自動駕駛策略由工程師完成,已經寫出了大量的代碼,這相當於是駕駛策略的1.0版本代碼。不過,由於實際路況更加複雜,1.0版本的駕駛策略代碼實際覆蓋範圍較小,邏輯也難免出錯。隨著時間推移,必須要不斷升級駕駛策略。

Andrej Karpathy表示,如果在機器學習網絡中不斷升級策略代碼,這樣既節省了人工成本,自動駕駛能力進步的速度也會明顯加快。

在駕駛員駕駛的過程中,車輛也會收集駕駛員的駕駛習慣。通過對百萬特斯拉車主駕駛習慣的學習,特斯拉的自動啊及時策略就會不斷提高。

通過對百萬車主駕駛習慣的學習,機器可以編譯出自動駕駛策略的2.0版本代碼。


https://i.imgur.com/XMRxLmU.png

▲機器編譯的2.0版本代碼正在逐漸取代1.0版本代碼

Andrej Karpathy預測,隨著機器的編譯能力提高、採集的數據更加豐富,2.0版本的代碼會逐漸覆蓋1.0版本的代碼,最終實現所有代碼都由機器編譯完成,這樣的自動駕駛策略就會更加精確。

結語:自動駕駛之爭正轉變為算法之爭
在自動駕駛不斷發展的今天,特斯拉已經形成自己的一派,完全使用視覺識別就能完成自動駕駛。自動駕駛技術也從之前的攝像頭、毫米波雷達、超聲波雷達甚至激光雷達的堆料,逐步轉變為算法之間的競爭。

特斯拉利用百萬輛每天行駛在道路上的汽車進行自動駕駛計算,其數據源、精準度很可能已經遠遠超過其他的自動駕駛測試公司。未來,算法之爭還將逐步擴大,同時自動駕駛市場的競爭也將更加激烈。

--
Tesla 視覺辨識的應用之一 - 智慧召喚時識別邊界:
https://i.imgur.com/VCNfidD.gif

https://i.imgur.com/hXLug8A.gif

--

※ PTT 留言評論
※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 36.224.223.220 (臺灣)
PTT 網址

jackwelch05/17 16:34之後會不會連操控都直接連繫人神經系統(X

Tattoo05/17 16:35拜託不要造車了,品質真的不行

demo6805/17 16:36自動駕駛?有嗎?

asdhse05/17 16:41先把超充站的位置先搞好,V3裝在台大被車主罵翻天

asdhse05/17 16:43內湖超充已經壞三台了一直不修,真的笑死

henryhao05/17 16:46

popbug05/17 16:47三寶這種生物辨識的出來嗎?

sf82062405/17 16:49騎摩托車的跟車主靠北v3裝在台大? 笑死

INNBUG05/17 16:56輔助駕駛不要再說自動駕駛

mintsern05/17 17:06偵測駕駛員視線是否離開前方什麼時候才要做?

sazabik05/17 17:32一台裝著輪子的電腦

bill9738505/17 17:38技術分析自動駕駛技術而已...

mrnegativetw05/17 18:31裝輪子的電腦讓其他車廠嚇到軟掉也是很厲害

alberchi05/17 18:59可以分析自己的方向盤沒鎖上嗎

techih05/17 20:04品質不行然後股票一直漲 市值全球第二高XD

techih05/17 20:05騎機車的幹嘛管人家哪裡超充壞掉?

darktasi05/17 21:52所以方向盤就不用啦才會自己掉下來

whizz05/17 22:10 高管? 我還滴管勒

laxgenius05/17 22:57恩,asd說得都對喔。 https://tinyurl.com/r2dm6tr

LexusNo105/17 23:33所以以後方向盤掉下來都沒關係囉?

demo6805/17 23:35人家自駕,方向盤不重要

rifinah05/18 00:30可以幫我算黃燈該不該過嗎OTZ

kids199105/18 14:59

bightb5691305/19 02:32真的很酷 越來越進步了欸

citymax05/19 14:31伙計呢?