韓天齊 宋 波
麻疹是一種常見(jiàn)的急性呼吸道傳染病之一,該疾病傳染性很強(qiáng),在人口密集而未普種疫苗的地區(qū)易發(fā)生流行。自1965年我國(guó)開(kāi)始普種麻疹減毒活疫苗以來(lái),各地麻疹發(fā)病率逐漸下降,麻疹大規(guī)模流行基本上得到控制。但由于改革開(kāi)放及經(jīng)濟(jì)發(fā)展所帶來(lái)的人口流動(dòng)增加,原有的疫苗接種制度受到了一定的沖擊,部分兒童麻疹疫苗漏種或免疫失敗的現(xiàn)象不斷出現(xiàn)。加之初免后隨著年齡增長(zhǎng)而免疫力逐漸降低等原因,致使麻疹小規(guī)模流行仍時(shí)有發(fā)生。據(jù)統(tǒng)計(jì)數(shù)據(jù)顯示,麻疹流行有明顯的季節(jié)性,以10月至次年2月為發(fā)病季節(jié)。普種麻疹疫苗后,發(fā)病季節(jié)后移至每年3~5月份,麻疹流行大幅度的周期波動(dòng)減弱,但仍有一定的小幅度周期波動(dòng)。
在傳染病的預(yù)防過(guò)程中,發(fā)病率的預(yù)測(cè)起著重要作用,研判傳染病流行初期的發(fā)展趨勢(shì),對(duì)制定相關(guān)疾病的預(yù)防和控制措施有重要的參考意義。目前在疾病發(fā)病率預(yù)測(cè)工作中,一種常用方法是基于統(tǒng)計(jì)學(xué)的分析模型或時(shí)間序列模型,如基于ARIMA和NAR模型對(duì)細(xì)菌性痢疾發(fā)病率的預(yù)測(cè)[1]研究,基于Poisson模型對(duì)人口死亡率[2]的研究,另一種是基于機(jī)器學(xué)習(xí)的神經(jīng)網(wǎng)絡(luò)模型對(duì)歷史數(shù)據(jù)分析訓(xùn)練并預(yù)測(cè)未來(lái)走勢(shì),如基于BP神經(jīng)網(wǎng)絡(luò)模型對(duì)肺結(jié)核發(fā)病率的預(yù)測(cè)[3]等等。
近年來(lái),隨著深度學(xué)習(xí)技術(shù)發(fā)展成熟,越來(lái)越多的深度學(xué)習(xí)模型被應(yīng)用到數(shù)據(jù)分析預(yù)測(cè)的研究中。其中循環(huán)神經(jīng)網(wǎng)絡(luò)(Recurrent Neural Network,RNN)在對(duì)時(shí)間序列數(shù)據(jù)的分析中表現(xiàn)出更好的特性,基于RNN模型出現(xiàn)了很多的變
體模型,其中長(zhǎng)短期記憶(Long Short-Term Memory,LSTM)模型[4]彌補(bǔ)了RNN的梯度消失和梯度爆炸、長(zhǎng)期記憶能力不足[5]等問(wèn)題,使得循環(huán)神經(jīng)網(wǎng)絡(luò)能夠更加有效地利用長(zhǎng)距離的時(shí)間序列信息。本文通過(guò)對(duì)麻疹疾病歷史發(fā)病數(shù)據(jù)進(jìn)行分析,通過(guò)LSTM網(wǎng)絡(luò)模型對(duì)原始數(shù)據(jù)進(jìn)行訓(xùn)練擬合、分析以及測(cè)試,力求對(duì)未來(lái)各地區(qū)麻疹發(fā)病趨勢(shì)作出預(yù)測(cè),為預(yù)防和控制疫病相關(guān)措施的部署提供理論依據(jù),盡最大力度減少麻疹疾病造成的影響。
圖1 LSTM結(jié)構(gòu)圖
LSTM網(wǎng)絡(luò)是一種特殊的RNN類型,是為了解決RNN模型梯度彌散的問(wèn)題而提出的。最初的LSTM門(mén)層只有輸入門(mén)和輸出門(mén),由Gers FA等[6]加入遺忘門(mén)成為現(xiàn)在通用的LSTM結(jié)構(gòu),由Duan Y等[7]引入了“peephole connection”,讓門(mén)層也會(huì)接受細(xì)胞狀態(tài)的輸入,成為L(zhǎng)STM最流行的一個(gè)變體。傳統(tǒng)的RNN模型,在訓(xùn)練的過(guò)程中的梯度下降過(guò)程中,回傳的殘差便會(huì)指數(shù)下降,導(dǎo)致網(wǎng)絡(luò)權(quán)重更新緩慢,無(wú)法體現(xiàn)出RNN的長(zhǎng)期記憶的效果,因此LSTM通過(guò)設(shè)置一個(gè)存儲(chǔ)單元來(lái)存儲(chǔ)記憶,通過(guò)輸入輸出門(mén)來(lái)解決輸入輸出權(quán)值的矛盾問(wèn)題。
現(xiàn)在針對(duì)LSTM模型的訓(xùn)練方法主要分為實(shí)時(shí)遞歸學(xué)習(xí)算法(Real Time Recurrent Learning,RTRL)[8]和反向傳播算法(Back-Propagation Through Time,BPTT)[9],本文采用時(shí)間效率較高的按時(shí)間展開(kāi)反向誤差傳播算法來(lái)訓(xùn)練LSTM模型。反向傳播算法的大致思路如下:先將LSTM網(wǎng)絡(luò)按照時(shí)間順序展開(kāi)為一個(gè)深層的網(wǎng)絡(luò),然后反復(fù)應(yīng)用鏈?zhǔn)揭?guī)則,經(jīng)過(guò)損失函數(shù)(loss function)計(jì)算,然后通過(guò)BPTT反向傳播算法計(jì)算梯度,通過(guò)自適應(yīng)矩估計(jì)算法(adaptive moment estimation,Adam)[10]更新網(wǎng)絡(luò)權(quán)重。
圖2 模型訓(xùn)練示意圖
本文構(gòu)建的基于LSTM預(yù)測(cè)模型的整體框架流程圖如下:
圖3 模型框架圖
通過(guò)LSTM模型訓(xùn)練數(shù)據(jù),訓(xùn)練模型包括數(shù)據(jù)預(yù)處理模塊,LSTM模型模塊(包括輸入層、隱藏層、輸出層、網(wǎng)絡(luò)訓(xùn)練更新模塊),數(shù)據(jù)后處理模塊,輸出展示模塊,以及通過(guò)加載訓(xùn)練好的模型參數(shù)進(jìn)行擬合預(yù)測(cè)流程的功能模塊。數(shù)據(jù)預(yù)處理模塊對(duì)原始時(shí)間序列數(shù)據(jù)處理為L(zhǎng)STM網(wǎng)絡(luò)需要的格式,LSTM網(wǎng)絡(luò)對(duì)數(shù)據(jù)進(jìn)行訓(xùn)練,計(jì)算梯度,采用優(yōu)化算法更新權(quán)重,輸出結(jié)果經(jīng)過(guò)處理還原后送到數(shù)據(jù)結(jié)果展示平臺(tái)顯示。
本文使用人口與健康科學(xué)數(shù)據(jù)共享平臺(tái)提供的1950至2014年全國(guó)麻疹報(bào)告數(shù)據(jù)集,包括各省及全國(guó)發(fā)病人數(shù)(morbidity)、死亡人數(shù)(death)、發(fā)病率(morbidity ratio)、死亡率(death_ratio)。根據(jù)數(shù)據(jù)集可以發(fā)現(xiàn),隨著醫(yī)療條件改善和生活水平的提高,特別是實(shí)行了普種麻疹減毒活疫苗以來(lái),部分省市有連續(xù)多年死亡人數(shù)和死亡率統(tǒng)計(jì)為0的情況。因此以發(fā)病人數(shù)或發(fā)病率進(jìn)行麻疹的發(fā)病預(yù)測(cè)更有指導(dǎo)意義。
根據(jù)給定數(shù)據(jù)集,本文選取發(fā)病率作為訓(xùn)練數(shù)據(jù),這是一個(gè)關(guān)于時(shí)間序列的數(shù)據(jù),從這個(gè)時(shí)間序列中擬合原始數(shù)據(jù)并預(yù)測(cè)未來(lái)的發(fā)病率趨勢(shì)。原始數(shù)據(jù)記錄顯示大部分省份統(tǒng)計(jì)數(shù)據(jù)先后于1965年之后出現(xiàn)下降趨勢(shì),并最遲在1980-1985年間逐漸下降并穩(wěn)定到一個(gè)小幅度波動(dòng)范圍內(nèi)波動(dòng)。由于改革開(kāi)放后我國(guó)醫(yī)療水平大幅度提高,導(dǎo)致1985年前后統(tǒng)計(jì)數(shù)據(jù)波動(dòng)幅度差別很大,故本文對(duì)原始數(shù)據(jù)集訓(xùn)練了兩個(gè)模型(全體數(shù)據(jù)集的擬合模型和1985年之后數(shù)據(jù)的擬合預(yù)測(cè)模型),預(yù)測(cè)模型用于1985年之后數(shù)據(jù)擬合以及對(duì)未來(lái)趨勢(shì)的預(yù)測(cè)。
驗(yàn)證結(jié)果度量指標(biāo)采用均方根誤差(Root Mean Square Error,RMSE),均方根誤差是均方誤差(Mean Square Error,MSE)的算術(shù)平方根:
其中,observedt和predictedt分別為t時(shí)刻的觀測(cè)值和模型輸出值,N為數(shù)據(jù)點(diǎn)個(gè)數(shù)。本文通過(guò)對(duì)訓(xùn)練集和測(cè)試集分別計(jì)算RMSE值來(lái)定量地評(píng)價(jià)模型的擬合和預(yù)測(cè)精度。下文中計(jì)算的RMSE均為擬合或預(yù)測(cè)數(shù)據(jù)逆歸一化還原后的值和原始數(shù)據(jù)進(jìn)行均方根誤差計(jì)算的結(jié)果。
通過(guò)上述模型設(shè)定,對(duì)原始數(shù)據(jù)集預(yù)處理后進(jìn)行模型訓(xùn)練,用訓(xùn)練好的模型對(duì)各省數(shù)據(jù)進(jìn)行擬合和預(yù)測(cè),部分實(shí)驗(yàn)結(jié)果如下:
圖4為河北省以全體數(shù)據(jù)集訓(xùn)練的模型擬合結(jié)果和原始數(shù)據(jù)曲線的對(duì)比。藍(lán)線為實(shí)際數(shù)據(jù)曲線,黑線為模型擬合曲線。結(jié)果顯示全數(shù)據(jù)集訓(xùn)練的模型對(duì)1985年前的年份擬合
圖4 河北省數(shù)據(jù)擬合圖
圖5 為河北省以1985年之后數(shù)據(jù)集訓(xùn)練的模型擬合結(jié)果和原始數(shù)據(jù)曲線的對(duì)比。
圖5 河北省近20年數(shù)據(jù)擬合圖
為了驗(yàn)證該模型發(fā)病率預(yù)測(cè)的效果。本文選取四川省衛(wèi)生和計(jì)劃生育委員會(huì)官方發(fā)布的2015年至2017年麻疹疫情數(shù)據(jù),以1985年至2014年的數(shù)據(jù)集訓(xùn)練的模型預(yù)測(cè)結(jié)果與2015年至2017年全國(guó)和四川省的麻疹實(shí)際發(fā)病率進(jìn)行對(duì)比,如圖6所示,藍(lán)線為實(shí)際發(fā)病率曲線,黑線為模型預(yù)測(cè)曲線。結(jié)果顯示模型預(yù)測(cè)發(fā)病率數(shù)據(jù)與實(shí)際發(fā)病率數(shù)據(jù)擬合度較高。
圖6 四川省2014年至2017年實(shí)際發(fā)病率與預(yù)測(cè)發(fā)病率結(jié)果對(duì)比圖
圖7 為該模型對(duì)西南地區(qū)未來(lái)5年麻疹發(fā)病率趨勢(shì)的預(yù)測(cè),通過(guò)預(yù)測(cè)的發(fā)病率可以對(duì)麻疹疫情的預(yù)防和監(jiān)測(cè)起到一定的指導(dǎo)作用。
圖7 西南地區(qū)麻疹發(fā)病率趨勢(shì)預(yù)測(cè)圖
本文通過(guò)LSTM網(wǎng)絡(luò)構(gòu)建擬合預(yù)測(cè)模型,對(duì)麻疹疾病發(fā)病率擬合預(yù)測(cè)及參數(shù)優(yōu)化等結(jié)果實(shí)驗(yàn)測(cè)試表明,LSTM網(wǎng)絡(luò)模型對(duì)疾病預(yù)測(cè)相關(guān)的時(shí)間序列問(wèn)題具有一定的適用性。由于麻疹疾病的爆發(fā)流行受到諸多因素的影響,同時(shí)原始數(shù)據(jù)集波動(dòng)幅度比較大,統(tǒng)計(jì)結(jié)果顯示各省數(shù)據(jù)波動(dòng)有一定規(guī)律和相關(guān)性,卻又各不相同,神經(jīng)網(wǎng)絡(luò)模型的非線性變換對(duì)處理這種多相關(guān)和非線性問(wèn)題相比傳統(tǒng)統(tǒng)計(jì)學(xué)分析模型更具優(yōu)勢(shì)。但單純依靠歷史數(shù)據(jù)預(yù)測(cè)未來(lái)趨勢(shì)仍有一定的局限性?;谀壳暗墓ぷ?,后續(xù)研究可以考慮引入更多相關(guān)影響因素,同時(shí)對(duì)數(shù)據(jù)集預(yù)處理過(guò)程進(jìn)行優(yōu)化調(diào)整,對(duì)模型參數(shù)選擇可以進(jìn)行更多優(yōu)化測(cè)試。