黃麗蓉 潘雨青
(江蘇大學(xué)計(jì)算機(jī)科學(xué)與通信工程學(xué)院 鎮(zhèn)江 212013)
世界衛(wèi)生組織2015 年指出交通事故死亡人數(shù)近140 萬人,傷殘人數(shù)約2000 萬至5000 萬人次[1]。據(jù)公安部統(tǒng)計(jì)顯示,2016 年我國道路交通事故864.3萬起,造成死亡6.3萬。導(dǎo)致事故發(fā)生的主要原因之一是駕駛?cè)藛T的不良駕駛行為,駕駛行為與駕駛安全性有著密切的關(guān)系,因此駕駛員的駕駛安全性研究具有重要價(jià)值[2]。車載GPS 模塊等車載設(shè)備的不斷普及,讓車輛的行駛信息和駕駛員的操作行為記錄和保存成為可能,其中保存的大量數(shù)據(jù)為學(xué)者研究駕駛員的駕駛行為習(xí)慣提供了巨大的價(jià)值[3]。
當(dāng)前,已有不少人從不同的方面的對駕駛行為進(jìn)行分析研究。任慧君等利用GPS 數(shù)據(jù)來計(jì)算行駛速度、加速度和轉(zhuǎn)彎信息來分析公交車司機(jī)的駕駛安全性[3]。莊明科、Tseng 等研究了危險(xiǎn)駕駛與駕駛員行為之間的關(guān)系,包括風(fēng)險(xiǎn)駕駛和駕駛經(jīng)驗(yàn)與技術(shù)、駕駛員的態(tài)度與駕駛員性格之間的關(guān)系[4~5]。在這些研究中,主要利用數(shù)據(jù)分析方法計(jì)算駕駛行為的一些主要影響因子,以此研究駕駛安全性。由于駕駛影響因子眾多,這些論文對部分因子進(jìn)行討論,未對駕駛行為行為加以分類研究。
徐國功等[6]利用K-means 對駕駛員進(jìn)行聚類,用GMM對聚類結(jié)果分析評(píng)估。Johnson等[7]通過對傳感器采集到的數(shù)據(jù)進(jìn)行降噪處理,采用基于分類的機(jī)器學(xué)習(xí)方法對候選行為特征提取進(jìn)行分類學(xué)習(xí)。劉凱利等[8]根據(jù)駕駛行為與路況環(huán)境和行駛信息之間的關(guān)系,運(yùn)用決策樹C4.5 算法對駕駛行為進(jìn)行分類。王忠民等[9]利用移動(dòng)終端采集到的車輛三軸加速度數(shù)據(jù),通過SF-CNN 識(shí)別分析駕駛員行為。在這些研究中,駕駛影響因子選取不夠細(xì)化,有的分類方法未能對影響因子抽取更深層次的特征以研究駕駛行為。
基于此,本文根據(jù)GPS 數(shù)據(jù),提取駕駛行為的相關(guān)特征因子,并根據(jù)這些特征因子,提出一種基于深度信念網(wǎng)絡(luò)的駕駛行為研究方法,對駕駛員的行為進(jìn)行分析。
駕駛行為研究過程主要是通過分析研究各種行車數(shù)據(jù),從中挖掘影響駕駛員駕駛行為的特征參數(shù),并對駕駛行為聚類分簇,利用分類器根據(jù)評(píng)價(jià)體系對駕駛行為實(shí)現(xiàn)在線評(píng)估,從而對駕駛行為進(jìn)行約束,提高安全性。
影響駕駛員駕駛行為的因素眾多,不同的影響因素?cái)?shù)據(jù)的采集需要不同資金成本與時(shí)間成本的投入,GPS數(shù)據(jù)采集明顯比其他的車載設(shè)備的實(shí)用性更好,在這里使用的行車數(shù)據(jù)均采自GPS。根據(jù)這些行車數(shù)據(jù)的分析和前人的一些研究成果,駕駛行為分析主要是駕駛安全性的研究。
駕駛安全性行為一般分為嚴(yán)重危險(xiǎn)駕駛、危險(xiǎn)駕駛、平穩(wěn)駕駛和謹(jǐn)慎駕駛。事故發(fā)生的主要影響因子有速度、速度標(biāo)準(zhǔn)差、負(fù)加速度、負(fù)加速度標(biāo)準(zhǔn)差、正加速度、正加速度標(biāo)準(zhǔn)差。這些都可作為駕駛行為特征的重要參數(shù),是駕駛行為分析的重要依據(jù)[10]。另外,在安全駕駛中急加速、急減速和超速具有很大的安全隱患,特別地,在交通擁堵的時(shí)候,這些行為會(huì)引發(fā)車輛追尾和車輛部件磨損。
1)速度均值、速度標(biāo)準(zhǔn)差
劉志強(qiáng)等[11]表明與交通事故發(fā)生的關(guān)系,即速度標(biāo)準(zhǔn)差越大,車速分布就越離散,發(fā)生交通事故的概率也就越高。此外,國內(nèi)有專家對速度標(biāo)準(zhǔn)差和億公里事故率進(jìn)行了回歸分析[11],如圖1 所示。澳大利亞RAT 研究指出車速與交通事故風(fēng)險(xiǎn)增長之間的關(guān)系[12~13],如表1所示。
這兩個(gè)表征駕駛行為特征的重要參數(shù)的計(jì)算公式為

