在這三部分系列的第一部分中,作者調查了機器學習技術在高度自動化駕駛場景中的驅動因素和潛在應用。第二部分定義了機器學習技術的理論背景,以及汽車開發人員可用的神經網絡類型。第三部分在功能安全要求的背景下評估這些選項。
在過去的幾年里,機器學習一直是研究和工業界最熱門的話題之一。與幾十年前機器學習的出現相比,計算性能和算法的最新進展引起了新的關注。
機器學習,特別是深度學習解決方案促進了人工智能最近取得的令人矚目的成果。應用包括自然語言處理 (NLP)、個人協助、AlphaGo 戰勝人類,以及在學習玩 Atari 游戲時達到人類水平的行為。
考慮到機器學習和深度學習在解決極其復雜的問題時能夠取得如此令人印象深刻的結果,很明顯,研究人員和工程師也考慮將它們應用于自動駕駛汽車的高度自動駕駛 (HAD) 場景。NVIDIA 的 Davenet、Comma.Ai、Google Car 和 Tesla 在該領域取得了第一個有希望的成果。機器學習和深度學習方法已經產生了最初的原型,但是這些功能的工業化在例如基本的功能安全考慮方面提出了額外的挑戰。
本文旨在為正在進行的關于機器學習在汽車行業中的作用的討論做出貢獻,并強調該主題在自動駕駛汽車背景下的重要性。特別是,它旨在增加對機器學習技術的能力和局限性的理解。
首先,我們在 EB robinos 參考架構的背景下討論基于機器學習的高度自動駕駛的設計空間和架構替代方案。然后詳細介紹了 Elektrobit 目前正在研究和開發的兩個選定用例。
第二部分提供了機器學習和深度神經網絡 (DNN) 的理論背景,它們為推導用于根據給定任務選擇機器學習技術的標準提供了基礎。最后,第三部分討論了影響功能安全考慮的驗證和確認挑戰。
機器學習和高度自動化駕駛
開發導致自動駕駛汽車的高度自動駕駛功能是一項復雜而艱巨的任務。工程師通常使用分而治之的原則來應對這些挑戰。這是有充分理由的:具有明確定義接口的分解系統可以比單個黑盒更徹底地測試和驗證。
我們的高度自動駕駛方法是 EB robinos,如圖 1 所示。EB robinos 是一種功能性軟件架構,具有開放接口和軟件模塊,允許開發人員管理自動駕駛的復雜性。EB robinos 參考架構按照“感知、計劃、行動”分解范式集成了組件。此外,它在其軟件模塊中利用機器學習技術,以應對高度非結構化的現實世界駕駛環境。以下小節包含已選擇的集成在 EB robinos 中的技術示例。
圖 1.開放式 EB robinos 參考架構。
相比之下,端到端的深度學習方法也存在,它涵蓋了從感覺到行動的方方面面(Bojarski et al. 2016)。然而,關于極端情況和罕見事件的處理和訓練,以及必要的訓練數據的指數數量,分解方法(即語義抽象)被認為更合理(Shalev-Shwartz et al. 2016 )。
然而,即使遵循分解方法,也需要決定哪些部分最好單獨處理或與其他部分結合處理。還必須確定機器學習方法是否有望在特定塊完成的任務中優于傳統工程算法。尤其重要的是,此決定可能會受到功能安全考慮的影響。如本系列后面所述,功能安全是自動駕駛的關鍵要素。傳統的軟件組件是根據具體需求編寫的,并進行相應的測試。
機器學習系統測試和驗證的主要問題是它們的黑盒性質和學習方法的隨機行為。基本上不可能預測系統如何學習其結構。
上面給出的標準和理論背景可以為明智的決策提供指導。Elektrobit 目前正在研究和開發機器學習方法被認為很有前景的用例。接下來介紹兩個這樣的用例。第一個涉及為機器學習算法生成人工訓練樣本及其在交通標志識別中的部署。第二個用例描述了我們的自學汽車方法。這兩個示例都使用了當前最先進的深度學習技術。
用例 1:人工樣本生成和交通標志識別
該項目在增強入口導航系統中使用的 OpenStreetMap (OSM) 數據的背景下,提出了一種限速和限速結束交通標志 (TS) 識別系統。目的是在可以安裝在汽車擋風玻璃上的標準智能手機上運行該算法。系統檢測交通標志及其 GPS 位置,并通過手機的移動數據連接將收集的數據上傳到后端服務器。該方法主要分為兩個階段:檢測和識別。檢測是通過增強分類器實現的。識別是通過概率貝葉斯推理框架執行的,該框架融合了由一組視覺概率過濾器傳遞的信息。本文的下一部分包含對所用算法背后的理論背景的描述。
圖 2:基于智能手機的 TSR 系統框圖
獲得的彩色圖像以 24 位 RGB 格式傳遞給檢測器。通過評估通過檢測窗口計算的級聯分類器的響應來執行檢測過程。
該檢測窗口以不同的比例在圖像上移動。可能的交通標志感興趣區域 (RoI) 被收集為一組對象假設。從特征提取的角度來看,分類級聯使用擴展的局部二進制模式 (eLPB) 進行訓練。假設向量中的每個元素通過支持向量機(SVM)學習算法分類為交通標志。
交通標志識別方法依賴于人工標記的交通標志,用于訓練檢測和識別分類器。由于不同國家使用的交通標志模板種類繁多,標記過程繁瑣且容易出錯。
要使交通標志識別方法表現良好,需要每個國家/地區的特定訓練數據。由于必須考慮位置、照明和天氣條件,因此創建足夠多的手動標記交通標志非常耗時。
因此,Elektrobit 創建了一種算法,可以從單個人工模板圖像自動生成訓練數據,以克服手動注釋大量訓練樣本的挑戰。圖 4 顯示了算法的結構。
圖 4.基于機器學習的識別系統的人工樣本生成算法框圖。
這種方法提供了一種生成用于機器學習算法訓練階段的人工數據的方法。該方法使用每個國家的真實和通用交通標志圖像模板的縮減數據集來輸出圖像集合。
這些圖像的特征是由一系列圖像模板變形算法人為定義的。使用核主成分分析 (KPCA) 對減少的一組真實世界圖像對由此獲得的人工圖像進行評估。當生成圖像的特征與真實圖像的特征相對應時,人工數據集適用于機器學習系統的訓練,在這種特殊情況下用于交通標志識別。
Elektrobit 將 Boosting SVM 分類器替換為基于深度區域的檢測和識別卷積神經網絡,以提高原始交通標志識別系統的精度。該網絡使用 Caffe (Jia et al. 2014) 進行部署,Caffe 是由 Berkley 開發并由 NVIDIA 支持的深度神經網絡庫。Caffe 是一個帶有 Python 和 Matlab 接口的純 C++/CUDA 庫。除了核心的深度學習功能外,Caffe 還提供可直接用于機器學習應用的參考深度學習模型。圖 5 顯示了用于交通標志檢測和識別的 Caffe 網絡結構。不同的彩色塊代表卷積(紅色)、池化(黃色)、激活(綠色)和全連接網絡層(紫色)。
圖 5. Caffe 中基于深度區域的檢測和識別卷積神經網絡。
用例 2:學習如何駕駛
深度學習的革命最近增加了對另一種范式的關注,即強化學習 (RL)。在 RL 中,代理本身通過獎勵系統學習如何執行某些任務。該方法屬于半監督學習的范疇,因為獎勵系統的設計需要特定領域的知識。
與監督學習相比,即使輸入數據不需要標記也是如此。最近對 RL 的興趣主要歸功于 Deep Mind 團隊的開創性工作。該團隊設法將 RL 與能夠學習動作價值函數的深度神經網絡相結合(Mnih et al. 2016)。他們的系統能夠學會以人類水平的能力玩多個 Atari 游戲。
我們構建了深度強化學習系統,如圖 6 所示,以便安全地試驗自動駕駛學習。該系統使用 TORCS 開源競賽模擬器(Wymann et al. 2014)。TORCS 作為高度便攜的多平臺賽車模擬器在科學界被廣泛使用。它在 Linux(所有架構,32 位和 64 位,小端和大端)、FreeBSD、OpenSolaris、MacOSX 和 Windows(32 位和 64 位)上運行。它有許多不同的汽車、賽道和對手來比賽。我們可以收集用于物體檢測的圖像以及來自游戲引擎的關鍵駕駛指標。這些指標包括汽車的速度、自我汽車與道路中心線的相對位置以及與前面汽車的距離。
圖 6.用于學習如何在模擬器中駕駛的深度強化學習架構。
該算法的目標是通過與虛擬環境交互來自學駕駛命令。為此目的使用了深度強化學習范式,其中深度卷積神經網絡 (DNN) 通過提供正獎勵信號的強化動作 a 進行訓練r(s^‘,a)。狀態s由模擬器窗口中顯示的當前游戲圖像表示。有四種可能的動作:加速、減速、左轉和右轉。
DNN 計算一個所謂的Q-函數,該函數預測要針對特定狀態執行的最優動作 a s。換句話說,DNNQ-為每個狀態-動作對計算一個值。將執行具有最高Q-值的操作,這會將模擬器環境移動到下一個狀態,s’。在這種狀態下,通過獎勵信號來評估執行的動作r(s’,a)。
例如,如果汽車能夠在沒有碰撞的情況下加速,那么使這成為可能的相關動作將在 DNN 中得到加強;否則,它會氣餒。通過使用狀態獎勵信號重新訓練 DNN,在框架中執行強化。圖 7 顯示了深度強化學習算法的 Caffe 實現。網絡層具有與圖 6 相同的顏色編碼。
圖 7.用于深度強化學習的基于 Caffe 的深度卷積神經網絡結構。
第二部分定義了機器學習技術的理論背景,以及汽車開發人員可用的神經網絡類型。
審核編輯:郭婷
-
汽車電子
+關注
關注
3027文章
7984瀏覽量
167263 -
神經網絡
+關注
關注
42文章
4774瀏覽量
100898 -
機器學習
+關注
關注
66文章
8425瀏覽量
132771
發布評論請先 登錄
相關推薦
評論