龐夢(mèng)吟,王海寧,萬通明,馬 苗,2*
(1.陜西師范大學(xué) 計(jì)算機(jī)科學(xué)學(xué)院,陜西 西安 710119;2.空天地海一體化大數(shù)據(jù)應(yīng)用技術(shù)國家工程實(shí)驗(yàn)室,陜西 西安 710129)
公共衛(wèi)生安全事件常常是牽動(dòng)著一個(gè)地區(qū)、一個(gè)國家,乃至整個(gè)世界的重大問題。新冠肺炎疫情的發(fā)生和蔓延,對(duì)中國乃至全球經(jīng)濟(jì)產(chǎn)生了巨大的沖擊和深遠(yuǎn)影響。在對(duì)抗新冠肺炎疫情的過程中,已經(jīng)有不少的科研人員研究了疫情傳播及其發(fā)展趨勢(shì),為疫情防控政策的制定提供宏觀的數(shù)據(jù)依據(jù),節(jié)省決策時(shí)間。
現(xiàn)有的傳染病預(yù)測(cè)方法已有很多,如流行控制圖法、灰色模型、求和自回歸移動(dòng)平均模型(Auto Regressive Integrated Moving Average Model,ARIMA)、Logistic回歸模型、神經(jīng)網(wǎng)絡(luò)模型等。針對(duì)新冠肺炎疫情問題,研究人員進(jìn)行了深入研究,并取得了一系列成果。例如,張琳采用一般增長模型分3個(gè)階段非線性擬合新冠肺炎疫情中確診、疑似和密切接觸人數(shù),擬合結(jié)果與實(shí)證數(shù)據(jù)高度吻合[1]。喻孜等人基于時(shí)變參數(shù)-SIR模型評(píng)估和預(yù)測(cè)COVID-19疫情,預(yù)測(cè)在2020年2月9日確診人數(shù)達(dá)到高峰后,將呈現(xiàn)下降趨勢(shì)[2]。Li等人建立梯度推進(jìn)決策樹(Gradient Boosting Decision Tree,GBDT)、Logistic回歸(Logistic Regression,LR)模型和簡化LR模型預(yù)測(cè)COVID-19的死亡率,其結(jié)果表明GBDT模型顯示出最高的敏感性和特異性,且死亡率的預(yù)測(cè)性能優(yōu)于LR模型[3]。盛華熊等人對(duì)武漢封城階段運(yùn)用經(jīng)典的SIR模型和差分遞推方法分析來預(yù)測(cè)疫情,理論值和實(shí)際值能較好吻合。對(duì)武漢封城前的自由傳染階段運(yùn)用Logistic模型進(jìn)行預(yù)測(cè)和比較,且模型對(duì)其他地區(qū)疾病傳播的分析與預(yù)測(cè)具有廣泛適用性[4]。李偉煒等人利用動(dòng)力學(xué)模型(Susceptible Exposed Infectious Removed,SEIR)擬合COVID-19的再生系數(shù)曲線,并對(duì)湖北省以及國外疫情進(jìn)行預(yù)測(cè)分析,其結(jié)果表明湖北省的疫情傳播相對(duì)于國外得到更好控制[5]。王瑞等人提出運(yùn)用Dropout技術(shù)的LSTM神經(jīng)網(wǎng)絡(luò)預(yù)測(cè)模型,構(gòu)建更多層數(shù)的LSTM神經(jīng)網(wǎng)絡(luò)預(yù)測(cè)模型,并在隱藏層采用Dropout技術(shù),能夠有效解決過擬合問題,較精準(zhǔn)地預(yù)測(cè)疫情趨勢(shì)[6]。Takasar等人采用SEIQR模型通過參數(shù)校正預(yù)測(cè)了巴基斯坦的情況并對(duì)未來情況進(jìn)行了討論[7]。Yudistira等人考慮COVID-19病例增長的多種因素,使用可解釋卷積-LSTM的視覺歸因觀察高貢獻(xiàn)因素,比其他模型的預(yù)測(cè)誤差都低[8]。季偉東等人分析粒子群優(yōu)化算法的尋優(yōu)特點(diǎn),改進(jìn)了尋優(yōu)速度和尋優(yōu)目的,采用100天新增確診人數(shù)數(shù)據(jù),將改進(jìn)算法與其他算法對(duì)比,驗(yàn)證其算法的良好性能[9]。Wibowo等人采用Logistic回歸模型預(yù)測(cè)印尼新冠肺炎疫情,實(shí)驗(yàn)結(jié)果誤差較小[10]。Song Jialu等人提出一種通過考慮時(shí)變模型參數(shù)來動(dòng)態(tài)預(yù)測(cè)新冠肺炎擴(kuò)展的新方法,用最大似然估計(jì)理論估計(jì)時(shí)變模型參數(shù),提出擴(kuò)展卡爾曼濾波器來估計(jì)新冠肺炎擴(kuò)散情況[11]。Shahid等人采用ARIMA、SVR、LSTM、Bi-LSTM等模型對(duì)COVID-19影響的十個(gè)主要國家進(jìn)行預(yù)測(cè),其結(jié)果表明預(yù)測(cè)模型的性能優(yōu)劣排序?yàn)锽i-LSTM>LSTM>SVR>ARIMA[12]。
受已有研究成果啟發(fā),由于Logistic模型常常被應(yīng)用于描述種群、傳染病增長以及人口預(yù)測(cè)等領(lǐng)域,因此利用Logistic曲線的特性選擇該模型,通過調(diào)參擬合疫情的歷史變化趨勢(shì),并預(yù)測(cè)未來的疫情數(shù)據(jù)。但是在本次疫情傳播過程中,受外界諸多因素影響較大,同時(shí)疫情確診人數(shù)數(shù)據(jù)具有時(shí)間序列特征,而LSTM深度學(xué)習(xí)網(wǎng)絡(luò)模型擅長解決與時(shí)間序列高度相關(guān)的問題,可以來學(xué)習(xí)一些人為干擾因素,因此該文利用國家衛(wèi)生健康委員會(huì)、世界衛(wèi)生組織等權(quán)威機(jī)構(gòu)公開報(bào)道的數(shù)據(jù),以歷史累計(jì)確診人數(shù)為基礎(chǔ),采用上述兩個(gè)模型的組合來分析預(yù)測(cè)之后疫情累計(jì)確診人數(shù);最后,通過評(píng)價(jià)指標(biāo)值對(duì)各模型預(yù)測(cè)結(jié)果進(jìn)行分析比較,結(jié)果表明組合預(yù)測(cè)模型相對(duì)其他模型的預(yù)測(cè)效果更好,為后續(xù)的疫情預(yù)測(cè)和防控工作提供技術(shù)支撐。
單個(gè)預(yù)測(cè)模型進(jìn)行預(yù)測(cè)時(shí)會(huì)存在一些缺陷,如信息源的不全面、對(duì)模型設(shè)定形式敏感等。自Bates和Granger首次提出組合預(yù)測(cè)方法以來,因其能有效提高預(yù)測(cè)精度,受到國內(nèi)外預(yù)測(cè)工作者的重視。組合預(yù)測(cè)是指應(yīng)用兩種和兩種以上的預(yù)測(cè)模型對(duì)傳染病進(jìn)行預(yù)測(cè),綜合利用單個(gè)模型所提供的信息,以適當(dāng)?shù)募訖?quán)平均形式得出組合預(yù)測(cè)模型[10],盡可能地提高精度。組合預(yù)測(cè)模型有線性組合模型、最優(yōu)線性組合模型、貝葉斯組合模型、轉(zhuǎn)換函數(shù)組合模型、計(jì)量經(jīng)濟(jì)與系統(tǒng)動(dòng)力學(xué)組合模型等,該文采用的是線性組合模型。
Logistic模型,又可稱為邏輯回歸模型,是一種廣義的線性回歸分析模型[13],它是皮埃爾·弗朗索瓦·韋呂勒在研究它與人口增長的關(guān)系時(shí)命名的。在疫情傳播過程中,剛開始的環(huán)境阻力比較小,因此增長率比較大;之后隨著“封城”、隔離、戴口罩等措施的實(shí)施,環(huán)境阻力增大,增長率減小,傳播規(guī)律與Logistic模型類似,故可以用Logistic模型來預(yù)測(cè)未來疫情數(shù)據(jù),其公式為:
(1)
其中,t為時(shí)間;K為容量,即增長到最后,P(t)能達(dá)到的極限;P0為初始容量,即t=0時(shí)刻的數(shù)量;r為增長速率,r越大則增長越快,越快逼近K值,r越小增長越慢,越慢逼近K值。該文建立Logistic模型后,采用非線性最小二乘法對(duì)K、P0、r進(jìn)行參數(shù)估計(jì),并以此對(duì)未來數(shù)據(jù)進(jìn)行預(yù)測(cè)。
Logistic模型起初階段大致是指數(shù)增長;然后隨著開始變得飽和,增加變慢;最后達(dá)到成熟時(shí),增加停止。Logistic模型常用于數(shù)據(jù)挖掘、疾病自動(dòng)診斷、經(jīng)濟(jì)預(yù)測(cè)等領(lǐng)域。例如,探討引發(fā)疾病的危險(xiǎn)因素,并根據(jù)危險(xiǎn)因素預(yù)測(cè)疾病發(fā)生的概率等[13]。
LSTM由Hochreiter和Schmidhuber在1997首先提出,是為解決一般循環(huán)神經(jīng)網(wǎng)絡(luò)(Recurrent Neural Network,RNN)存在的長期依賴問題而專門設(shè)計(jì)出來的一種時(shí)間循環(huán)神經(jīng)網(wǎng)絡(luò)[14]。LSTM通過增加輸入門限、遺忘門限和輸出門限,使得在自循環(huán)的過程中權(quán)重是變化的,從而避免梯度消失或者梯度膨脹的問題。由于其獨(dú)特的設(shè)計(jì)結(jié)構(gòu),LSTM適合于處理和預(yù)測(cè)時(shí)間序列中有間隔和延遲的重要事件。
圖1為LSTM單元結(jié)構(gòu)流動(dòng)圖,其中A模塊為LSTM的單元結(jié)構(gòu)圖。假定hi為第i時(shí)刻狀態(tài)的輸出值,xi為第i時(shí)刻的輸入值,W表示相應(yīng)門的權(quán)重矩陣,b表示相應(yīng)門的偏置,LSTM的具體流程為:
(1)遺忘門限:將前一時(shí)刻的網(wǎng)絡(luò)輸出和當(dāng)前時(shí)刻的網(wǎng)絡(luò)輸入結(jié)合起來,然后進(jìn)行線性變換后經(jīng)過sigmoid激活函數(shù),并將結(jié)果映射到0~1作為記憶衰減系數(shù)ft,其中1表示“完全接受”,0表示“完全忽略”,公式如下:
ft=σ(Wf·[ht-1,xt]+bf)
(2)
it=σ(Wi·[ht-1,xt]+bi)
(3)
(4)
(5)
(4)輸出門限:首先采用類似于計(jì)算記憶衰減系數(shù)的方法得到輸出門限的系數(shù)ot,之后將細(xì)胞狀態(tài)輸入tanh后與該系數(shù)相乘得到輸出值,這兩步公式為:
ot=σ(Wo·[ht-1,xt]+bo)
(6)
ht=ot×tanh(Ct)
(7)
LSTM模型常用于文本生成、機(jī)器翻譯、語音識(shí)別、生成圖像描述和視頻標(biāo)記等領(lǐng)域,同時(shí)LSTM模型也常被應(yīng)用于機(jī)械故障診斷和預(yù)測(cè)領(lǐng)域,如處理機(jī)械設(shè)備的振動(dòng)信號(hào)、航班延誤預(yù)測(cè)、金融時(shí)間序列預(yù)測(cè)、加油站時(shí)序數(shù)據(jù)異常檢測(cè)等問題。
基于以上兩種模型,該文將Logistic模型和LSTM模型的預(yù)測(cè)結(jié)果通過線性回歸網(wǎng)絡(luò)[15]訓(xùn)練權(quán)重參數(shù)并進(jìn)行預(yù)測(cè),以期得到更好的預(yù)測(cè)效果。
組合預(yù)測(cè)模型定義為:
(8)
損失函數(shù)為:
(9)
(10)
采用小批量隨機(jī)梯度下降來優(yōu)化參數(shù),將模型各參數(shù)作如下迭代:
(11)
其中,|β|表示每個(gè)小批量中的樣本個(gè)數(shù),η稱為學(xué)習(xí)率,η過大可能會(huì)導(dǎo)致震蕩而無法收斂,η過小會(huì)導(dǎo)致收斂的速度慢,因此選擇一個(gè)恰當(dāng)?shù)摩侵抵陵P(guān)重要。
圖2為所建立的組合預(yù)測(cè)模型結(jié)構(gòu),其中LSTM模型有四層網(wǎng)絡(luò):輸入層、LSTM層、全連接層、回歸輸出層,其中設(shè)定LSTM層有200個(gè)隱含單元;Logistic模型和LSTM模型預(yù)測(cè)結(jié)果作為線性回歸網(wǎng)絡(luò)的兩個(gè)輸入,通過線性回歸網(wǎng)絡(luò)訓(xùn)練該組合預(yù)測(cè)模型后,輸出的結(jié)果為該組合預(yù)測(cè)模型的預(yù)測(cè)結(jié)果。
該文采用國家衛(wèi)生健康委員會(huì)公布的2020年1月13日至2020年11月13日的累計(jì)確診人數(shù),將前276天(即2020年1月13日至2020年10月14日)的數(shù)據(jù)作為訓(xùn)練集來訓(xùn)練模型,之后的30天(即2020年10月15日至2020年11月13日)作為測(cè)試集來測(cè)試模型的效果。并利用評(píng)價(jià)指標(biāo)對(duì)組合預(yù)測(cè)模型與LSTM模型、Logistic模型、SEIR模型預(yù)測(cè)進(jìn)行對(duì)比分析。
基于Python語言和PyTorch平臺(tái)將Logistic模型與LSTM模型的預(yù)測(cè)結(jié)果作為輸入層,將其結(jié)果進(jìn)行歸一化后輸入到線性回歸網(wǎng)絡(luò)中,通過網(wǎng)絡(luò)不斷迭代對(duì)組合預(yù)測(cè)模型的參數(shù)進(jìn)行訓(xùn)練,得到的模型參數(shù)為:
w1=1.000 5,w2=-0.001 5,b=-0.001 8
(12)
即最終得到的組合預(yù)測(cè)模型為:
(13)
圖3為組合預(yù)測(cè)模型的預(yù)測(cè)結(jié)果,橫坐標(biāo)為天數(shù)(1月13日為開始),縱坐標(biāo)為確診人數(shù)。實(shí)線部分為真實(shí)數(shù)據(jù),虛線部分為預(yù)測(cè)的數(shù)據(jù)。圖3表明,在前期疫情剛剛爆發(fā),沒有人為因素、政策等措施的控制,疫情的累計(jì)確診人數(shù)急劇增長,在“封城”等一些措施實(shí)施后,疫情的累計(jì)確診人數(shù)的增長速率減小,在中后期確診人數(shù)趨于穩(wěn)定,但仍在緩慢增長。
組合預(yù)測(cè)模型、LSTM模型、Logistic模型、SEIR模型在2020年10月15日-2020年11月13日的累計(jì)確診人數(shù)預(yù)測(cè)結(jié)果與真實(shí)數(shù)據(jù)如表1所示。從表1中可以看出,組合預(yù)測(cè)模型得到的結(jié)果最接近于真實(shí)數(shù)據(jù),LSTM模型次之,Logistic模型和SEIR模型的結(jié)果與真實(shí)數(shù)據(jù)相差較遠(yuǎn)。Logistic模型的多日預(yù)測(cè)結(jié)果差距并不大,這是因?yàn)長ogistic模型的特征為后期階段達(dá)到容量后數(shù)據(jù)基本不變,因此在該時(shí)期預(yù)測(cè)結(jié)果較差。由于在后期國家對(duì)疫情的傳播進(jìn)行了有效的控制使得累計(jì)確診人數(shù)增長緩慢,同時(shí)感染概率、康復(fù)概率、潛伏者的患病概率等因素值無法精確評(píng)估,因此在該時(shí)期SEIR模型的預(yù)測(cè)效果相對(duì)較差,預(yù)測(cè)結(jié)果與真實(shí)數(shù)據(jù)相差較大。
對(duì)于回歸模型的評(píng)價(jià)指標(biāo)有以下三種:
(1)均方根誤差(Root Mean Squared Error,RMSE)。
(14)
(2)平均絕對(duì)誤差(Mean Absolute Error,MAE)。
(15)
(3)平均絕對(duì)百分比誤差(Mean Absolute Percentage Error,MAPE)。
表1 不同模型預(yù)測(cè)2020年10月15日-2020年11月13日的累計(jì)確診人數(shù)
(16)
根據(jù)這三個(gè)指標(biāo),所提出的組合預(yù)測(cè)模型與其他三種模型的指標(biāo)值如表2所示。
表2表明,Logistic模型與SEIR模型的RMSE值、MAE值和MAPE值更大,說明預(yù)測(cè)效果較差;而LSTM模型的RMSE值、MAE值和MAPE值較小,說明預(yù)測(cè)效果較好;組合預(yù)測(cè)模型較其他模型誤差最小,說明預(yù)測(cè)效果最好。
表2 組合預(yù)測(cè)模型與單一模型的評(píng)價(jià)指標(biāo)
為克服單一模型預(yù)測(cè)精度低的缺點(diǎn),在Logistic模型和LSTM模型預(yù)測(cè)的基礎(chǔ)上,建立了基于線性回歸網(wǎng)絡(luò)進(jìn)行訓(xùn)練的組合預(yù)測(cè)模型,并預(yù)測(cè)了之后的累計(jì)確診人數(shù),其中所采用的LSTM模型使用前一時(shí)間步的觀測(cè)值來更新網(wǎng)絡(luò)狀態(tài),使得到的預(yù)測(cè)值更加準(zhǔn)確。采用三種評(píng)價(jià)指標(biāo)將組合預(yù)測(cè)模型與LSTM模型、Logistic模型、SEIR模型進(jìn)行評(píng)估對(duì)比,結(jié)果表明所建立的組合預(yù)測(cè)模型誤差更小,預(yù)測(cè)效果更準(zhǔn)確,可以為疫情預(yù)測(cè)提供科學(xué)有效的參考,同時(shí)為之后可能發(fā)生的公共衛(wèi)生安全事件提供準(zhǔn)確的預(yù)測(cè)模型。