有了深度學(xué)習(xí)神經(jīng)網(wǎng)絡(luò),自動駕駛不是夢?
先進輔助駕駛系統(tǒng)(ADAS)可滿足汽車駕駛?cè)思俺丝蛯Φ缆钒踩俺鲂畜w驗的更高要求。 諸如車道偏離警告、自動剎車及停車輔助等系統(tǒng),已廣泛應(yīng)用于當(dāng)前的車型,甚至是功能更為強大的車道保持、塞車輔助及自適應(yīng)巡航控制等系統(tǒng)的配套使用,也讓全自動駕駛車輛逐漸成為現(xiàn)實。
目前很多ADAS系統(tǒng)是以機器視覺作為核心。 傳統(tǒng)上,機器視覺是以信號處理技術(shù)來檢測識別物體,但汽車制造業(yè)一直在尋求讓響應(yīng)速度更快、識別準(zhǔn)確度更高的方法。 對于正熱衷于進一步提高拓展 ADAS功能的汽車制造業(yè)而言,深度學(xué)習(xí)神經(jīng)網(wǎng)絡(luò)開辟了令人興奮的研究途徑。
以知名品牌為首的汽車制造業(yè)正在此技術(shù)上進行投資,并向高科技企業(yè)及學(xué)術(shù)界看齊。 在中國,百度一直在此技術(shù)上保持領(lǐng)先。 百度計劃在2019年將全自動汽車投入商用,并加大全自動汽車的批量生產(chǎn)力度,使其在2021年可廣泛投入使用。
神經(jīng)網(wǎng)絡(luò)輕量化 滿足嵌入式應(yīng)用需求
汽車制造業(yè)及技術(shù)領(lǐng)軍者之間的密切合作是嵌入式系統(tǒng)神經(jīng)網(wǎng)絡(luò)發(fā)展的催化劑。 這類神經(jīng)網(wǎng)絡(luò)需要滿足汽車應(yīng)用環(huán)境對系統(tǒng)大小、成本及功耗的要求。
卷積式神經(jīng)網(wǎng)絡(luò)(CNN)的應(yīng)用可分為三個階段:訓(xùn)練、轉(zhuǎn)化及執(zhí)行。 要想獲得一個高性價比、適合多種車輛使用的CNN,必須在每階段使用最為有利的系統(tǒng)。
在訓(xùn)練階段,目前業(yè)界大多是采用脫機的方式進行。 基于CPU的系統(tǒng)、圖形處理器(GPU)或現(xiàn)場可編程門陣列(FPGA)具有強大的運算能力,且使用的是設(shè)計人員熟悉的開發(fā)環(huán)境,是用來訓(xùn)練CNN的最理想的系統(tǒng)平臺。
在訓(xùn)練階段,開發(fā)商利用諸如Caffe等框架,對CNN進行訓(xùn)練及優(yōu)化。 參考圖像數(shù)據(jù)庫則用來確定神經(jīng)網(wǎng)絡(luò)的最佳權(quán)重。 訓(xùn)練結(jié)束后,開發(fā)商可采用傳統(tǒng)方法,在CPU、GPU或FPGA上生成網(wǎng)絡(luò)及原型,尤其是執(zhí)行浮點運算,以確保最高的精確度。
對車載環(huán)境來說,使用CPU、GPU或FPGA來執(zhí)行CNN有一些明顯的缺點。 這種實作方法的運算效率還有改進空間,成本偏高也使其無法在大量量產(chǎn)的系統(tǒng)中使用。
CEVA已經(jīng)推出了另一種解決方案。 這種解決方案可降低浮點運算的工作負荷,并在汽車應(yīng)用可接受的功耗水平上實現(xiàn)實時處理。 全自動駕駛對于運算性能有非常嚴(yán)格的要求,開發(fā)商必須想出一套能改善某些關(guān)鍵功能的策略,才能讓CNN在汽車領(lǐng)域被廣泛運用。
CEVA提出的策略是利用被稱為CDNN的框架,對現(xiàn)有的網(wǎng)絡(luò)生成策略進行改進。 透過CDNN框架,在高功耗浮點計算平臺(利用諸如Caffe的傳統(tǒng)網(wǎng)絡(luò)生成器)上開發(fā)的受訓(xùn)網(wǎng)絡(luò)結(jié)構(gòu)和權(quán)重,可以被轉(zhuǎn)化為基于定點運算,結(jié)構(gòu)緊湊的訂制網(wǎng)絡(luò)模型。
經(jīng)過這層轉(zhuǎn)換后的網(wǎng)絡(luò)模型,可以在經(jīng)過優(yōu)化的成像和視覺DSP芯片上運行。 由于功耗需求大幅降低,使得CNN網(wǎng)絡(luò)模型可以應(yīng)用在嵌入式平臺上。 圖1是輕量化嵌入式神經(jīng)網(wǎng)絡(luò)的生成過程。 與原本的CNN相比,這種技術(shù)可將高性能神經(jīng)網(wǎng)絡(luò)移植到功率預(yù)算較低的車用環(huán)境,而且圖像識別的精確度降低不到1%。
圖1 CDNN將通過傳統(tǒng)方法生成的網(wǎng)絡(luò)權(quán)重轉(zhuǎn)化為一個定點網(wǎng)絡(luò)。
一個由低功耗嵌入式平臺運行,輸入大小為224×224、卷積過濾器分別為11×11、5×5及3×3的24層卷積神經(jīng)網(wǎng)絡(luò),其性能表現(xiàn)幾乎是一個在典型的GPU/CPU綜合處理引擎上運行的類似CNN的三倍,但其所需的內(nèi)存帶寬只是后者的五分之一,且功耗大幅降低。
次世代深度學(xué)習(xí)神經(jīng)網(wǎng)絡(luò)百家爭鳴
汽車制造業(yè)進入神經(jīng)網(wǎng)絡(luò)領(lǐng)域所習(xí)得的經(jīng)驗不斷推動技術(shù)的發(fā)展,并因此開發(fā)出了更先進的網(wǎng)絡(luò)架構(gòu)及更復(fù)雜的拓撲,如每級多層拓撲、多入/多出及全卷積網(wǎng)絡(luò)。 新推出的重要網(wǎng)絡(luò)類型不僅可用來識別物體,也可用來識別場景,從而支持汽車應(yīng)用(如自動駕駛功能)所需的圖像分割。
技術(shù)公司是這些新一代網(wǎng)絡(luò)和架構(gòu)發(fā)展的核心。 CNN網(wǎng)絡(luò)生成器功能的改良,也為新的網(wǎng)絡(luò)架構(gòu)和拓撲提供必要的支持,如SegNet及GoogLeNet與ResNet等其它網(wǎng)絡(luò)結(jié)構(gòu)以及高級網(wǎng)絡(luò)層(圖2)。 此外,一鍵啟用也讓預(yù)訓(xùn)網(wǎng)絡(luò)轉(zhuǎn)換成優(yōu)化的實時網(wǎng)絡(luò)執(zhí)行更為便捷。 為確保能支持常用的網(wǎng)絡(luò)生成器,CDNN框架與Caffe和TensorFlow(Google的機器學(xué)習(xí)軟件庫)都有合作。
圖2 網(wǎng)絡(luò)生成器的發(fā)展為新網(wǎng)絡(luò)層及更深的架構(gòu)提供了支持。
由于最新推出的嵌入式處理平臺在可擴展性及靈活性上都有了很大改進,因此嵌入式CNN也可以從處理平臺的進步中同步進化。 由于深度學(xué)習(xí)領(lǐng)域的發(fā)展越來越多樣化,因此開發(fā)者必須采用一個極為靈活的架構(gòu)來發(fā)展CNN,不僅要滿足當(dāng)今處理需求,也必須具備因應(yīng)未來演變的能力。
神經(jīng)網(wǎng)絡(luò)即將進駐量產(chǎn)車款 視覺處理為首波應(yīng)用
第一批神經(jīng)網(wǎng)絡(luò)應(yīng)用將專注于視覺處理,以支持諸如自動行人、交通信號或道路特征識別等功能。 由于這些系統(tǒng)的性能不斷改進,例如處理越來越大的來自高分辨率相機的數(shù)據(jù)集,因此神經(jīng)網(wǎng)絡(luò)也有望在未來的汽車中發(fā)揮更大的作用。 這些作用將包括承擔(dān)系統(tǒng)中其它復(fù)雜的信號處理任務(wù),例如雷達模塊及語音識別系統(tǒng)。
某些車廠將在201∼2020年款的新車中搭載使用神經(jīng)網(wǎng)絡(luò)的自動駕駛系統(tǒng),未來車廠對同時兼具安全性及可靠性的系統(tǒng)需求會越來越大。 中國政府計劃在2021∼2025年推出自動駕駛車輛。 要讓此類系統(tǒng)具備可讓客戶使用的條件,汽車制造商必須同時確保其符合相關(guān)的安全標(biāo)準(zhǔn),如ISO 26262功能安全性。 這需要硬件、軟件及系統(tǒng)的綜合發(fā)展。
由于這些系統(tǒng)變得越來越復(fù)雜,因此確保系統(tǒng)可靠安全且能滿足處理需求也成為汽車制造商所面臨的越來越大的挑戰(zhàn)。
機器學(xué)習(xí)神經(jīng)網(wǎng)絡(luò)將沿一條挑戰(zhàn)高效處理性能的發(fā)展道路繼續(xù)闊步前進。 先進的神經(jīng)網(wǎng)絡(luò)架構(gòu)已經(jīng)顯現(xiàn)出優(yōu)于人類的識別精確性。 用于生成網(wǎng)絡(luò)的最新框架,如 CDNN2,正在推動輕量化、低功耗嵌入式神經(jīng)網(wǎng)絡(luò)的發(fā)展。 這種神經(jīng)網(wǎng)絡(luò)將使先進輔助駕駛系統(tǒng)具有較高的精確性與實時處理能力。
深度學(xué)習(xí)神經(jīng)網(wǎng)絡(luò)在量產(chǎn)車輛上的首次使用將限于基本的視覺識別系統(tǒng),但最終會在未來為自動化程度越來越高的車輛提供支持,幫助其應(yīng)對眾多的復(fù)雜信號處理挑戰(zhàn)。