運用深度學習讓無人駕駛卡車駛入了快車道:深入瞭解創業公司TuSimple如何使用MXNet

OReillyData發表於2017-10-09

今年6月,一輛無人駕駛卡車完成了從亞利桑那州Yuma市到加利福尼亞州San Diego市的200英里測試行駛。對美國無人駕駛卡車而言,這是具有里程碑意義的。這一成功是由TuSimple公司完成。他們通過叫深度學習的人工智慧技術訓練他們的無人駕駛系統,完成了幾千萬英里的模擬道路行駛。

深度學習可以解決對人來說很容易但計算機很難完成的任務,比如識別照片裡的人和物體,檢測圖片、文字或語音互動裡的情緒和傾向,或是識別手寫內容。深度學習系統並不是使用特定規則的硬編碼軟體包,相反的,它們是通過大量的資料和能讓系統學會如何完成任務的演算法來訓練系統。

使用深度學習,我們現在能夠開發軟體來檢測欺詐、識別交易裡的模式、向客戶推薦新產品,以及在不久的未來提供無人駕駛卡車給一直被缺乏駕駛員、致命的交通事故和因為低效的油料使用所帶來的高成本所困擾的運輸業。TuSimple的無人駕駛卡車正在準備顛覆7000億美元的美國卡車行業。而這只是深度學習和人工智慧的進步將會改變我們的生活的一個很小的縮影。“對我而言,是去挑戰無法解決的難題吸引我到這個專案的”,TuSimple的CTO和聯合創始人Xiaodi Hou說。

TuSimple是如何使用深度學習來讓無人駕駛卡車成為可能?Hou解釋說:“我們使用相機作為主要感測器。每個相機每秒鐘採集20-30幀,大概100MB的資料。這些資料通過多層的深度學習網路,然後獲得一些結果。這些結果再由演算法合併起來,基於卡車的自我資訊、速度和角度做出實時的決策,比如哪裡有其他車輛或是障礙物,或是探測車道等。”

TuSimple的深度學習需求對於訓練和推斷是非常不同的。模型是在一個基於多GPU的AWS雲環境裡生成和訓練的。一旦模型的訓練完成,它們會被髮送到卡車車載的計算機系統裡,對感測器的輸入進行解讀,從而可以實時理解和響應道路狀況以及其他的道路使用者。

2015年,當Hou開始認真地思考採用一個深度學習框架的時候,Apache MXNet還只是一個發育中的專案,叫CXXNET。Hou當時記錄下了他對框架的基本需求,包括對於時間、成本、容量和可擴充套件性的特定指標。MXNet能在眾多架構中脫穎而出(也是吸引Hou和他的團隊)的原因是它能成功地把在多節點上擴充套件多GPU的能力和高效能及跨平臺的移植性結合在一起。

MXNet在訓練時也非常高效,從而能抵消掉模型訓練所花費的計算成本。Hou強調道:“對深度學習框架的選擇是非常重要的。你可能會浪費非常多的計算資源。”Hou還引用了近期的一篇對MXNet和TensorFlow所做的基準測試比對的文章。其中使用一個流行的資料集(CIFAR-10)在8個GPU的平臺上對兩種框架進行了比對。相比TensorFlow,MXNet明顯快很多,而且記憶體使用更加高效,得到的結果也更準確。

考慮到深度學習領域的飛速發展,Hou和他的團隊是開源社群的熱情支持者。他們在MXNet的早期就已經做出了貢獻。其範圍包括從經典的演算法的實現到各種教程以及演講。TuSimple已經發布了廣為採用的MXNet的管道,諸如Faster RCNN。作為回饋,他們也從與一個蓬勃發展的開發者社群的合作中獲益,共同來致力於解決本質問題的框架的開發。

MXNet和其他開源專案背後的社群的價值是不能被低估的。Apache Way作為授權開源專案使用Apache軟體基金會的投票過程和其他管理流程的方法,已經產生了很多流行的工具,包括Hadoop、Spark、Kafka和Mahout。隨著這些工具吸引了更多的開發人員,更高質量的程式碼被貢獻出來。

在TuSimple的場景裡,MXNet只解決了大概10%的問題,但這些問題可能會佔用他們90%的時間。TuSimple對MXNet的貢獻已經被其他的開發人員所增強。儘管他們是可以為自己建立一個MXNet的分支,但他們沒選擇這麼做。因為TuSimple可能會執行使用一個和主分支所隔離的框架,也沒法從MXNet的開發和增強裡得到持續的收益。

深度學習僅僅只是構建無人駕駛商業卡車的全面解決方案裡的一個方面。這個技術對於解決解讀問題是最佳的,比如影象識別、物件檢測、估計車輛和地面的相對速度、地面凸起檢測、車道檢測等問題。但它欠缺實現控制駕駛的有意義的規則的能力。深度學習演算法內在的這種“黑盒”的特點對理解演算法的內部邏輯造成了很大的障礙。

一個系統無法解釋它內部的運作邏輯,如果出現情況時(比如卡車通過急停來回避人類駕駛員沒看到的威脅,卡車就必須要能“解釋”它的行為),對簿公堂會發生什麼?或者如果卡車開始學會那些違法的行為(如果最經濟省油的路徑會涉及到連換4車道這一違章行為)?對於一個會立刻對現實世界產生後果的系統,上述這些情況會帶來非常多的不確定性,並且必須要有其他的模型來控制這個系統並提供對外部世界的全息視角。“想像一下這整個系統就像一棵樹”,Hou解釋說:“葉子節點會是深度學習的方法,而枝幹部分節點則是基於貝葉斯先驗條件和規則的推斷。”

展望未來,Hou對於TVM非常激動。這是一個MXNet的最新發布的子模組。TuSimple對它做出了貢獻。無人駕駛卡車很快就將成為現實。隨著深度學習的成熟,它將降低無人駕駛進入的門檻並激勵更多的創新。

本文是O’ReillyAmazon合作的產物。請檢視我們的編輯獨立宣告。

This article originally appeared in English: "Self-driving trucks enter the fast lane using deep learning".

作者:Maliha Balala

Maliha Balala目前領導著WhirlWind Technologies的技術通訊團隊。她是一位博學多才的人,喜歡研究和討論技術、教育、心理學、文學和哲學等相關內容。


繼在紐約和舊金山成功售罄門票後,由O'Reilly主辦的人工智慧大會將於2018年4月10-13日來到北京。目前講師徵集中:https://ai.oreilly.com.cn/ai-cn

0?wx_fmt=png

0?wx_fmt=png


相關文章