楊 蕾,雷為民,張 偉
1(東北大學(xué) 計算機(jī)科學(xué)與工程學(xué)院,沈陽 110819)2(阿里巴巴集團(tuán) 達(dá)摩院自動駕駛實驗室,杭州 310000)
自動駕駛?cè)蝿?wù)尤其是在復(fù)雜的城市環(huán)境中是一個充滿挑戰(zhàn)性的問題.其挑戰(zhàn)主要來自2個方面:原始的傳感器數(shù)據(jù)維度高,提取有效合理的特征完成對環(huán)境信息的表示是關(guān)鍵;另一個方面自動駕駛訓(xùn)練數(shù)據(jù)往往是車輛正常行駛的視頻而極少包含非正常行駛的視頻,樣本分布不均衡,使得算法帶有偏差,泛化性差.
在自動駕駛環(huán)境特征提取方面,使用圖像作為輸入的自動駕算法[1-5]駛?cè)〉昧送黄菩缘倪M(jìn)展.這些研究都是把圖片作為輸入,經(jīng)過深度神經(jīng)網(wǎng)絡(luò)抽取特征.但是,圖像只是對環(huán)境的一個空間表示I
在自動駕駛算法方面,常用的算法分為仿生學(xué)習(xí)(Imitation Learning)算法和深度強(qiáng)化學(xué)習(xí)(Deep Reinforce Learning)算法.仿生學(xué)習(xí)從某種角度上可以看做是一種監(jiān)督學(xué)習(xí),其目標(biāo)是通過深度神經(jīng)網(wǎng)絡(luò)去擬合專家的行為.然而,采集的自動駕駛數(shù)據(jù)往往包含大量的正樣本和極少的負(fù)樣本,造成樣本的不均衡.仿生學(xué)習(xí)的算法容易受到數(shù)據(jù)分布偏差的影響,當(dāng)碰到?jīng)]有見過的場景時,算法往往會采取錯誤的操作,而錯誤的操作又會進(jìn)一步導(dǎo)致沒有遇到的場景.近幾年,在自動駕駛中常用的另一類算法是深度強(qiáng)化學(xué)習(xí)算法.深度強(qiáng)化學(xué)習(xí)算法是在不斷試錯過程中學(xué)習(xí)的一類算法.在深度強(qiáng)化學(xué)習(xí)框架中,代理(Agent)通過與環(huán)境的交互,獲取對應(yīng)獎勵(Reward),其最終目標(biāo)是學(xué)習(xí)策略π使得最終的累積獎勵最高.由于獎勵只是間接影響算法的決策,所以深度強(qiáng)化學(xué)習(xí)算法不會受到數(shù)據(jù)樣本比例不平衡的影響.因此,STRLAD算法采用強(qiáng)化學(xué)習(xí)算法,設(shè)計合理的獎勵函數(shù),最終產(chǎn)出行為策略.
STRLAD算法的整體框架如圖1所示和算法1所示,以視頻作為輸入,通過雙流網(wǎng)絡(luò)提取特征并融合,然后輸入到強(qiáng)化學(xué)習(xí)算法Soft Actor-Critic(SAC)進(jìn)行學(xué)習(xí).STRLAD算法的貢獻(xiàn)如下:1)提出雙流網(wǎng)絡(luò),完成對環(huán)境的時空特征提取;2)使用雙流網(wǎng)絡(luò)的特征,進(jìn)行強(qiáng)化學(xué)習(xí)算法嘗試;3)通過實驗證明其有效性,在CARLA[2]測試中,STRLAD算法能夠在復(fù)雜擁堵的城市環(huán)境中完成自動駕駛?cè)蝿?wù),成功率達(dá)到89%.
圖1 STRLAD算法整體流程圖Fig.1 Overall flowchart
在圖像領(lǐng)域,CNN一直占據(jù)著主導(dǎo)地位,從早期的AlextNet[10]、VGG[11]、ResNet[12]到ConvNeXt[13]已成為圖像特征提取的基礎(chǔ)網(wǎng)絡(luò).然而,視頻本身包含圖像和時間兩個維度的信息.近幾年,隨著深度基礎(chǔ)網(wǎng)絡(luò)的發(fā)展,視頻時空特征挖掘方面有了很大的發(fā)展.在2D網(wǎng)絡(luò)結(jié)構(gòu)中包含:Deep-Video[14]、TwoStreamNet[15]和TSN[16]及其擴(kuò)展;在3D網(wǎng)絡(luò)結(jié)構(gòu)中包含:C3D[17]、I3D[18]及其擴(kuò)展;在視頻注意力算法(Transformer)領(lǐng)域包含:TimesTransformer[19]和ViT[20]等.STRLAD的雙流網(wǎng)絡(luò)受到TwoStreamNet和SlowFastNetwork的啟發(fā),與兩者相比網(wǎng)絡(luò)結(jié)構(gòu)和輸入均不同,雙流網(wǎng)絡(luò)輸入包含RGB圖片和連續(xù)灰度圖,主干網(wǎng)絡(luò)(Backbone)采用改進(jìn)的ResNet34網(wǎng)絡(luò)結(jié)構(gòu).
在視頻的時間維度特征研究中,光流表示圖像幀之間像素的變化.經(jīng)典的Lucas光流算法[21]被集成到OpenCV庫中得到廣泛的應(yīng)用.然而,光流的大幅度變化(比如建筑物的光照變化)與車輛的控制并沒有太大的關(guān)系.因此STRLAD算法的雙流網(wǎng)絡(luò)注重學(xué)習(xí)與自動駕駛有關(guān)的特征,與直接使用光流特征不同.
注意力機(jī)制[22]能夠強(qiáng)化與任務(wù)相關(guān)的特征權(quán)重,前期在NLP領(lǐng)域取得成功,近幾年注意力機(jī)制在圖像和視頻領(lǐng)域也取得了很大的發(fā)展,從早期的SqueezeNet[23],Non-Local[24]到Transformer網(wǎng)絡(luò).STRLAD算法的雙流網(wǎng)絡(luò)網(wǎng)絡(luò)通過注意力機(jī)制融合運動和感知兩個特征,為自動駕駛提供更好的特征表示.
強(qiáng)化學(xué)習(xí)的發(fā)展最早可以追溯到1953年,應(yīng)用數(shù)學(xué)家 Richard Bellman提出動態(tài)規(guī)劃數(shù)學(xué)理論和方法,其中的貝爾曼條件(Bellman condition)是強(qiáng)化學(xué)習(xí)的核心基石之一.1988年,TD算法[25]誕生,1989年Watkins提出Q學(xué)習(xí)[26],1994年Rummery提出Saras算法[27].后續(xù)強(qiáng)化學(xué)習(xí)慢慢發(fā)展起來,但是由于一直無法解決感知(Perception)問題,導(dǎo)致其無法很好求解復(fù)雜環(huán)境下的決策問題,使得強(qiáng)化學(xué)習(xí)這一具備決策能力的算法,并沒有被引起廣泛的關(guān)注.但在2012前后,隨著深度學(xué)習(xí)技術(shù)的出現(xiàn)(以Krizhevsky 等人為代表的AlexNet),促使計算機(jī)視覺,自然語言處理,語音識別等領(lǐng)域出現(xiàn)爆炸式的技術(shù)進(jìn)步,深度學(xué)習(xí)也由此成為人工智能領(lǐng)域最熱門的關(guān)注點之一.強(qiáng)化學(xué)習(xí)也得益于深度學(xué)習(xí)的快速發(fā)展,迎來新的突破,通過結(jié)合深度學(xué)習(xí)方法,很好地解決了一直困擾強(qiáng)化學(xué)習(xí)的感知問題.通過將強(qiáng)化學(xué)習(xí)的決策能力結(jié)合深度學(xué)習(xí)的感知能力,從而實現(xiàn)從感知到?jīng)Q策的端對端學(xué)習(xí)(End-to-End Learning).現(xiàn)在強(qiáng)化學(xué)習(xí)主要指的也就是深度強(qiáng)化學(xué)習(xí)(Deep Reinforcement Learning,簡稱DRL).
強(qiáng)化學(xué)習(xí)算法根據(jù)環(huán)境模型是否已知分為Model-Free算法和Model-Base算法.Model-Free具有通用性,具體又可以分為基于策略梯度優(yōu)化(Policy)的算法,A2C/A3C[28]、PPO[29]和TPRO[30];基于價值估計的算法(Q-Learning)的算法DQN[31]、C51[32]、QR-DQN[33]和HER[34]等.基于Policy的算法是對策略進(jìn)行直接學(xué)習(xí),算法相對穩(wěn)定.基于Q-Learning的算法評估狀態(tài)價值(滿足Bellman等式)間接用于優(yōu)化動作的選取,所以穩(wěn)定性相對較差,但是Q-Learning算法可以對數(shù)據(jù)進(jìn)行重用,數(shù)據(jù)利用率高.基于Policy算法和Q-Learning算法并不是互斥的,可以通過Q-Learning算法評估動作的好壞,再通過梯度優(yōu)化策略使得策略價值最大,常見的算法:DDPG[35]、TD3[36]和SAC[37]等.SAC引入熵的概念,平衡策略探索和利用已學(xué)策略,因此,STRLAD算法模型中選擇SAC算法作為強(qiáng)化學(xué)習(xí)的主體框架.
Model-Base的算法是已知環(huán)境模型的算法,算法從某種角度上是一個動態(tài)規(guī)劃問題或者逐步優(yōu)化的問題,常見算法包括:蒙脫卡洛樹算法(MCTS)等,不是本文討論的重點.
仿生學(xué)習(xí)(Imitation learning,簡稱IL)是一種仿生學(xué)方法,該方法把傳感器的原始輸入直接映射到最終的動作,是一種端對端的學(xué)習(xí)方式.早期自動駕駛網(wǎng)絡(luò)[38]和避障網(wǎng)絡(luò)[39]使用攝像頭作為輸入,使用神經(jīng)網(wǎng)絡(luò)相關(guān)動作進(jìn)行預(yù)測.CIL[40]使用高層轉(zhuǎn)向指令消除自動駕駛車輛在路口的歧義性,開啟了導(dǎo)航的一個新的階段.多任務(wù)預(yù)測導(dǎo)航算法[4]通過增加預(yù)測圖像深度和圖像分隔任務(wù),使得模型有更好的泛化能力.CILRS[41]增加對速度的預(yù)測,同時探索自動駕駛的一些限制.LBC[42]是一種知識蒸餾的方法,提出"老師"和"學(xué)生"雙網(wǎng)絡(luò)結(jié)構(gòu),通過"老師"網(wǎng)絡(luò)優(yōu)化"學(xué)生"網(wǎng)絡(luò),取得很好的效果.嘗試多模態(tài)的融合[43]研究,證明早期的融合有助于特性的學(xué)習(xí).與STRLAD雙流網(wǎng)絡(luò)類似的多模算法[44]融合圖像和雷達(dá)兩種模態(tài),模態(tài)之間使用注意力機(jī)制,而雙流網(wǎng)絡(luò)關(guān)注視頻時空特征的挖掘,模態(tài)和網(wǎng)絡(luò)主干都與之不同.
CIRL[5]使用錄制的視頻和車輛操作記錄進(jìn)行仿生學(xué)習(xí),首先通過仿生學(xué)習(xí)訓(xùn)練特征提取網(wǎng)絡(luò),然后使用訓(xùn)練好的網(wǎng)絡(luò)提取特征,再使用DDPG算法進(jìn)行強(qiáng)化學(xué)習(xí),是最早在CARLA環(huán)境下使用強(qiáng)化學(xué)習(xí)的算法.MDRL[45]把圖像的輸入映射為鳥瞰圖(Bird′s Eye View),通過神經(jīng)網(wǎng)絡(luò)對鳥瞰圖進(jìn)行編碼,然后分別嘗試DDQN、TD3和SAC算法,其中SAC算法效果最好.IAs[46]使用ResNet18進(jìn)行特征提取,然后使用Rainbow-IQN框架進(jìn)行強(qiáng)化學(xué)習(xí).GRIAD[47]提供一個通用的端對端的視覺自動駕駛框架,分為感知編碼模塊和強(qiáng)化學(xué)習(xí)模塊,其中感知模塊進(jìn)行圖像分隔和分類模型的訓(xùn)練,然后凍結(jié)感知模塊權(quán)重作為編碼層,編碼的特征與專家特征進(jìn)行混合后使用Rainbow-IQN進(jìn)行訓(xùn)練.這些研究都是通過特征網(wǎng)絡(luò)進(jìn)行圖像空間信息特征的提取和壓縮,然后進(jìn)行深度強(qiáng)化學(xué)習(xí).STRLAD算法整體框架與之類似,雙流網(wǎng)絡(luò)重點挖掘時空結(jié)合的特征,然后凍結(jié)雙流網(wǎng)絡(luò)參數(shù)進(jìn)行特征提取,最后使用SAC算法進(jìn)行強(qiáng)化學(xué)習(xí).
(1)
(2)
STRSAD算法整體框架分為2個步驟,首先訓(xùn)練雙流網(wǎng)絡(luò)用于特征提取,其次通過SAC強(qiáng)化學(xué)習(xí)進(jìn)行策略學(xué)習(xí),具體如算法1所示.
算法1.STRLAD模型算法
輸入:訓(xùn)練數(shù)據(jù)集D
輸出:策略網(wǎng)絡(luò)π*(s,a)∈A
//訓(xùn)練雙流網(wǎng)絡(luò)提取特征,見3.2節(jié)
Datad←
FunctionFitForward(Datad)→F(o,θd)
Minimize Equation(3)
ReturnFθd
End
//強(qiáng)化學(xué)習(xí)算法訓(xùn)練,見3.3節(jié)
Repeat
D←Store(s,a,r,s′,d)//d表示任務(wù)是否結(jié)束
Forbatch∈Ddo
Compute Q Equation(10)
Update Policy Equation(12)
End for
Until Convergence
雙流網(wǎng)絡(luò)是一個端對端的深度網(wǎng)絡(luò),如圖2所示兩個網(wǎng)絡(luò)分支:感知網(wǎng)絡(luò)和運動網(wǎng)絡(luò)通道數(shù)量之比與感知細(xì)胞與運動細(xì)胞之比(8∶1 的通道數(shù)量)相同,并使用注意力進(jìn)行特征融合,完成對周圍環(huán)境的特征表示,是算法的核心和創(chuàng)新點.
圖2 雙流網(wǎng)絡(luò)結(jié)構(gòu)圖Fig.2 Dual stream network structure
(3)
其中F是以θd為參數(shù)的卷積神經(jīng)網(wǎng)絡(luò),Wi表示航點,L表示損失函數(shù).
任務(wù)的每一幕(Episode)都有一個目的地Dg={Ci,…,Cm},Ci表示車輛在路口的具體轉(zhuǎn)向方向,消除路口的歧義性,在CIL[40]以及后續(xù)研究中也證明其重要性,網(wǎng)絡(luò)輸入表示為:Oi={I,C,V}i,I表示圖像輸入,V表示車輛速度,C表示路口轉(zhuǎn)向指令.
雙流網(wǎng)絡(luò)從車輛的前置攝像頭獲取視頻輸入.感知網(wǎng)絡(luò)以T的采樣率獲取RGB圖片作為輸入,標(biāo)記為Irgb←T.運動網(wǎng)絡(luò)以αT采樣率獲取灰度圖作為輸入,標(biāo)記為Igrey,兩者比例為Irgb=αIgrey,經(jīng)過實驗驗證α=8,T=3結(jié)果最優(yōu)—即感知網(wǎng)絡(luò)每秒采集3張彩色圖片,運動網(wǎng)絡(luò)每秒采集3×8張灰度圖.車輛的速度采用基于車輛儀表盤顯示的速度并做歸一化,0表示靜止,1表示最大速度.雙流網(wǎng)絡(luò)最終輸出預(yù)測的航點.
雙流網(wǎng)采用RestNet34作為主干網(wǎng)絡(luò)并做重要改進(jìn),具體結(jié)構(gòu)如表1所示.
表1 雙流網(wǎng)絡(luò)詳細(xì)結(jié)構(gòu)圖Table 1 Detailed structure of the dual stream network
感知網(wǎng)絡(luò)從階段3開始?xì)埐钅K中的步長均為1,保持分辨率不變,輸出特征向量Po.運動網(wǎng)絡(luò)考慮物體運動的整體性,通道數(shù)縮小8倍,分辨率降為原圖片的1/32,輸出特性向量Mo.
注意力機(jī)制[22]完成網(wǎng)絡(luò)特征融合.假設(shè)兩個特征:F1∈Rn×d,F2∈Rm×d,其中n,m,d代表不同的維度F1與F2做注意力學(xué)習(xí)的前提是兩者向量維度d相同.Q是F1對應(yīng)的向量,K,V是F2的對應(yīng)的特性向量,兩者注意力如等式(4)所示:
(4)
最后,雙流網(wǎng)絡(luò)整合兩個分支網(wǎng)絡(luò)特征
雙流網(wǎng)絡(luò)采用L1損失函數(shù)回歸速度和航點.V和V*表示真實的航點和預(yù)測的航點,損失函數(shù)表示等式(5)為:
(5)
STRLAD算法采用SAC算法作為強(qiáng)化學(xué)習(xí)的主體.SAC算法是增加熵的離線隨機(jī)策略強(qiáng)化學(xué)習(xí)算法.SAC算法最主要的特性就是使用正則化熵,使得訓(xùn)練的策略能夠平衡累計獎勵和熵,防止模型局部最優(yōu).熵表示的是變量的隨機(jī)性,熵增大使得模型增加對新動作的探索能力,反之則減少.
SAC算法的目標(biāo)是找到累計價值最大的策略等式(6)如下:
(6)
π*表示學(xué)習(xí)的最優(yōu)策略,τ表示在策略π的一幕(episode)中所有步驟,γ表示獎勵折扣系數(shù),R表示獎勵函數(shù),α是熵系數(shù)也成為溫度值,H表示在狀態(tài)s下策略π選擇的動作的熵.
SAC算法的價值函數(shù)Q如等式(7)所示:
Qπ(s,a)≈r(s,a,s′)+γ(Qπ(s′,a′)-αlogπ(a′|s′))
(7)
其中s′表示下一個狀態(tài),a′表示下一個動作.價值網(wǎng)絡(luò)的訓(xùn)練使用的損失函數(shù)如等式(8)所示:
L(φi,D)=E(s,a,r,s',d)~D[(Qφi(s′,a′)-y(r,s′,d))2]
(8)
其中:
(9)
有了價值函數(shù)Q,策略的學(xué)習(xí)就是最大化價值與熵之和,等式(10)如下:
Vπ(s)=Ea~π[Qπ(s,a)-αlogπ(a|s)]
(10)
其中的動作a使用高斯策略如等式(11)所示:
aθ(s,ξ)=tan(μθ(s)+σθ(s)·ξ),ξ~N(0,I)
(11)
最終的策略計算如等式(12)為:
(12)
STRLAD算法的SAC算法模型包含1個策略網(wǎng)絡(luò)和2個價值網(wǎng)絡(luò),其輸入都是在雙流網(wǎng)絡(luò)的主干網(wǎng)絡(luò)上增加512到64的稠密層.價值網(wǎng)絡(luò)Q的輸出是一個標(biāo)量,策略網(wǎng)絡(luò)輸出動作的均值和方差.
獎勵函數(shù)的計算使用CARLA環(huán)境的航點信息.通過CARLA的API能夠獲得當(dāng)前環(huán)境中所有車道的連續(xù)路徑點位置和方向,這些信息提供車輛和周圍環(huán)境的準(zhǔn)確描述.獎勵函數(shù)包含:車輛的速度rv、車輛的位置rp和車頭的角度ra,如等式(13)所示:
R(s,a)=rv+rp+ra
(13)
車輛的速度rv是車輛當(dāng)前速度與期望速度的差值,取值范圍為[0-1],當(dāng)車輛在紅燈或者即將與其他車輛發(fā)生碰撞,車輛的期望速度會調(diào)整為0,對應(yīng)的懲罰值也會改變,訓(xùn)練時采用的速度為30km/h.車輛的位置rp的計算依賴車輛當(dāng)前的位置與車道中心位置的差值,取值范圍為[-2,2],2表示與期望的航點位置無偏差,-2表示車輛與車道中心航點的偏差超過2m.車頭的角度ra是車頭朝向與車輛正確角度(車道中心位置的航點)的偏差值的計算,取值范圍為[-1,0],0表示無偏差,-1代表最大偏差,如果沒有車頭角度的獎勵,車輛不能正常行走,經(jīng)常沖出車道.在訓(xùn)練階段,使用Adam優(yōu)化器,學(xué)習(xí)速率為3×10-4.
本章介紹實驗的建立,結(jié)果的對比和相關(guān)消融實驗.
STRLAD算法的訓(xùn)練和驗證在CARLA0.9.12中的8個城市中完成,其中城市[1-4,6-8]中的地圖中包含的場景相對單一有助于算法的訓(xùn)練,城市5是一個包含十字路口、橋梁和多個車道相對復(fù)雜的方格城鎮(zhèn)地圖,適合算法性能測試.每個城市產(chǎn)生隨機(jī)的100個行人和70個車輛.每個任務(wù)由開始和結(jié)束坐標(biāo)(GPS)組成,車輛在規(guī)定時間內(nèi)無碰撞的到達(dá)目的地表示任務(wù)成功,否則表示失敗,如果違反紅綠燈規(guī)則但是并沒有造成碰撞也表示成功.車輛在行駛過程中,參照CILRS[41]增加轉(zhuǎn)向噪音,增強(qiáng)數(shù)據(jù)的泛化行.采集的數(shù)據(jù)包含車輛正面的攝像頭RGB視頻數(shù)據(jù)(20HZ),傳感器數(shù)據(jù)包括:速度、導(dǎo)航指令、航點、車輛位置、車頭角度、油門、剎車和加速度等.考慮到實驗的目標(biāo)是檢測車輛在復(fù)雜多物體的環(huán)境中自動駕駛的性能,去除了天氣條件的影響,只使用Clear Noon天氣.模型的評估在城市5中進(jìn)行,總共設(shè)置10個子任務(wù),每個任務(wù)包含任務(wù)的起始點和轉(zhuǎn)向指令,行駛長度1000-2000m并在預(yù)定位置隨機(jī)產(chǎn)生100個行人和70輛車.評估的指標(biāo)包含任務(wù)完成率RC、碰撞率Col和超時率(Time Out,簡稱TO).
算法的對比只選擇以圖像作為輸入,除LBC[42]以外都采用強(qiáng)化學(xué)習(xí)算法.LBC是一種仿生學(xué)習(xí)算法是目前NoCrash數(shù)據(jù)集的最好算法,最新版本中增加圖像熱力圖改進(jìn)其性能,在STRLAD訓(xùn)練數(shù)據(jù)集上進(jìn)行了復(fù)現(xiàn).MDRL[45]把圖像轉(zhuǎn)化為鳥瞰視圖,通過深度神經(jīng)網(wǎng)絡(luò)進(jìn)行圖像編碼,然后進(jìn)行強(qiáng)化學(xué)習(xí).IAs[46]使用手動設(shè)置的指標(biāo)和圖像分割進(jìn)行特征提取,然后通過Rainbow-IQN-Apex進(jìn)行訓(xùn)練,是一種離散離線強(qiáng)化學(xué)習(xí)算法.GRIAD[47]是目前官網(wǎng)能夠獲取到源碼的最好方法(排名第三,前兩個無法獲取源碼),是一種混合仿生學(xué)習(xí)和強(qiáng)化學(xué)習(xí)的方法.為比較GRIAD也使用1個攝像頭作為輸入,其他保持不變.STRLAD_cilrsw使用CILRS-W替換雙流網(wǎng)絡(luò)進(jìn)行特征提取,其它保持不變.CILRS-W是對CILRS[41]的改進(jìn),使用其主干網(wǎng)絡(luò)進(jìn)行航點的預(yù)測,可以看做是只使用雙流網(wǎng)絡(luò)的感知網(wǎng)絡(luò)分支.STRLAD_griad是借鑒GRIAD訓(xùn)練模型,在訓(xùn)練的過程中增加仿生學(xué)習(xí)的訓(xùn)練方式.
為相對公平比較,所有模型都使用與雙流網(wǎng)絡(luò)訓(xùn)練相同的數(shù)據(jù)集和訓(xùn)練時長,對比的強(qiáng)化學(xué)習(xí)算法都訓(xùn)練到收斂為止.各個算法與STRSAD的對比方法分為訓(xùn)練部分對比和最終測試對比兩部分.LBC算法的訓(xùn)練是一個監(jiān)督學(xué)習(xí)的過程,與強(qiáng)化學(xué)習(xí)的訓(xùn)練不具備可比性,因此LBC算法只進(jìn)行最終測試對比,見表2所示.MDRL、IAs、STRLAD_cilrsw、GRIAD和STRLAD_griad在訓(xùn)練階段都使用STRLAD的采集的數(shù)據(jù)集集進(jìn)行訓(xùn)練,其對比結(jié)果如圖3所示,最終測試對比都在城市5中進(jìn)行,其結(jié)果如表2所示.
STRLAD算法與各個算法的訓(xùn)練對比結(jié)果如圖3所示.圖3(a)STRLAD算法最終取得與GRIAD算法相當(dāng)?shù)男Чm然收斂速度慢,其原因GRIAD充分利用仿生學(xué)習(xí)和強(qiáng)化學(xué)習(xí)的優(yōu)點,提高數(shù)據(jù)利用率.借鑒GRIAD訓(xùn)練方法STRLAD_griad如圖3(e)所示達(dá)到同樣的收斂速度和準(zhǔn)確率.圖3(b)MDRL算法效果相對于STRLAD效果差,其原因是鳥瞰視圖會造成小物體的模糊,無法準(zhǔn)確表征周圍的環(huán)境信息.圖3(c)IAs算法效果比STRLAD差,其原因是手動設(shè)計的自動駕駛特征不能充分表示擁堵環(huán)境中的多個物體.圖3(d)STRLAD_cilrsw算法效果比STRLAD差,其原因是雙流網(wǎng)絡(luò)提供時空特征表示比單純的空間特征更豐富.
圖3 算法訓(xùn)練對比結(jié)果圖Fig.3 Comparison results of algorithm training
STRLAD算法與各個算法在測試集進(jìn)行測試,結(jié)果如表2所示.
表2 算法模型測試結(jié)果對比Table 2 Algorithm model test results comparison
通過對比,1)STRLAD算法完成率高,與GRIAD相比 STRLAD_griad完成率達(dá)到最高為91%.LBC無法對動態(tài)物體的有效檢測,在測試任務(wù)上泛化性低,準(zhǔn)確率低.MDRL使用鳥瞰圖像編碼進(jìn)行特征表示,在大量的動態(tài)物體時表現(xiàn)不佳.IAs通過手動設(shè)計的指標(biāo)和圖像分隔進(jìn)行特征提取,模型性能有較大改善,但是在人車密集的長距離任務(wù)中對于面對突然出現(xiàn)的行人和車輛表現(xiàn)較差.GRIAD使用專家數(shù)據(jù)作為最高獎勵同時進(jìn)行在線學(xué)習(xí),完成率達(dá)到90%,是一個強(qiáng)大的模型.STRLAD_cilrsw算法由于采用CILRS-W進(jìn)行特征提取,損失時間維度造成完成率下降;2)雙流網(wǎng)絡(luò)提取的特征好.通過STRLAD_cilrsw與STRLAD對比,雙流網(wǎng)絡(luò)使得完成率獲得2%的提升;3)STRLAD算法碰撞率最低,達(dá)到7%,其原因是使用的強(qiáng)化學(xué)習(xí)是對車輛動作的連續(xù)空間預(yù)測,操作更加平滑精準(zhǔn);4)STRLAD算法的超時情況相對較高,與獎勵函數(shù)的設(shè)置有關(guān),需要進(jìn)一步改進(jìn).
STRLAD算法的雙流網(wǎng)絡(luò)是本文的創(chuàng)新點,因此針對雙流網(wǎng)絡(luò)設(shè)計消融實驗,強(qiáng)化學(xué)習(xí)算法保持不變.
注意力機(jī)制是否有效?如表3所示,STRLAD_cilrsw只使用感知網(wǎng)絡(luò)代替雙流網(wǎng)絡(luò).STRLAD(w/o A)算法去掉注意力機(jī)制,2個分支網(wǎng)絡(luò)特征簡單相加.通過實驗,STRDAD算法與STRLAD(w/o A)和STRLAD(CILRS-W)相比分別獲得1%和2%的提升,證明雙流網(wǎng)絡(luò)的有效性.
表3 注意力消融實驗算法模型結(jié)果Table 3 Results of attentional ablation experiments
為進(jìn)一步證明注意力機(jī)制的有效性,圖4可視化了注意力權(quán)重,雙流網(wǎng)絡(luò)對移動行人、汽車和信號燈都有較高權(quán)重,為復(fù)雜環(huán)境的移動物體檢測提供幫助.
圖4 可視化注意力機(jī)制Fig.4 Visual attention
雙流網(wǎng)絡(luò)采樣率之比α取值是否合理?雙流網(wǎng)絡(luò)的感知網(wǎng)絡(luò)和運動網(wǎng)絡(luò)的采樣率之比決定注意力機(jī)制的有效性,消融實驗結(jié)果如表4所示:α取值太小運動網(wǎng)絡(luò)無法完成運動特征學(xué)習(xí),算法模型退化為STRLAD_cilrsw;α值太大則無法完成與感知網(wǎng)絡(luò)的對齊,也會造成整體算法性能下降.
表4 雙流網(wǎng)絡(luò)輸入采用率之比α實驗結(jié)果Table 4 Experimental results of the ratio of input adoption rate α for dual-stream networks
在自動駕駛中實時性非常關(guān)鍵.在RTX3090 GPU的機(jī)器上STRSAD算法的平均耗時是通過平均完成一幕(episode)的所有視頻幀的平均值獲取,單幀耗時為35.3毫秒.相對于算法IAs(23.7毫秒)和GRIAD(21毫秒)較慢,其原因是雙流網(wǎng)絡(luò)使用更大的主干網(wǎng)絡(luò)和注意力機(jī)制計算有關(guān),需要進(jìn)一步優(yōu)化.
STRLAD算法的局限性是雙流網(wǎng)絡(luò)的耗時較多,需要進(jìn)一步優(yōu)化.算法模型的最終效果好,但收斂速度較慢,需要提高數(shù)據(jù)利用率和縮短訓(xùn)練時長.
自動駕駛?cè)蝿?wù)中環(huán)境的特征表示是算法成功的關(guān)鍵,受視覺中空間和時間特征的不對稱性啟發(fā),STRLAD算法的雙流網(wǎng)絡(luò):感知網(wǎng)絡(luò)和運動網(wǎng)絡(luò)嘗試學(xué)習(xí)視頻的時空特征.感知網(wǎng)絡(luò)使用改進(jìn)的ResNet34為主干,保持圖像高分辨率不變,完成對環(huán)境精細(xì)化理解;運動網(wǎng)絡(luò)為提高實時性,把ResNet34主干的通道縮減為原通道1/8,完成運動特征的學(xué)習(xí).STRLAD算法為克服數(shù)據(jù)樣本帶來的偏差,采用強(qiáng)化學(xué)習(xí)SAC算法進(jìn)行嘗試.通過實驗證明STRLAD算法模型的有效性,尤其是復(fù)雜環(huán)境下對移動物體的檢測,其完成率達(dá)到89%.
在自動駕駛領(lǐng)域,多傳感器的多模態(tài)的融合(比如Lidar與視覺的融合)是研究熱點.未來,STRLAD算法會嘗試多模態(tài)融合的特征提取,結(jié)合最新強(qiáng)化學(xué)習(xí)算法進(jìn)行相關(guān)研究.