其中,vavg為車輛在道路上的速度均值,vi是駕駛員第i 次的駕車速度,vstd是在這過程中的速度標(biāo)準(zhǔn)差。

圖1 車速標(biāo)準(zhǔn)差與億車公里事故率的關(guān)系圖

表1 行車速度與交通事故風(fēng)險(xiǎn)的關(guān)系
2)負(fù)加速度均值、負(fù)加速度標(biāo)準(zhǔn)差、急減速
減速行為是由于駕駛員對加速踏板的釋放或制動(dòng)踏板的壓制引發(fā)的結(jié)果,可以用負(fù)加速度來描述這一減速過程。當(dāng)負(fù)加速度越大說明車輛減速越不平穩(wěn),越會(huì)影響行車安全。負(fù)加速度和負(fù)加速度標(biāo)準(zhǔn)差的計(jì)算公式為


3)正加速度均值、正加速度標(biāo)準(zhǔn)差、急加速
相應(yīng)地,加速行為是由于駕駛?cè)藛T對加速踏板的一個(gè)踩壓控制或制動(dòng)踏板的釋放控制。如果壓制或釋放過度,即加速度過大,會(huì)對當(dāng)前的駕駛環(huán)境造成嚴(yán)重的危害。因此,正加速度和正加速度標(biāo)準(zhǔn)差可以作為衡量駕駛行為的重要參數(shù),它們的計(jì)算公式為


本文的數(shù)據(jù)主要來源于EXLIVE 超越位置服務(wù)平臺(tái)所存儲(chǔ)的2017 年3 月份的GPS 歷史數(shù)據(jù)。由于車輛并不是一直在運(yùn)行當(dāng)中的,在本文中只考慮車輛不是在連續(xù)停車的情況下來進(jìn)行研究分析。原始數(shù)據(jù)包括2000 位駕駛員的駕駛信息,數(shù)據(jù)處理結(jié)果如表2所示。

表2 影響因子參數(shù)提取結(jié)果
Hinton 等[15]于2006 年提出DBN 模型。DBN 由堆疊的RBM 構(gòu)建的具有多個(gè)隱含層的概率模型(結(jié)構(gòu)如圖2 所示),并以分層的方式進(jìn)行訓(xùn)練,前一個(gè)RBM 的隱含層將作為下一個(gè)RBM 的輸入層,在訓(xùn)練過程中每個(gè)隱含層都可以獲得比上一層更高級(jí)的數(shù)據(jù)特征,也就是說,底層特征向量映射到高層特征空間,原始數(shù)據(jù)可以被盡可能多地保留。

