張 曼,牟 莉
(西安工程大學(xué) 計(jì)算機(jī)科學(xué)學(xué)院,西安 710048)
隨著科技的高速發(fā)展,可靠的數(shù)學(xué)模型在解決現(xiàn)實(shí)問題中起著重要的作用.預(yù)測(cè)模型作為目前使用較多的分析方法,可以通過對(duì)海量的歷史數(shù)據(jù)不斷學(xué)習(xí),確定數(shù)據(jù)特征之間的關(guān)系,進(jìn)而科學(xué)的預(yù)測(cè)某一變量的未來走勢(shì).即根據(jù)學(xué)習(xí)到的對(duì)象特征預(yù)測(cè)其他的特征值.這種方法在各個(gè)領(lǐng)域引起了廣泛的關(guān)注,許多國家也已致力于對(duì)預(yù)測(cè)模型的研究.
現(xiàn)階段預(yù)測(cè)模型廣泛應(yīng)用于醫(yī)療、交通、工業(yè)、軍事、農(nóng)業(yè)、商業(yè)等現(xiàn)實(shí)生活中的方方面面,極大地提高了生產(chǎn)生活的效率.常見的預(yù)測(cè)模型有時(shí)間序列預(yù)測(cè)模型、灰色預(yù)測(cè)模型、神經(jīng)網(wǎng)絡(luò)預(yù)測(cè)模型、回歸預(yù)測(cè)模型等.如劉學(xué)剛等人使用以ARIMA(差分自回歸移動(dòng)平均模型)為代表的時(shí)間序列預(yù)測(cè)模型實(shí)現(xiàn)了對(duì)上海市大連路交通流的靜態(tài)預(yù)測(cè)[1],但這種模型結(jié)構(gòu)單一,局限在于需要保證時(shí)序數(shù)據(jù)的穩(wěn)定性且具有很強(qiáng)的空間依懶性,本質(zhì)上只能獲取線性變化的關(guān)系.Zeng 等人使用灰色預(yù)測(cè)模型對(duì)糧食生產(chǎn)情況進(jìn)行了預(yù)測(cè)[2],這種算法具有容易運(yùn)算,所需變量個(gè)數(shù)少的優(yōu)點(diǎn),但僅僅適用于數(shù)據(jù)量呈指數(shù)增長的預(yù)測(cè).Zeng 等人結(jié)合粒子群和BP 神經(jīng)網(wǎng)絡(luò)實(shí)現(xiàn)了對(duì)校園交通流量的預(yù)測(cè)[3],這種組合的網(wǎng)絡(luò)模型依賴于給定的數(shù)據(jù)集樣本,沒有很好的泛化能力;KTBoost預(yù)測(cè)模型作為回歸預(yù)測(cè)模型中的新算法,是由Sigrist 于2019年提出的一種增強(qiáng)算法[4],它創(chuàng)新性的將回歸樹[5,6]和RKHS 函數(shù)[7]結(jié)合,與原始的回歸樹、核提升算法相比,KTBoost預(yù)測(cè)模型的預(yù)測(cè)精度有了顯著提升.同時(shí),將其與SVR[8-10]、XGBoost[11]、隨機(jī)森林[12-14]等傳統(tǒng)的回歸預(yù)測(cè)模型對(duì)比,KTBoost預(yù)測(cè)模型的預(yù)測(cè)精度更高.
基于此,為了獲取KTBoost 算法更精準(zhǔn)的預(yù)測(cè)結(jié)果,本文利用OGWO 算法所具有的可尋找最優(yōu)解的特性,對(duì)KTBoost 算法中的超參數(shù)進(jìn)行調(diào)節(jié),并以交通流預(yù)測(cè)[15-18]為應(yīng)用場(chǎng)景,以各模型的決定系數(shù)值作為衡量標(biāo)準(zhǔn)進(jìn)行對(duì)比實(shí)驗(yàn).實(shí)驗(yàn)結(jié)果證明相比于其他模型,OGWO-KTBoost 模型的預(yù)測(cè)精度更好,擬合效果更佳.
澳大利亞的學(xué)者們通過觀察狼群的行為,提出了灰狼優(yōu)化算法(grey wolf optimizer,GWO)[19],因?yàn)榇怂惴ň哂性O(shè)置參數(shù)較少,易操作和實(shí)現(xiàn)等諸多優(yōu)點(diǎn),引起了廣泛的討論,在眾多領(lǐng)域得到了應(yīng)用[20].其搜索代理群從高到低分別是α、β、δ和ω即分別代表算法中較好的3 個(gè)解和剩余的其他解[21].狼群主要通過3 大行為完成對(duì)獵物的獵殺,分別是追蹤、狩獵和攻擊.
GWO 對(duì)追蹤行為定義如下:
其中,t表示更新次數(shù),表示狼群和獵物所處的位置,為式中的系數(shù)向量,表示狩獵者和被捕者之間的間隔和方位.
其中,代表[0,1]之間的隨機(jī)數(shù).
由以上公式可知,狼群主要通過與α、β、δ狼的距離確定狼群的位置,因此如果收斂因子的絕對(duì)值大于1,狼群將分散開尋找獵物,進(jìn)行大范圍的查找;收斂因子的絕對(duì)值小于1 表示狼群局部搜索,對(duì)獵物進(jìn)行圍堵.
其中,i表示收斂因子的迭代次數(shù),為了避免陷入局部最優(yōu)值,本文設(shè)置random的初始值為0.01,當(dāng)i%3=0 時(shí),random值為1.
KTBoost 模型以回歸樹和RKHS 函數(shù)作為基學(xué)習(xí)器,將內(nèi)核和樹結(jié)合,獲得一種新的增強(qiáng)算法,其中RKHS 嶺回歸采用高斯核.相比于經(jīng)典的樹與核,不同類型基學(xué)習(xí)器的互補(bǔ)既具有樹的學(xué)習(xí)不連續(xù)函數(shù)的優(yōu)勢(shì),又具有RKHS 函數(shù)適合學(xué)習(xí)平滑函數(shù)的特點(diǎn),泛化誤差更小,可以實(shí)現(xiàn)接近最優(yōu)的測(cè)試誤差.KTBoost 默認(rèn)依賴所有特征,先采用梯度下降法[24,25]并行學(xué)習(xí)回歸樹和懲罰PKHS 回歸函數(shù),每次增強(qiáng)迭代時(shí),從回歸樹和懲罰PKHS 回歸函數(shù)中選擇其中一個(gè)作為基學(xué)習(xí)器,添加到集成中,以結(jié)構(gòu)風(fēng)險(xiǎn)最小化學(xué)習(xí)規(guī)格,相比于其他算法,KTBoost 具有更高的泛化能力和非線性建模精度,其優(yōu)勢(shì)在小樣本數(shù)據(jù)和有噪數(shù)據(jù)中表現(xiàn)明顯.
盡管KTBoost 模型優(yōu)勢(shì)突出,但底層思想還是通過對(duì)多個(gè)弱學(xué)習(xí)器的集成,使之成為一個(gè)強(qiáng)學(xué)習(xí)器,從而建立最終的預(yù)測(cè)模型.因此,同Boosting 模型類似,KTBoost 模型的超參數(shù)對(duì)預(yù)測(cè)精度影響較大,而灰狼優(yōu)化算法具有較強(qiáng)的參數(shù)尋優(yōu)能力,利用灰狼優(yōu)化算法可以選擇KTBoost 模型中超參數(shù)的最佳值,因此,本文采用優(yōu)化后的灰狼優(yōu)化算法(OGWO)優(yōu)化KTBoost模型中弱學(xué)習(xí)器的個(gè)數(shù)n_estimators 和弱學(xué)習(xí)器的最大深度max_depth 這兩個(gè)重要參數(shù),從而提出了OGWOKTBoost 模型,其算法步驟如下所示:
(1)構(gòu)建OGWO 算法,對(duì)狼群數(shù)目N、最大迭代次數(shù)Max_iteration 等相關(guān)參數(shù)進(jìn)行初始化.
(2)根據(jù)OGWO 算法初始化KTBoost 訓(xùn)練模型,并通過計(jì)算獲取結(jié)果.
(3)OGWO 算法根據(jù)優(yōu)化后的超參數(shù),在下一次迭代時(shí)重新設(shè)置超參數(shù)并訓(xùn)練模型.
原始數(shù)據(jù)集中為零的數(shù)據(jù)已提前通過取缺失點(diǎn)前后數(shù)據(jù)均值的方式進(jìn)行了數(shù)據(jù)修復(fù).本文主要對(duì)每一個(gè)傳感器的時(shí)間戳進(jìn)行操作,從時(shí)間戳中提取出week,day,hour 和minute 的時(shí)間特征,與歷史的車輛數(shù)量結(jié)合起來作為預(yù)測(cè)因子構(gòu)建OGWO-KTBoost 模型進(jìn)行學(xué)習(xí).
本文中的實(shí)驗(yàn)數(shù)據(jù)均來自經(jīng)過實(shí)測(cè)的交通數(shù)據(jù)集PeMs 數(shù)據(jù)集,其數(shù)據(jù)的時(shí)間始于2014年5月1日,結(jié)束于2014年6月30日,共計(jì)61 天數(shù)據(jù),包含24 個(gè)傳感器,每隔5 分鐘獲取一次檢測(cè)器數(shù)據(jù),即每個(gè)傳感器含有17 568 組數(shù)據(jù),數(shù)據(jù)量大且全面.將數(shù)據(jù)集中70%的數(shù)據(jù)用于模型的訓(xùn)練,20%的數(shù)據(jù)用于在驗(yàn)證中調(diào)節(jié)參數(shù),剩余數(shù)據(jù)用于測(cè)試模型效果.
所有實(shí)驗(yàn)都在配置為RAM 16.0 GB,Intel(R)Core(TM)i5-10210U CPU @ 1.60 GHz 2.11 GHz 的處理器,64 位操作系統(tǒng)的筆記本上完成的,仿真軟件采用PyCharm 3.0.
在回歸預(yù)測(cè)問題中,判斷模型好壞的標(biāo)準(zhǔn)有殘留標(biāo)準(zhǔn)誤差(RSE)、均方根誤差(RMSE)、決定系數(shù)(R2_score)等,其中是一個(gè)歸一化的度量標(biāo)準(zhǔn),它既能體現(xiàn)出預(yù)測(cè)值和真實(shí)值之間的差值,也能體現(xiàn)出真實(shí)值之間的差值.總而言之,通過決定系數(shù)可以體現(xiàn)出擬合效果的好壞,所以本文中所有實(shí)驗(yàn)都將R2_score 的結(jié)果作為判斷模型優(yōu)劣的依據(jù),其結(jié)果保留小數(shù)點(diǎn)后5 位.評(píng)價(jià)公式如下所示:
如表1所示,為了呈現(xiàn)改進(jìn)算法的效果,在OGWOKTBoost 模型上運(yùn)行,通過控制變量法確保除灰狼數(shù)量之外的其他參數(shù)全部相同,經(jīng)實(shí)驗(yàn)驗(yàn)證,當(dāng)灰狼數(shù)量賦值30 時(shí)效果最好.
表1 不同灰狼數(shù)量的決定系數(shù)
灰狼優(yōu)化算法主要通過調(diào)節(jié)a值完成勘探和開發(fā)的平衡,分別將未改進(jìn)的和改進(jìn)后的a值在基于灰狼優(yōu)化算法的KTBoost 模型上運(yùn)行.在對(duì)傳統(tǒng)的GWOKTBoost 模型運(yùn)行后發(fā)現(xiàn),當(dāng)?shù)螖?shù)達(dá)到6 后,模型的決定系數(shù)基本保持在0.78 左右,后續(xù)a值的變化將不再影響決定系數(shù),即后續(xù)的迭代皆為無效迭代,通過對(duì)參數(shù)a的改進(jìn),R2_score 在原有的基礎(chǔ)上有了一定的提升,達(dá)到了0.826 50.具體的a值對(duì)比結(jié)果如表2所示.
表2 不同a 值的決定系數(shù)對(duì)比表
為了更直觀的體現(xiàn)出本文提出的OGWO-KTBoost預(yù)測(cè)模型性能的優(yōu)勢(shì),基于上述數(shù)據(jù)集和評(píng)價(jià)指標(biāo),將OGWO-KTBoost 與現(xiàn)有模型RBF、RFR、KTBoost、OGWO-RBF,OGWO-RFR 分別進(jìn)行對(duì)比分析不同
模型的參數(shù)設(shè)置如下:RBF 神經(jīng)網(wǎng)絡(luò)的隱藏層神經(jīng)元核函數(shù)為Gaussian 函數(shù),基函數(shù)中心采用前人已經(jīng)驗(yàn)證過的成熟算法K-means 算法進(jìn)行訓(xùn)練,權(quán)值參數(shù)采用梯度下降法.OGWO-RBF 模型中除原有的默認(rèn)參數(shù)外,運(yùn)用OGWO 優(yōu)化RBF 模型中的c 和gamma.RFR 模型中的分類器個(gè)數(shù)(n_estimators)為10,最大特征數(shù)目(max_features)設(shè)置為auto,最大深度(max_depth)默認(rèn)為2,采用五折交叉驗(yàn)證法.OGWO-RFR 模型中除RFR 模型中的默認(rèn)參數(shù)外,運(yùn)用OGWO 優(yōu)化RFR 模型中的分類器的個(gè)數(shù)n_estimators 和最大特征數(shù)目max_features.KTBoost 模型的默認(rèn)參數(shù)如下:Alpha 為1,n_neighbors 為5,n_components 為100,分類器個(gè)數(shù)(n_estimators)取值500,最大特征數(shù)(max_features)取值15.各個(gè)模型的預(yù)測(cè)結(jié)果圖如圖1-圖6.
為了清晰的呈現(xiàn)出預(yù)測(cè)效果,在此通過實(shí)驗(yàn)預(yù)測(cè)其中一天的車流量.如圖1-圖6所示,以一天中的分鐘值為橫坐標(biāo),實(shí)時(shí)車流量為縱坐標(biāo),黑色折線表示實(shí)際的車流量走勢(shì),紅色折線為模型的擬合效果.其中RBF 模型的預(yù)測(cè)效果最差,出現(xiàn)了欠擬合現(xiàn)象;RFR 模型預(yù)測(cè)效果不佳,尤其在300 分鐘后預(yù)測(cè)結(jié)果明顯小于實(shí)際結(jié)果;KTBoost 模型基本捕捉到了交通流預(yù)測(cè)的特征;OGWO-RBF 模型的前期預(yù)測(cè)效果差,后期結(jié)果良好;OGWO-RFR 模型基本滿足預(yù)測(cè)要求,擬合效果良好.而OGWO-KTBoost 模型的擬合精度更佳,預(yù)測(cè)效果最好.各模型的預(yù)測(cè)數(shù)據(jù)如表3所示.
圖1 RBF 模型圖
圖2 RFR 模型圖
圖3 KTBoost 模型圖
圖6 OGWO-KTBoost 模型圖
圖4 OGWO-RBF 模型圖
圖5 OGWO-RFR 模型圖
如表3所示,預(yù)測(cè)最差的是RBF 神經(jīng)網(wǎng)絡(luò),基本不能滿足預(yù)測(cè)要求,預(yù)測(cè)最好的是OGWO-KTBoost 模型.KTBoost 模型雖然與預(yù)期目標(biāo)有所差距,但與RBF 模型、RFR 模型相比,可以看出它在預(yù)測(cè)方面具有顯著優(yōu)勢(shì).通過將OGWO-RBF 模型與RBF 模型的決定系數(shù)進(jìn)行對(duì)比,可明顯看出OGWO-RBF 模型的決定系數(shù)已有了大幅度提升,從而側(cè)面證明了OGWO算法適用于對(duì)模型的優(yōu)化.
表3 各模型決定系數(shù)值
本文提出了一種新的預(yù)測(cè)模型,首先針對(duì)傳統(tǒng)灰狼優(yōu)化算法中存在的無效迭代問題,通過對(duì)參數(shù)a進(jìn)行改進(jìn),提高了灰狼優(yōu)化算法在有效迭代范圍內(nèi)的尋優(yōu)速度.利用改進(jìn)后的算法優(yōu)化KTBoost 模型的弱學(xué)習(xí)器的個(gè)數(shù)n_estimators 和避免過擬合參數(shù)max_depth,得到了OGWO-KTBoost預(yù)測(cè)模型.然后將該模型放在交通流預(yù)測(cè)的場(chǎng)景中,采用PeMs 數(shù)據(jù)集進(jìn)行實(shí)驗(yàn),實(shí)驗(yàn)結(jié)果表明,OGWO-KTBoost 模型預(yù)測(cè)精度約為0.826 5,已達(dá)到預(yù)期目標(biāo)值.同時(shí)將該模型與RBF、RFR、KTBoost、OGWO-RBF,OGWO-RFR 模型進(jìn)行了對(duì)比,由實(shí)驗(yàn)結(jié)果知OGWO-KTBoost預(yù)測(cè)模型優(yōu)于其他預(yù)測(cè)模型,實(shí)際預(yù)測(cè)精度最佳.