肖 維 高 謙
(1.深圳大學(xué) 深圳 518000)(2.博世力士樂有限公司 常州 213000)
城市交通運(yùn)輸系統(tǒng)正朝著智能化的方向發(fā)展,短時(shí)交通流量預(yù)測(cè)作為智能交通系統(tǒng)的核心內(nèi)容,得到了人們的廣泛關(guān)注[1]。智能交通系統(tǒng)中包含多個(gè)子系統(tǒng),如交通規(guī)劃系統(tǒng)、交通誘導(dǎo)系統(tǒng)以及信息服務(wù)系統(tǒng)等,它們功能上的實(shí)現(xiàn)都以短時(shí)交通流量預(yù)測(cè)為基礎(chǔ)[2~4]。因此,可靠的短時(shí)交通流量預(yù)測(cè)方法可有效保證智能交通系統(tǒng)的良好運(yùn)行。由于路網(wǎng)中路段上某時(shí)間點(diǎn)的車流信息與本路段前幾個(gè)時(shí)間點(diǎn)的車流信息有關(guān)[5],因此,系統(tǒng)可以根據(jù)前幾個(gè)時(shí)間點(diǎn)所采集的交通流量數(shù)據(jù)來對(duì)未來時(shí)間點(diǎn)的交通流量作出預(yù)測(cè)[6]。
由于路網(wǎng)中的車流信息時(shí)間關(guān)聯(lián)性較強(qiáng),且具有24 小時(shí)準(zhǔn)周期的特性,系統(tǒng)需要在時(shí)域變換中具有分辨能力[7]。加之短時(shí)交通流量監(jiān)測(cè)數(shù)據(jù)存在非線性以及不確定性等特點(diǎn),導(dǎo)致系統(tǒng)對(duì)其泛化性能有更高的要求[8]?;谏鲜鎏攸c(diǎn),本文采用小波神經(jīng)網(wǎng)絡(luò)作為短時(shí)交通流量預(yù)測(cè)的機(jī)器學(xué)習(xí)模型,將流量監(jiān)測(cè)數(shù)據(jù)當(dāng)作時(shí)間系列進(jìn)行分類。基于系統(tǒng)功能的時(shí)效性要求,提出方法利用加動(dòng)量項(xiàng)的方式以提高神經(jīng)網(wǎng)絡(luò)模型的學(xué)習(xí)率。
小波變換是一種新型的信號(hào)時(shí)頻分析變換方法,該變換的信號(hào)方向選擇能力可以突出數(shù)據(jù)的某些特征,進(jìn)而對(duì)時(shí)頻進(jìn)行有針對(duì)性的局部分析[9]。小波變換采用了與傅里葉變換類似的局部化分析策略[10~11],同時(shí)又彌補(bǔ)了傅里葉變換無時(shí)間標(biāo)簽以及在時(shí)域分析中沒有分辨能力的缺陷[12]。
小波函數(shù)通過對(duì)一個(gè)基函數(shù)φ( t )進(jìn)行尺度不變平移或尺度變換伸縮,以實(shí)現(xiàn)對(duì)函數(shù)的多尺度局部化分析[15],其變換表達(dá)式為
或
其中,τ 為小波函數(shù)的平移量,a 為小波函數(shù)的張緊量,且有a >0,小波變換能夠?qū)瘮?shù)進(jìn)行變換并方向性地提取出特征進(jìn)行局部化分析。
小波神經(jīng)網(wǎng)絡(luò)模型是以誤差逆?zhèn)鞑ィ˙ack Propagation,BP)算法模型為基礎(chǔ),將變換的基函數(shù)作為神經(jīng)網(wǎng)絡(luò)隱層的傳遞函數(shù),其拓?fù)浣Y(jié)構(gòu)如圖1所示。
圖1 小波神經(jīng)網(wǎng)絡(luò)模型拓?fù)浣Y(jié)構(gòu)
圖中X={ X1,X2,…,Xh} 為神經(jīng)網(wǎng)絡(luò)模型的輸入變量;Y={Y1,Y2,…,Ym} 為神經(jīng)網(wǎng)絡(luò)模型的預(yù)測(cè)輸出變量。ωij是輸入層與隱層之間的連接權(quán)值,其中i=1,2,…,h,j=1,2,…,n;ωjk是隱層與輸出層之間的連接權(quán)值,其中k=1,2,…,m。
當(dāng)神經(jīng)網(wǎng)絡(luò)的輸入層將輸入變量X={ X1,X2,…,Xh} 傳遞至隱層時(shí),隱層會(huì)根據(jù)修正的權(quán)值并將變換的小波基函數(shù)作為節(jié)點(diǎn)的傳遞函數(shù)來計(jì)算隱層的輸出值,其計(jì)算表達(dá)式為
其中,h( j )為隱層中第j 個(gè)節(jié)點(diǎn)的輸出值;aj為隱層第j 個(gè)節(jié)點(diǎn)傳遞函數(shù)hj的變換伸縮尺度;bj為傳遞函數(shù)hj的平移量。
小波神經(jīng)網(wǎng)絡(luò)模型的預(yù)測(cè)輸出層計(jì)算表達(dá)式為
提出方法采用的基函數(shù)為
Morlet 母小波基函數(shù)的時(shí)域及頻域形式如圖2所示。
圖2 Morlet 母小波基函數(shù)時(shí)域及頻域圖
提出方法采用梯度下降法作為神經(jīng)網(wǎng)絡(luò)訓(xùn)練時(shí)參數(shù)的修正方式,該方法可以使神經(jīng)網(wǎng)絡(luò)的預(yù)測(cè)誤差持續(xù)地逼近設(shè)置的期望誤差[13]。其修正過程如下。
1)計(jì)算網(wǎng)絡(luò)模型預(yù)測(cè)誤差e:
其中,Yn( k )為網(wǎng)絡(luò)的期望輸出,Y( k )為網(wǎng)絡(luò)的預(yù)測(cè)輸出。
2)根據(jù)預(yù)測(cè)誤差e 修正網(wǎng)絡(luò)權(quán)值及小波基函數(shù)的參數(shù):
其中,i 為修正迭代次數(shù)。 ?ωj,k( i +1) 、?ak(i +1)以及?bk(i +1) 可根據(jù)預(yù)測(cè)誤差e 得到,計(jì)算公式如下:
其中,η 為網(wǎng)絡(luò)初始化階段中設(shè)置的網(wǎng)絡(luò)學(xué)習(xí)率。
但是該修正方法的缺點(diǎn)在于網(wǎng)絡(luò)訓(xùn)練時(shí)收斂速度較為緩慢,且容易陷入局部極?。?2]。由于交通流量預(yù)測(cè)系統(tǒng)的訓(xùn)練數(shù)據(jù)具有時(shí)效性,訓(xùn)練數(shù)據(jù)不斷更新且系統(tǒng)需要完成自學(xué)習(xí)并不斷地輸出盡可能準(zhǔn)確的預(yù)測(cè)結(jié)果,因此進(jìn)化緩慢的網(wǎng)絡(luò)會(huì)對(duì)預(yù)測(cè)系統(tǒng)的性能以及可靠性產(chǎn)生不良影響。故提出方法采用增加動(dòng)量項(xiàng)的方法來修正網(wǎng)絡(luò)權(quán)值及小波基函數(shù)的參數(shù),以提高網(wǎng)絡(luò)進(jìn)化速度。其計(jì)算表達(dá)式如下:
其中,δ 為增加動(dòng)量項(xiàng)的學(xué)習(xí)率。
加動(dòng)量項(xiàng)的方法是將訓(xùn)練網(wǎng)絡(luò)上一次迭代運(yùn)算的修正量乘以系數(shù)δ 做為本次修正運(yùn)算修正量的一部分,所增加的部分即為動(dòng)量項(xiàng)[16]。以小波基函數(shù)伸縮尺度a 的修正運(yùn)算為例,動(dòng)量項(xiàng)為δ*( ak( i )-ak(i -1) )。當(dāng)本次修正運(yùn)算的與上一次的正負(fù)情況相同時(shí),其加權(quán)求和值增大,同時(shí)網(wǎng)絡(luò)誤差調(diào)整值?ak(i +1) 增大,進(jìn)而加快了參數(shù)ak的修正速度。而當(dāng)本次的與上一次的正負(fù)情況不同時(shí),表明修正過程產(chǎn)生了振蕩,其加權(quán)求和值使得調(diào)整值?ak(i +1) 變小,起到了穩(wěn)定的功能。因此,動(dòng)量項(xiàng)的增加使得訓(xùn)練網(wǎng)絡(luò)的收斂路徑變得平滑,在減少網(wǎng)絡(luò)計(jì)算量的同時(shí),可有效地提高網(wǎng)絡(luò)的進(jìn)化速率。
交通流量監(jiān)測(cè)系統(tǒng)在路網(wǎng)中某路段采集了5天的交通流量數(shù)據(jù),且數(shù)據(jù)采集的時(shí)間跨度均為15min,共采集了480 個(gè)時(shí)間點(diǎn)的數(shù)據(jù)。提出的交通流量預(yù)測(cè)算法的流程如圖3所示。
從系統(tǒng)中提取前4天所采集的共384個(gè)時(shí)間點(diǎn)的交通流量數(shù)據(jù)作為神經(jīng)網(wǎng)絡(luò)的訓(xùn)練數(shù)據(jù),第5 天共96 個(gè)交通流量數(shù)據(jù)作為神經(jīng)網(wǎng)絡(luò)的測(cè)試數(shù)據(jù)。在Matlab 環(huán)境下,設(shè)置網(wǎng)絡(luò)反復(fù)訓(xùn)練100 次,利用測(cè)試數(shù)據(jù)對(duì)訓(xùn)練完成的學(xué)習(xí)器進(jìn)行測(cè)試,將學(xué)習(xí)器的預(yù)測(cè)輸出值與交通流量的實(shí)際值進(jìn)行對(duì)比,并將對(duì)比結(jié)果可視化,如圖4所示。
圖3 小波神經(jīng)網(wǎng)絡(luò)算法流程
圖4 學(xué)習(xí)器預(yù)測(cè)輸出值與交通流量實(shí)際值的對(duì)比
圖4 中,點(diǎn)狀標(biāo)識(shí)代表交通流量的實(shí)際值,而折線標(biāo)識(shí)則表示學(xué)習(xí)器的預(yù)測(cè)輸出值。通過對(duì)圖4 中的折線與散點(diǎn)進(jìn)行分析可知,神經(jīng)網(wǎng)絡(luò)的預(yù)測(cè)輸出值接近交通流量的實(shí)際值。因此,提出方法可精確地對(duì)短時(shí)交通流量作出預(yù)測(cè),學(xué)習(xí)器的工作性能可靠。
提出方法采用增加動(dòng)量項(xiàng)的方法加快神經(jīng)網(wǎng)絡(luò)模型訓(xùn)練時(shí)的收斂速度,提高網(wǎng)絡(luò)學(xué)習(xí)率。為了驗(yàn)證方法的有效性,利用相同的數(shù)據(jù)對(duì)加入動(dòng)量項(xiàng)的神經(jīng)網(wǎng)絡(luò)模型與未加入動(dòng)量項(xiàng)的神經(jīng)網(wǎng)絡(luò)模型進(jìn)行分別訓(xùn)練,將訓(xùn)練時(shí)的收斂情況進(jìn)行對(duì)比并將其可視化,對(duì)比情況如圖5所示。
圖5 網(wǎng)絡(luò)訓(xùn)練時(shí)的進(jìn)化過程
從圖5 中可以看出,增加動(dòng)量項(xiàng)的神經(jīng)網(wǎng)絡(luò)預(yù)測(cè)誤差較未加入動(dòng)量項(xiàng)的神經(jīng)網(wǎng)絡(luò)預(yù)測(cè)誤差值下降快,且終值較小,這表明增加動(dòng)量項(xiàng)的神經(jīng)網(wǎng)絡(luò)進(jìn)化過程中收斂速度較快,且收斂效果較好。因此,提出方法可有效地提高神經(jīng)網(wǎng)絡(luò)學(xué)習(xí)率。
論文基于短時(shí)交通流量的特點(diǎn),研究采用改進(jìn)的小波神經(jīng)網(wǎng)絡(luò)算法,實(shí)現(xiàn)了短時(shí)交通流量預(yù)測(cè)的智能方法。本文利用小波神經(jīng)網(wǎng)絡(luò)對(duì)城市路網(wǎng)中的短時(shí)交通流量進(jìn)行預(yù)測(cè),并采用增加動(dòng)量項(xiàng)的方法改善神經(jīng)網(wǎng)絡(luò)訓(xùn)練過程中的收斂情況,提高了網(wǎng)絡(luò)學(xué)習(xí)率。提出方法可滿足短時(shí)交通流量預(yù)測(cè)的精確度以及時(shí)效性要求,同時(shí)對(duì)進(jìn)一步研究智能交通系統(tǒng)提供基礎(chǔ)。