圖2 DBN結(jié)構(gòu)圖
受限玻爾茲曼機(jī)(Restricted Boltzmann Machine,RBM)是一種經(jīng)過變體的玻爾茲曼機(jī),基于能量的定義輸入分布的建模方法,是二值分布的神經(jīng)網(wǎng)絡(luò)。受限玻爾茲曼機(jī)與標(biāo)準(zhǔn)玻爾茲曼機(jī)的主要區(qū)別在于玻爾茲曼機(jī)中同一層節(jié)點(diǎn)之間相互獨(dú)立,它們之間沒有任何的連接,其結(jié)構(gòu)如圖3所示。

圖3 受限玻爾茲曼機(jī)結(jié)構(gòu)圖
可以直觀地看出無論可視層還是隱藏層,只有層與層之間的連接,而同層之間是相互獨(dú)立的。RBM的能量公式可定義為

其中,θ={w,a,b}表示RBM的模型參數(shù),v 代表輸入向量,h 代表隱藏單元,wij則表示輸入節(jié)點(diǎn)i 到隱含層節(jié)點(diǎn)j 之間的權(quán)值,a 和b 分別表示網(wǎng)絡(luò)輸入層和隱含層的偏置。在受限玻爾茲曼機(jī)中,輸入層節(jié)點(diǎn)與隱含層節(jié)點(diǎn)之間的聯(lián)合概率分布的計(jì)算公式為

其中,z(θ)是歸一化函數(shù)(也稱配分函數(shù)),使得聯(lián)合概率P 在(0,1)范圍內(nèi)分布。但是在實(shí)際計(jì)算中,我們更關(guān)心的是聯(lián)合概率分布P(v,h;θ)的邊緣分布P(v;θ),即觀測變量的分布。
受限玻爾茲曼機(jī)的特點(diǎn)是層內(nèi)神經(jīng)元無連接,若輸入層節(jié)點(diǎn)或隱藏節(jié)點(diǎn)的其中一層的狀態(tài)給定時(shí),另外一層的節(jié)點(diǎn)之間相互獨(dú)立,則有以下表達(dá)式:

其中式(14)表示第j 個(gè)隱含層神經(jīng)元的激活概率,式(15)表示i 個(gè)輸入神經(jīng)元的激活概率,sigmoid(x)= 1/(1+exp(-x))表示激活函數(shù)。
在RBM 訓(xùn)練過程中,目的是為了學(xué)習(xí)出θ={w,a,b}的值。在本文中,采用Hinton[16]在2002年提出的對比散度(CD)算法來更新各個(gè)參數(shù)。
由于導(dǎo)數(shù)消亡問題會(huì)導(dǎo)致深度網(wǎng)絡(luò)沒有全部體現(xiàn)在深度網(wǎng)絡(luò)上特征提取學(xué)習(xí)的優(yōu)勢[17~18]。在反向傳播網(wǎng)絡(luò)誤差的過程中誤差信息會(huì)逐步減弱,導(dǎo)致在底層的網(wǎng)絡(luò)不能根據(jù)返回的誤差來進(jìn)行充分學(xué)習(xí),從而使得深度網(wǎng)絡(luò)容易陷入局部最小值。根據(jù)基礎(chǔ)DBN 的模型結(jié)構(gòu),在本文中將提出一種多層有監(jiān)督訓(xùn)練與學(xué)習(xí)微調(diào)的DBN 模型,結(jié)構(gòu)如圖4所示。
多層有監(jiān)督訓(xùn)練與學(xué)習(xí)微調(diào)的DBN 算法思想:在每一層RBM 網(wǎng)絡(luò)進(jìn)行訓(xùn)練提取特征參數(shù)后,同時(shí)把分類結(jié)果輸出,最后在微調(diào)階段利用BP 算法,結(jié)合每一個(gè)RBM 的輸出分類的誤差,逐層逆向傳播誤差回到輸入層,優(yōu)化DBN 參數(shù)。修改后DBN的RBM訓(xùn)練算法流程如下所示。

圖4 改進(jìn)DBN結(jié)構(gòu)圖
RBM訓(xùn)練步驟
輸入:訓(xùn)練樣本X;隱含層單元個(gè)數(shù)m,學(xué)習(xí)率ε;最大訓(xùn)練周期。
輸出:連接權(quán)重矩陣W,輸入層的偏置a,隱含層的偏置b,當(dāng)前RBM的分類輸出Y。
訓(xùn)練階段:

