董昊旻 張維軒 王文彬 何云廷 康子怡
(1.中國第一汽車股份有限公司研發(fā)總院,長春 130013;2.中國第一汽車股份有限公司智能網(wǎng)聯(lián)開發(fā)院,長春 130013;3.汽車振動噪聲與安全控制綜合技術(shù)國家重點實驗室,長春 130013;4.吉林大學(xué),長春 130012)
主題詞:駕駛風(fēng)格識別 半監(jiān)督學(xué)習(xí) 三協(xié)同訓(xùn)練
隨著車載通信終端(T-Box)逐漸普及,車載數(shù)據(jù)更易于獲取,同時,大數(shù)據(jù)技術(shù)的逐步應(yīng)用為通過車載數(shù)據(jù)進行駕駛風(fēng)格分析提供了便利。駕駛風(fēng)格主要指駕駛員的駕駛習(xí)慣,多通過駕駛時的行為特征進行定義。準確識別駕駛員的駕駛風(fēng)格可以有效地為車載功能的改進、供應(yīng)商向服務(wù)商的轉(zhuǎn)型,以及保險、理賠等業(yè)務(wù)提供強有力的支撐[1]。
駕駛員的駕駛風(fēng)格在各領(lǐng)域得到了大量應(yīng)用,如針對不同駕駛風(fēng)格設(shè)計混合動力汽車能量管理策略[2-3]、車輛換道預(yù)警方法[4]和智能車輛自主駕駛決策方法等[5]。近年來,很多學(xué)者針對駕駛風(fēng)格分類進行了研究。黃麗蓉等[6]提出一種基于深度置信網(wǎng)絡(luò)(Deep Belief Network,DBN)的駕駛行為風(fēng)格識別模型。李立治等[7]通過主成分分析(Principal Component Analysis,PCA)實現(xiàn)了評價指標的降維,并基于神經(jīng)網(wǎng)絡(luò)建立駕駛風(fēng)格識別模型。劉通等[8]建立基于K-Means 聚類結(jié)果的高斯混合模型,得出將駕駛員分為3類時聚類效果最佳的結(jié)論。李經(jīng)緯等[9]采集了不同駕駛員所駕駛的商用車和乘用車的行駛數(shù)據(jù),提出了基于K-Means聚類的駕駛風(fēng)格識別方法。李明俊等[10]建立了多分類半監(jiān)督學(xué)習(xí)算法駕駛風(fēng)格識別模型,有效利用大量未標記數(shù)據(jù)參與訓(xùn)練,提高了模型對駕駛風(fēng)格的識別能力。
然而,以上研究并沒有針對不同的工況進行駕駛風(fēng)格分類。同時,現(xiàn)有研究的數(shù)據(jù)多來源于問卷調(diào)查或者仿真環(huán)境下的駕駛試驗,并不能代表真實道路中駕駛員的駕駛風(fēng)格。本文基于半監(jiān)督學(xué)習(xí)三協(xié)同訓(xùn)練(Tri-Training)算法[11-12]對駕駛員駕駛風(fēng)格進行分類。首先,對駕駛員實際駕駛產(chǎn)生的真實長時序數(shù)據(jù)進行數(shù)據(jù)清洗、工況識別、特征提取、專家系統(tǒng)標記。然后,使用Tri-Training 算法進行訓(xùn)練,建立駕駛風(fēng)格識別模型。最后,通過設(shè)置不同的訓(xùn)練、測試集比例,與傳統(tǒng)機器學(xué)習(xí)模型進行對比,以考察模型的有效性。
2.1.1 硬件裝置
基于本文對信號的要求,在車輛正前方、正后方分別安裝毫米波雷達,并在車輛正前方安裝前視圖像單元,如圖1、圖2所示。通過多通道CANoe設(shè)備采集試驗車輛動力CAN信號、正前方雷達傳感器信號、正后方雷達傳感器信號及前視圖像單元信號[1]。
圖1 毫米波雷達
圖2 前視圖像單元
2.1.2 數(shù)據(jù)采集
為了避免參與試驗的駕駛員駕駛風(fēng)格偏向某一方面導(dǎo)致試驗數(shù)據(jù)分布不均,在進行試驗前通過《駕駛員駕駛風(fēng)格調(diào)查問卷》進行初選后,選取了80位年齡覆蓋25~55歲的駕駛員參加試驗。試驗時,每位駕駛員需要在規(guī)定路線內(nèi),分別在50 km/h和80 km/h的2種常用車速下進行2 h 的自然駕駛。在駕駛過程中,由隨車的2名專家對特定工況進行記錄,并綜合整體駕駛試驗過程,對駕駛員的駕駛風(fēng)格進行主觀評價。部分典型工況信息和駕駛風(fēng)格主觀評價結(jié)果如表1所示。
表1 典型工況與駕駛風(fēng)格主觀評價結(jié)果
2.1.3 數(shù)據(jù)處理
由于車輛底盤CAN 信號噪聲數(shù)據(jù)較多,為了進一步提高訓(xùn)練數(shù)據(jù)的可靠程度,需要對各原始信號及其數(shù)據(jù)進行濾波處理,去除傳輸過程中產(chǎn)生的錯誤數(shù)據(jù)。以側(cè)向工況為例,識別過程需要橫擺角速度和縱向車速信號,橫擺角速度信號來自電子穩(wěn)定系統(tǒng)(Electronic Stability Program,ESP)的加速度傳感器,是傳感器原始信號,信號中含有高頻噪聲,同時存在一定的零點漂移,需進行濾波和去零漂預(yù)處理,濾波采用巴特沃斯低通濾波器,通帶截止頻率1.5 Hz,并對信號最大值進行限制,去除異常跳變值。
同時,在自然駕駛過程中,存在大量的駕駛員正常行駛數(shù)據(jù),這些數(shù)據(jù)往往并不能體現(xiàn)駕駛員真正的駕駛風(fēng)格,所以需進行篩選,刪除勻速行駛的數(shù)據(jù)、正常切換油門踏板與制動踏板的數(shù)據(jù)等。
有效且充分的特征指標是駕駛風(fēng)格識別的基礎(chǔ)?,F(xiàn)有研究表明,車輛狀態(tài)參數(shù)和駕駛員操作參數(shù)能夠從多維度有效表征駕駛行為狀態(tài)及特征。本文結(jié)合縱向行駛和側(cè)向行駛的特點,選擇表征車輛姿態(tài)和運動狀態(tài)的參數(shù)、駕駛員操作信號作為特征,包括油門踏板開度及其變化率、轉(zhuǎn)向盤轉(zhuǎn)角、轉(zhuǎn)向盤轉(zhuǎn)速、車速、縱向加速度、縱向加加速度、側(cè)向加速度、橫擺角速度、橫擺角加速度共計10個特征。
由于提取的部分特征之間含有強相關(guān)性,為了避免過多相似特征使模型過于復(fù)雜,采用皮爾遜相關(guān)系數(shù)計算各工況下特征之間的關(guān)聯(lián)關(guān)系,刪除部分冗余特征。
以制動工況為例,所選取特征的皮爾遜相關(guān)系數(shù)如表2所示。
表2 制動工況下部分特征間相關(guān)性
本文的工況獲取方式分為2種,一種是由隨車行駛的專家在出現(xiàn)代表性特定工況時進行記錄,但由于數(shù)據(jù)總量較大,因此大部分情況由另一種獲取方式獲得工況,即基于駕駛員操作信號、車輛狀態(tài)信號、高級駕駛輔助系統(tǒng)環(huán)境傳感器信號,通過后期的數(shù)據(jù)處理方式對駕駛員的行駛工況進行識別。
本文以換道工況為例,介紹工況識別方式。換道工況屬于單移線工況,是車輛由一個車道行駛至相鄰車道的過程。換道工況屬于轉(zhuǎn)向操作工況的一種,相對于比較容易判別的轉(zhuǎn)彎、掉頭工況,特點是轉(zhuǎn)向盤轉(zhuǎn)角變化較小,橫擺角速度變化較小,車輛側(cè)向位移為1個車道寬度(4 m左右),換道完成后車輛沿初始方向繼續(xù)行駛。
判斷轉(zhuǎn)向過程是否屬于換道工況,需要參考轉(zhuǎn)向持續(xù)時長是否大于時間閾值、側(cè)向位移的絕對值是否在標準范圍內(nèi)、轉(zhuǎn)向開始航向角與結(jié)束航向角變化量的絕對值是否小于航向角閾值,以及轉(zhuǎn)向過程航向角變化序列與標準模板之間的誤差是否小于0.075°。換道工況標準模板如圖3所示。
傳統(tǒng)監(jiān)督學(xué)習(xí)通過對大量帶標記的訓(xùn)練數(shù)據(jù)進行學(xué)習(xí)以建立模型,通過模型預(yù)測未標記數(shù)據(jù)。此時的標記指數(shù)據(jù)所對應(yīng)的真實標簽,如分類任務(wù)中的類別、回歸任務(wù)中的實際輸出值。但隨著大數(shù)據(jù)時代的來臨,帶標記數(shù)據(jù)少、未標記數(shù)據(jù)多的情況逐漸增多[13]。
圖3 換道工況標準模板
本文中,如果采用監(jiān)督學(xué)習(xí)的方法進行駕駛員駕駛風(fēng)格分類,則分類器需要大量帶標簽的駕駛風(fēng)格數(shù)據(jù)進行訓(xùn)練,存在由專家標記所產(chǎn)生的時間成本、經(jīng)濟成本等問題。如果只使用少量帶標記數(shù)據(jù)進行學(xué)習(xí),那么所訓(xùn)練出的分類器不僅分類能力較差,同時也忽略了同樣具有大量信息的未標記數(shù)據(jù),對數(shù)據(jù)資源造成了極大的浪費。
半監(jiān)督學(xué)習(xí)(Semi-Supervised Learning)[14]嘗試通過使用學(xué)習(xí)器自動對大量未標記數(shù)據(jù)進行利用,輔以少量有標記數(shù)據(jù)進行學(xué)習(xí)。半監(jiān)督學(xué)習(xí)方法通過尋找標記實例中的內(nèi)部結(jié)構(gòu)信息給予未標記實例其可能所屬的類別,之后再利用不斷擴大的訓(xùn)練集學(xué)習(xí)獲得能力更強的分類器。半監(jiān)督學(xué)習(xí)中,大量未標記實例所隱含的內(nèi)部信息是至關(guān)重要的。因此,在僅有部分帶有標簽的駕駛員駕駛數(shù)據(jù)和大量未標記數(shù)據(jù)的條件下,分類器使用半監(jiān)督學(xué)習(xí)進行駕駛風(fēng)格分類是目前較為合理的一種方法[15]。具體學(xué)習(xí)過程如圖4所示。
圖4 半監(jiān)督學(xué)習(xí)算法過程
通過數(shù)據(jù)采集及處理得到各工況數(shù)據(jù)后,將每個工況的數(shù)據(jù)分別輸入駕駛員風(fēng)格識別模型中可得到每種工況下的駕駛風(fēng)格識別結(jié)果,然后進行決策融合,即可得到駕駛員的總體駕駛風(fēng)格標簽。
Tri-Training 算法的主要思想是在帶標記訓(xùn)練集中進行隨機采樣,生成3 個有差異的訓(xùn)練集,通過上述訓(xùn)練集對3個基分類器進行訓(xùn)練。之后,利用其中2個分類器對訓(xùn)練集中的數(shù)據(jù)進行分類,如果存在2個分類器對某個未標記樣本分類一致,那么該樣本會被作為偽標記樣本加入到第3 個分類器的訓(xùn)練集[16]。通過擴充訓(xùn)練集完成對每個基分類器的調(diào)優(yōu),每個基分類器的擴充訓(xùn)練集均由其他2 個基分類器進行多次重復(fù)迭代的偽標記形成。最終,3個分類器通過投票的方式輸出分類結(jié)果[17]。
算法具體流程如下:
a.首先通過自助法(Bootstrap)方式在同工況下帶標簽的數(shù)據(jù)集D中構(gòu)建3 個具有差異性的訓(xùn)練集S1、S2和S3,通過上述訓(xùn)練集分別對基分類器m1、m2和m3進行訓(xùn)練。
b.使用分類器m1、m2和m3中的2個在未標記樣本集U中進行預(yù)測,給予分類一致的樣本偽標記,并將其加入到第3個分類器的擴充訓(xùn)練集Li(i=1,2,3)中。
c.判斷分類器m1、m2和m3及其對應(yīng)擴充訓(xùn)練集L1、L2和L3是否發(fā)生改變。若改變,則重復(fù)進行步驟b,直至分類器m1、m2和m3均不再發(fā)生任何改變。
d.訓(xùn)練完成后,分類器m1、m2和m3通過投票機制集成為一個分類器得出分類結(jié)果。
4.2.1 評價指標
本文使用正確率(Accuracy)、精準率(Precision)和召回率(Recall)作為評價指標:
式中,Ra為正確率;Rp為精準率;Rr為召回率;Tp為被模型預(yù)測為正的正樣本數(shù)量;Fp為被模型預(yù)測為正的負樣本數(shù)量;Fn為被模型預(yù)測為負的正樣本數(shù)量;Tn為被模型預(yù)測為負的負樣本數(shù)量。
4.2.2 試驗結(jié)果
將駕駛員真實駕駛產(chǎn)生的長時序數(shù)據(jù)進行數(shù)據(jù)清洗、工況識別、特征提取,并通過專家進行標記后收集到約2000 條數(shù)據(jù)樣本,隨機選取部分數(shù)據(jù)作為訓(xùn)練集。訓(xùn)練集比例以20%的步長逐步遞增至80%,將剩余樣本作為測試集。在各工況下,將模型預(yù)測的駕駛風(fēng)格分類結(jié)果與專家系統(tǒng)給出的標簽進行對比,以準確率作為評價指標。Tri-Training 模型選取隨機森林(Random Forest)作為基分類器,并通過與監(jiān)督學(xué)習(xí)Random Forest算法和半監(jiān)督學(xué)習(xí)自訓(xùn)練(Self-Training)[18]算法進行對比,如表3所示。
表3 各工況駕駛風(fēng)格識別準確率 %
由表3 可知:當(dāng)帶標簽數(shù)據(jù)占總數(shù)據(jù)量的80%時,傳統(tǒng)的機器學(xué)習(xí)模型Random Forest模型比Tri-Training和Self-Training 識別準確率均更高;但隨著帶標簽數(shù)據(jù)比例逐漸下降至60%和40%時,半監(jiān)督學(xué)習(xí)方法開始逐漸顯現(xiàn)優(yōu)勢;帶標簽數(shù)據(jù)比例為20%時,加速工況下的Tri-Training 方法表現(xiàn)十分突出,在制動和并線工況下,Tri-Training 方法較傳統(tǒng)的Random Forest 方法和Self-Training 方法也有一定優(yōu)勢??梢奣ri-Training 模型可以有效利用未標記樣本來提高駕駛風(fēng)格分類的準確率。
將訓(xùn)練數(shù)據(jù)比例為80%時的試驗結(jié)果進行融合,與專家系統(tǒng)為駕駛員所標記的結(jié)果進行對比,結(jié)果如表4、表5所示。
表4 各工況下結(jié)果決策融合后駕駛風(fēng)格識別結(jié)果 名
表5 各駕駛風(fēng)格類型的查準率與查全率 %
根據(jù)融合結(jié)果可以看出,保守型和激進型之間一般不會出現(xiàn)誤分類的情況,但是存在將保守型和激進型錯分為一般型的情況。在22名保守型駕駛員中,有5名駕駛員被誤分為一般型,這種情況可能是總數(shù)據(jù)量較少,而一般型數(shù)據(jù)占比較高導(dǎo)致的,由于數(shù)據(jù)的不均衡,導(dǎo)致分類器存在一定的偏倚性。在44 名一般型駕駛員中,有5 名被誤分類為保守型,4 名被誤分類為激進型。其主要原因有:首先,一般型駕駛員和保守型駕駛員界定不明顯,后續(xù)工作中可能需要進一步明確二者的邊界;其次,部分激進型駕駛員在整個駕駛過程中也存在正常的駕駛行為,所以存在一些噪聲數(shù)據(jù),導(dǎo)致部分一般型駕駛員被誤分為激進型。
從評價指標上看,激進型的召回率達到了100%,同時也有著很高的正確率。一般型的數(shù)據(jù)在正確率、精準率、召回率方面都有較好的結(jié)果。但是激進型和保守型的精準率都稍低,均在77%左右,這說明模型學(xué)習(xí)這2類駕駛風(fēng)格的能力較弱,也可能是由于樣本不均衡導(dǎo)致一般型駕駛員占比過高,降低了整個試驗的準確率。
本文提出了一種基于Tri-Training方法的駕駛風(fēng)格分類方法。從時序數(shù)據(jù)中篩選出部分特征數(shù)據(jù),通過數(shù)據(jù)清洗、工況識別、特征處理、專家系統(tǒng)標記得到小部分帶標簽數(shù)據(jù),然后通過Tri-Training 模型進行半監(jiān)督學(xué)習(xí)。試驗結(jié)果表明,該模型有效利用了未標記樣本,提高了在帶標記數(shù)據(jù)較少時的駕駛員風(fēng)格分類準確率,并通過進行各工況下的決策融合實現(xiàn)了較好的分類效果。
后續(xù)研究將進一步擴大數(shù)據(jù)集的樣本量,挖掘新的駕駛員風(fēng)格數(shù)據(jù),對模型進行優(yōu)化,在進一步提高準確率的同時,降低算法運行所占用的內(nèi)存及消耗的時間成本。