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

RFID在圖書館自動化中的應(yīng)用

機器人和自動化的未來(2)

傳感器在機器人和自動化領(lǐng)域的應(yīng)用
蔡司三坐標(biāo)自動化解決方案提升企業(yè)效率的智能化伙伴

AI自動化生產(chǎn):深度學(xué)習(xí)在質(zhì)量控制中的應(yīng)用

評論