根據(jù)駕駛安全性行為的常有分類,即嚴(yán)重危險(xiǎn)駕駛、危險(xiǎn)駕駛、平穩(wěn)駕駛和謹(jǐn)慎駕駛,在本文的實(shí)驗(yàn)數(shù)據(jù)設(shè)置中,總共選取四類數(shù)據(jù),每一類隨機(jī)選取4000 個(gè)訓(xùn)練樣本,并隨機(jī)選取8000 個(gè)樣本作為測試數(shù)據(jù)。
3.3.1 評(píng)價(jià)指標(biāo)
在本文中,將會(huì)引入準(zhǔn)確率(Accuracy,記為P)來對模型的分類結(jié)果進(jìn)行評(píng)價(jià)。準(zhǔn)確率是對分類質(zhì)量的評(píng)價(jià),等于每一類正確分類的樣本數(shù)量除以總樣本數(shù)量,即:

其中,m 表示總類別數(shù)量,sj表示每一類正確分類的樣本數(shù),N 表示測試樣本總數(shù)。
3.3.2 駕駛行為分析模型構(gòu)建
對于本文中的分類模型,首選速度均值、速度標(biāo)準(zhǔn)差、超速次數(shù)、負(fù)加速度均值、負(fù)加速度標(biāo)準(zhǔn)差、急減速次數(shù)、正加速度均值、正加速度標(biāo)準(zhǔn)差、急加速次數(shù)和疲勞駕駛次數(shù)等10 個(gè)駕駛行為影響因子作為模型輸入,將嚴(yán)重危險(xiǎn)駕駛、危險(xiǎn)駕駛、平穩(wěn)駕駛和謹(jǐn)慎駕駛作為模型的輸出。為了使模型的分類性能更好,在模型建立之前首先對其模型深度、隱含層神經(jīng)元個(gè)數(shù)和訓(xùn)練周期進(jìn)行簡要討論。
1)深度對模型的影響
Le Roux、呂啟等[19~20]表明RBM 的層數(shù)會(huì)影響DBN 的建模能力,使DBN 具有更高的分類和預(yù)測性能。同時(shí),呂啟等表明當(dāng)DBN 的層數(shù)過多時(shí)反而會(huì)因?yàn)檫^擬合而降低模型的性能[20]。因此,我們應(yīng)該根據(jù)具體的數(shù)據(jù)集來選取合適的層數(shù)。
根據(jù)上述說明,本文中首先需要確定模型的層數(shù)。實(shí)驗(yàn)過程中,首先固定訓(xùn)練樣本數(shù)量為16000,DBN 的層數(shù)從1變化到6(不含BP 層),實(shí)驗(yàn)結(jié)果如圖5所示。由圖5可知,在本實(shí)驗(yàn)中,當(dāng)DBN層數(shù)為4時(shí),模型準(zhǔn)確率最高。

圖5 DBN層數(shù)對分類準(zhǔn)確率的影響
2)隱含層神經(jīng)元個(gè)數(shù)對模型的影響
Larochelle 等提到神經(jīng)元過多會(huì)出現(xiàn)過擬合問題,而過少可能會(huì)不足以提取與分類有關(guān)的信息[21]。在本實(shí)驗(yàn)中,根據(jù)前面已經(jīng)得出結(jié)論,確定DBN 層數(shù)為4 時(shí),模型性能較好。駕駛行為的影響因子作為模型的輸入層,即第一層,因此我們需要確定隱含層的神經(jīng)元個(gè)數(shù)。在實(shí)驗(yàn)過程中逐漸增加隱含層數(shù)量和其對應(yīng)層的神經(jīng)元數(shù)量,以確定模型的隱含層的神經(jīng)元數(shù)量。實(shí)驗(yàn)結(jié)果如表3所示。

