耿 浩, 孫佳華,李 藝,魏永長
(1.武漢科技大學信息科學與工程學院,湖北 武漢,430081;2.中南財經(jīng)政法大學工商管理學院,湖北 武漢,430073)
截至2021年4月1日,根據(jù)世界實時統(tǒng)計數(shù)據(jù)(Worldometers)顯示,全球新型冠狀病毒肺炎(簡稱“新冠肺炎”,COVID -19)累計確診病例超過12 943萬例,疫情形勢十分嚴峻。對新冠肺炎新增確診人數(shù)的有效預測能為疫情防控政策的制定提供重要參考。目前,各種定量建模方法已廣泛應用于傳染病監(jiān)測相關(guān)研究。SIR、SEIR等傳染病動力學經(jīng)典模型在預測傳染病的發(fā)展趨勢時將研究對象分為多類人群進行建模[1],但此類預測模型是基于研究地區(qū)總?cè)丝诓话l(fā)生變化、患者被治愈后不再具有傳染性等一系列假設(shè)條件[2]。而現(xiàn)實情況是,絕大部分國家和地區(qū)存在人口流動,且在全球范圍內(nèi)都出現(xiàn)了新冠肺炎患者康復后再次進行核酸檢測又呈陽性的情況。除此之外,每種傳染病的爆發(fā)在不同的時間段會表現(xiàn)出不同的發(fā)展趨勢,而且還會受到各個國家和地區(qū)采取的防疫政策的影響,因此,傳統(tǒng)建模方法對于新冠肺炎疫情的預測有一定的局限性。
近年來,深度學習方法在數(shù)據(jù)挖掘和分析預測等領(lǐng)域表現(xiàn)優(yōu)異[3-4],它能使模型更加貼合數(shù)據(jù),并且計算速度快、誤差小、預測結(jié)果更加準確,其中循環(huán)神經(jīng)網(wǎng)絡(luò)(Recurrent Neural Network,RNN)模型在新冠肺炎疫情預測中取得了一定效果[5]。但是,RNN網(wǎng)絡(luò)中越靠后的節(jié)點對于前面節(jié)點的感知能力越低,在處理長時間序列時存在嚴重的梯度消失問題,因此長短期記憶(Long Short-Term Memory,LSTM)網(wǎng)絡(luò)應運而生。Rasjid等[6]利用Savitzky-Golay濾波器和LSTM網(wǎng)絡(luò)模型來預測印度尼西亞的新冠病毒感染人數(shù)和死亡人數(shù),實驗對比結(jié)果顯示,LSTM神經(jīng)網(wǎng)絡(luò)模型預測值與時間序列數(shù)據(jù)保持一致,預測效果更好。Chimmula等[7]基于LSTM網(wǎng)絡(luò)預測了加拿大COVID -19疫情的發(fā)展趨勢和停止擴散的大致時間。趙永翼等[8]采用LSTM網(wǎng)絡(luò)對新冠肺炎新增確診、現(xiàn)有確診、治愈、死亡和累計確診人數(shù)進行序列分析和預測,其精度較高。Shahid等[9]對比研究了LSTM、雙向長短期記憶網(wǎng)絡(luò)(BiLSTM)、支持向量機(SVM)等模型在預測新冠肺炎未來病例數(shù)量上的表現(xiàn),指出BiLSTM網(wǎng)絡(luò)具有較好的魯棒性和準確性。
LSTM網(wǎng)絡(luò)雖然解決了較長時間序列預測中的梯度消失問題,但計算量較為龐大。門控循環(huán)單元(Gated Recurrent Unit, GRU)網(wǎng)絡(luò)是LSTM網(wǎng)絡(luò)的優(yōu)化,其模型結(jié)構(gòu)更加簡單,計算代價更小,收斂性也更好,但GRU網(wǎng)絡(luò)只能單向處理數(shù)據(jù),因此只能依靠過去時刻的數(shù)據(jù)來進行預測[10]。雙向門控循環(huán)單元(BiGRU)網(wǎng)絡(luò)是由前向和后向兩個神經(jīng)網(wǎng)絡(luò)構(gòu)成,能獲取某一時刻前、后兩個方向的數(shù)據(jù)信息并加以利用[11],使得預測值更加接近真實值。
另外,根據(jù)人類選擇性視覺的研究發(fā)現(xiàn),人們在觀察目標時往往會集中注意力關(guān)注重要信息,而抑制對其他無用信息的關(guān)注。深度學習的注意力機制(Attention Mechanism)借鑒了人類視覺注意力機制,其本質(zhì)上是從眾多信息中挑選出對于當前任務(wù)更加有用的信息,這不僅提升了模型處理數(shù)據(jù)的效率,同時保證了預測結(jié)果的準確性[12]。
基于以上分析,本文提出一種基于BiGRU和注意力機制的網(wǎng)絡(luò)模型(BiGRU-Attention)進行新冠肺炎新增確診人數(shù)預測。BiGRU不僅適用于新冠肺炎疫情數(shù)據(jù)的時序特性和非線性,而且可解決GRU網(wǎng)絡(luò)只能單向處理數(shù)據(jù)的問題。注意力機制能夠自適應地選擇出最相關(guān)的輸入數(shù)據(jù),集中計算資源處理更重要的任務(wù),可解決疫情預測計算量龐大、預測結(jié)果不精確等問題。本文最后通過實際的新冠肺炎數(shù)據(jù)集進行算法驗證。
針對所研究的新冠肺炎新增確診人數(shù)的預測,鑒于數(shù)據(jù)集時間跨度大,屬于較長時間數(shù)據(jù)序列,如果能同時利用某日前、后一段時間內(nèi)的新增確診人數(shù)信息,將會有效提升預測效果。
BiGRU網(wǎng)絡(luò)結(jié)構(gòu)如圖1所示,其由輸入層、前向隱藏層、后向隱藏層和輸出層構(gòu)成。輸入層包含輸入數(shù)據(jù),在每一時刻將數(shù)據(jù)同時傳遞給前向隱藏層和后向隱藏層,即數(shù)據(jù)同時流向兩個方向相反的GRU網(wǎng)絡(luò),輸出層的輸出序列由這兩個GRU共同決定。
圖1 BiGRU結(jié)構(gòu)圖
假設(shè)xt為t時刻的輸入向量,GRU網(wǎng)絡(luò)的計算過程表示如下:
zt=σ(Wzxt+Uzht-1+bz)
(1)
rt=σ(Wrxt+Urht-1+br)
(2)
(3)
(4)
BiGRU網(wǎng)絡(luò)結(jié)構(gòu)的數(shù)學表達式如下:
(5)
(6)
(7)
在人工神經(jīng)網(wǎng)絡(luò)中,隨著模型參數(shù)的增多,模型的表達能力也會變強,同時模型的信息量也會變得龐大,這會帶來信息過載的問題[13]。在神經(jīng)網(wǎng)絡(luò)模型中引入注意力機制能夠分配一系列的權(quán)重參數(shù),使得模型集中資源關(guān)注關(guān)鍵信息,降低對于低相關(guān)性信息的關(guān)注度,這樣就可以解決信息過載的問題,從而提高算法效率。注意力機制結(jié)構(gòu)如圖2所示。
圖2 注意力機制結(jié)構(gòu)圖
注意力機制會依據(jù)信息的重要程度分配權(quán)重參數(shù),即注意力值[14]。注意力值的計算步驟為:首先計算輸入信息的注意力分布情況,得到注意力得分函數(shù);然后通過歸一化指數(shù)函數(shù)(softmax)對注意力得分函數(shù)進行數(shù)值轉(zhuǎn)換,根據(jù)權(quán)重系數(shù)進行加權(quán)求和。
設(shè)神經(jīng)網(wǎng)絡(luò)輸入信息為H=[h1,h2,…,hN],其中N是輸入信息的個數(shù)。用hm表示輸入信息向量,ht表示用于查找關(guān)鍵信息的查詢向量,通過softmax函數(shù)進行歸一化處理,將原始計算分值轉(zhuǎn)化成所有權(quán)重之和為1的概率分布,更加突出重要元素的權(quán)重,公式如下:
αm=softmax(s(hm,ht))=
(8)
式中:αm表示第m個輸入信息被取到的概率,由所有αm構(gòu)成的概率向量即為注意力分布;注意力函數(shù)s(hm,ht)有以下幾種形式:
加性模型s(hm,ht)=vTtanh(Whm+Uht)
(9)
(10)
(11)
(12)
式(9)~式(12)中:W、U和v是神經(jīng)網(wǎng)絡(luò)中可學習的參數(shù);d是輸入信息的維度。
注意力函數(shù)的作用是計算兩個向量之間的相似度,沒有固定的形式,以上幾種計算方式較為常見,在實際中應根據(jù)具體任務(wù)選擇模型,本文選用加性模型。
最后將所有輸入信息的概率匯總,以加權(quán)平均的方式求和,得到注意力V值,公式如下:
(13)
考慮到需要深度挖掘和利用所獲取的新冠肺炎統(tǒng)計數(shù)據(jù)中的相關(guān)信息,本文采用了BiGRU的結(jié)構(gòu)。不過在使用BiGRU對有限的時間序列數(shù)據(jù)提取信息時容易出現(xiàn)過擬合現(xiàn)象,最終影響到模型的預測效果,為此在網(wǎng)絡(luò)中加入了Dropout層。對每個時間步都使用相同的Dropout掩碼,使得網(wǎng)絡(luò)可以沿著時間正確地傳播學習誤差。Dropout在一定程度上避免了部分權(quán)重對網(wǎng)絡(luò)模型的過度影響,減少了模型的偏差,避免了復雜神經(jīng)網(wǎng)絡(luò)模型的過擬合情況。另外,在Dropout層之后采用注意力機制對輸出的信息進行權(quán)重分配,重點關(guān)注有用的信息,以提高模型預測效率。
BiGRU-Attention網(wǎng)絡(luò)框架如圖3所示。基于BiGRU-Attention的新冠肺炎新增確診人數(shù)預測算法步驟如下。
輸入:訓練數(shù)據(jù)集輸出:預測結(jié)果Y1.對原始統(tǒng)計數(shù)據(jù)進行預處理,得到新的輸入序列xt。2.初始化網(wǎng)絡(luò)權(quán)重Wz、Wr、Wh、Uz、Ur、Uh,偏置bz、br、bh。3.將輸入向量xt輸入BiGRU中,根據(jù)式(1)~式(4)計算單向GRU當前隱藏層狀態(tài)值。4.將正向和反向堆疊的單向GRU網(wǎng)絡(luò)組合,得到BiGRU網(wǎng)絡(luò)的輸出hm=[h→t,h←t]。5.根據(jù)式(8)和式(9)計算每個輸出向量對應的權(quán)值αm。6.用加權(quán)平均的方式對輸入序列信息匯總,根據(jù)式(13)計算得到注意力值V。7.將V輸入到輸出層,得到最后的預測結(jié)果Y。
圖3 BiGRU-Attention網(wǎng)絡(luò)框架
實驗數(shù)據(jù)來源于美國約翰·霍普金斯大學(JHU)系統(tǒng)科學與工程中心(CSSE)建立的COVID -19數(shù)據(jù)倉庫,其中收集了全球各個國家自2020年1月22日以來每日的新冠肺炎新增確診人數(shù)。新增確診人數(shù)能夠較為全面地反映疫情的發(fā)展態(tài)勢以及各個國家和地區(qū)的疫情防控效果,是影響后續(xù)防控政策調(diào)整的關(guān)鍵特征參數(shù)。通過模型輸出的預測數(shù)據(jù)能夠在一定程度上協(xié)助判斷疫情的發(fā)展狀況,為疫情防控提供參考。
本次實驗采用2020年1月22日至2021年3月21日共425天的數(shù)據(jù)。利用本文提出的BiGRU-Attention模型,分別對英國和美國的每日新增確診人數(shù)進行預測,并與LSTM、GRU、BiGRU這三種目前較為流行的深度學習神經(jīng)網(wǎng)絡(luò)模型進行比較。
選擇以下三種評價指標來檢驗各個模型的性能,包括均方根誤差(RMSE)、平均絕對誤差(MAE)和正確率(Accuracy)三種,RMSE和MAE越小、Accuracy越大,代表模型預測效果越好。
(14)
(15)
(16)
由于新型冠狀病毒傳染力強,每日新增確診病例的數(shù)據(jù)波動性較大,且其中會突然出現(xiàn)一些極高或極低的數(shù)據(jù)點,這些點在數(shù)據(jù)中所占比例不大,卻會影響到模型的訓練過程,因而可將其視為異常值點,需要對數(shù)據(jù)進行平滑處理。
中值濾波對脈沖噪聲有良好的濾除作用,特別是在濾除噪聲的同時還能夠保護信號的邊緣,使之不被模糊,這些優(yōu)良特性是線性濾波等方法所不具備的。此外,中值濾波的算法也比較簡單。本文對輸入模型的數(shù)據(jù)均采用了中值濾波處理,以提高模型訓練效果。設(shè)置中值濾波的采樣點個數(shù)為3,圖4為中值濾波前、后的輸入數(shù)據(jù)對比。
圖4 輸入數(shù)據(jù)的中值濾波
如前所述,為防止出現(xiàn)過擬合的現(xiàn)象,在BiGRU網(wǎng)絡(luò)中加入了Dropout層,以使部分隨機選擇出的神經(jīng)元停止工作。這里設(shè)置丟棄比例為0.5;同時,由于數(shù)據(jù)樣本較少,選擇將80%的數(shù)據(jù)作為訓練集,10%的數(shù)據(jù)作為驗證集,剩余10%的數(shù)據(jù)作為測試集。
圖5所示為英國和美國在2020年1月22日至2021年3月21日期間的每日新冠肺炎新增確診人數(shù)變化情況以及利用四種方法獲得的預測結(jié)果。從圖5(a)可以看出,BiGRU-Attention和BiGRU的預測值曲線與真實值曲線更為接近,因此二者比GRU、LSTM有更好的預測效果。從曲線的變化來看,英國每日新增確診人數(shù)是波動變化的,這是由于檢測病毒的方法、調(diào)查人數(shù)以及病毒的傳播力等都在不斷變化,在四種方法中,只有本文提出的BiGRU-Attention模型能夠較為明顯地體現(xiàn)出新增確診人數(shù)的波動,而另外三種方法得出的預測曲線過于平滑。由圖5(b)可見,使用本文模型對美國新冠肺炎新增確診人數(shù)進行預測時也可以達到不錯的效果,但由于美國各地對疫情防控政策的實施程度以及民眾的配合程度等多種原因,新增病例數(shù)據(jù)波動幅度更大,因而預測的準確率有所下降。
(a) 英國
(b) 美國
不同模型預測性能的具體比較如表1所示。在英國數(shù)據(jù)集上,本文模型相比于LSTM、GRU和BiGRU,RMSE指標分別下降0.010、0.011、0.009,MAE分別下降0.006、0.008、0.008,Accuracy指標分別提升0.071、0.071、0.035。在美國數(shù)據(jù)集上,本文模型相比于LSTM、GRU和BiGRU,RMSE指標分別下降0.006、0.002、0.012,Accuracy指標分別提升0.01、0.03、0.121,MAE指標與GRU模型的相當,但仍然比LSTM和BiGRU的MAE分別下降0.003和0.01。由此可知,本文提出的新冠肺炎疫情預測方法比對比方法精度更高。
表1 不同模型對新冠肺炎每日新增確診人數(shù)的預測精度對比
本文采用BiGRU-Attention深度學習網(wǎng)絡(luò)模型進行新冠肺炎疫情預測,并利用JHU CSSE建立的新冠肺炎疫情數(shù)據(jù)集證明了該方法能夠以較低的計算代價獲得較高的預測精度,和當前比較流行的深度學習神經(jīng)網(wǎng)絡(luò)相比具有明顯優(yōu)勢。未來研究可進一步降低深度學習算法的復雜度,提升容錯性,開發(fā)更加可靠的深度學習模型,以用于新冠肺炎疫情的最終發(fā)展趨勢預測。