表3 第一隱含層神經(jīng)元個(gè)數(shù)對分類準(zhǔn)確率的影響
從表中可以看到當(dāng)?shù)谝浑[含層的神經(jīng)元個(gè)數(shù)不同時(shí),訓(xùn)練準(zhǔn)確率也不一樣,當(dāng)神經(jīng)元個(gè)數(shù)到達(dá)7 個(gè)時(shí),再增加神經(jīng)元沒有太多的準(zhǔn)確率變化。因此,將第一隱含層的神經(jīng)元個(gè)數(shù)設(shè)為7,設(shè)置實(shí)驗(yàn)確定第二隱含層的神經(jīng)元個(gè)數(shù),結(jié)果如表4所示。

表4 第二隱含層神經(jīng)元個(gè)數(shù)對分類準(zhǔn)確率的影響
表中可以明顯看到神經(jīng)元個(gè)數(shù)為5 時(shí),模型的分類準(zhǔn)確率最高,神經(jīng)元增加到11 時(shí),分類準(zhǔn)確率有下降。所以在第二隱含層中,我們選取神經(jīng)元個(gè)數(shù)為5。基于此,再增加第三層隱含層來確定其神經(jīng)元個(gè)數(shù),實(shí)驗(yàn)結(jié)果如表5所示。

表5 第三隱含層神經(jīng)元個(gè)數(shù)對分類準(zhǔn)確率的影響
綜上分析,我們選取DBN 模型的結(jié)構(gòu)為10-7-5-5-4,輸入層的神經(jīng)元個(gè)數(shù)10,第一隱含層的神經(jīng)元個(gè)數(shù)為7,第二隱含層的神經(jīng)元個(gè)數(shù)為5,第三隱含層的神經(jīng)元個(gè)數(shù)為5,輸出層的神經(jīng)元個(gè)數(shù)為4,則本實(shí)驗(yàn)構(gòu)建的DBN網(wǎng)絡(luò)結(jié)構(gòu)如圖6所示。
3.3.3 結(jié)果分析與比較
我們將基于改進(jìn)的DBN 模型的分類結(jié)果與原DBN模型及BP網(wǎng)絡(luò)等進(jìn)行了實(shí)驗(yàn)對比。首先隨機(jī)選取16000 個(gè)樣本作為各個(gè)模型的訓(xùn)練樣本,再從剩余樣本中隨機(jī)選取8000 個(gè)樣本作為測試數(shù)據(jù),檢驗(yàn)不同模型的分類準(zhǔn)確率。這三種模型的對比實(shí)驗(yàn)結(jié)果如表6所示。

圖6 駕駛行為分類DBN模型

表6 不同分類方法結(jié)果比較
從表中可以看出經(jīng)過深度網(wǎng)絡(luò)訓(xùn)練后,再用BP 神經(jīng)網(wǎng)絡(luò)算法對其分類比直接使用BP 神經(jīng)網(wǎng)絡(luò)算法進(jìn)行分類的準(zhǔn)確率提高了。本文提出的多層有監(jiān)督訓(xùn)練與學(xué)習(xí)微調(diào)的DBN 比基礎(chǔ)DBN 的分類準(zhǔn)確率提高,其準(zhǔn)確率為86.22%,說明此方法能夠消除導(dǎo)數(shù)消亡問題。
本文通過對采集到的GPS 數(shù)據(jù)進(jìn)行預(yù)處理和分析后,建立了基于改進(jìn)DBN 的駕駛行為分類模型。實(shí)驗(yàn)過程中與基礎(chǔ)DBN 和BP 模型進(jìn)行實(shí)驗(yàn)對比。實(shí)驗(yàn)結(jié)果表明BP 和DBN 模型都能夠根據(jù)數(shù)據(jù)學(xué)習(xí)并抽取特征,其很強(qiáng)的學(xué)習(xí)能力都可用于分類預(yù)測模型,相對于BP網(wǎng)絡(luò),DBN具有更強(qiáng)的特征學(xué)習(xí)能力;多層有監(jiān)督訓(xùn)練與學(xué)習(xí)微調(diào)的DBN模型能夠有效解決由于DBN 受導(dǎo)數(shù)消亡影響分類性能的問題。