張磊,余粟
(1.上海工程技術大學機械與汽車工程學院上海 201620;2.上海工程技術大學工程實訓中心,上海 201620)
截至2021年8月末,全球新冠肺炎確診病例為2.123 5億,累計死亡高達443萬例。國內外研究人員通過對網上發布的確證病例數據進行分析,建立模型預測疫情病例數量及趨勢,這對醫療系統調整各種防疫措施具有重要的指導作用。
目前,主流預測方法包括傳播動力學模型、傳統時間序列模型及BP神經網絡模型。傳播動力學模型包括SIR模型、SEIR模型等,該類模型依托疫情爆發早期的數據對趨勢作出預測。范如國等利用SIR模型和SEIR模型對新冠疫情進行預測,并通過模型分析不同防疫措施對疫情發展的影響,但該類模型無法根據疫情發展過程中的數據進行預測,參數設定相對固定,忽視了參數以外因素對疫情發展的影響,局限性較大。傳統時間序列模型主要包括雙指數平滑模型(Holt)、三指數平滑模型(Holt-Winter)等。林挺葵等使用Holt模型對粵西地區疫情進行預測,并針對疫情發展提出了相關防疫建議。黃曉亮等使用Holt-Winter模型對疫情期間廣東省住院量進行分析,較為準確地預測了住院人次的變化趨勢。BP神經網絡是最常見的人工智能模型,現已被廣泛應用于非線性預測領域。黃琦琦等使用該方法對新冠肺炎疫情進行時間序列預測的效果較好,但BP神經網絡易陷入局部最優,精度較差。
由于本文實驗數據來源于疫情發展一年多后的近期數據,不符合傳播動力學模型的使用條件,故使用BP神經網絡和傳統時間序列模型進行預測。然而,2021年國內疫情控制較好,且相當一部分數據為境外輸入人員,考慮到數據的可用性及時效性,選擇美國公開數據進行實驗。為了解決BP神經網絡易陷入局部最優解的問題,本文提出利用粒子群算法(Particle Swarm Optimization,PSO)優化BP神經網絡。
指數平滑法是由移動平均法改進而來的時間序列分析方法,現已廣泛應用于預測傳染性疾病。通過對歷史數據賦予不同的權值以針對性的提取數據信息,能夠充分體現近期數據對預測數據的影響。目前,指數平滑模型主要分為單指數平滑模型、雙指數平滑模型(Holt模型)和三指數平滑模型(Holt-Winter模型)。但由于單指數平滑模型和三指數平滑模型適用于季節性序列,因此本文選用雙指數平滑模型進行實驗。
BP神經網絡是一種多層前饋神經網絡,主要由輸入層、隱層和輸出層構成,如圖1所示。

Fig.1 BPneural network structure圖1 BP神經網絡結構
其中,單個隱層神經元輸出為:

輸出神經元的值為:

在使用BP神經網絡模型進行實驗前,需對數據進行歸一化處理,以減少時間損耗。計算公式如式(3):

y
為數據輸出值,x
為原始數據輸入,X
為原始數據的最小值,X
為原始數據的最大值。粒子群優化算法是應用十分廣泛的最小二乘優化算法,其核心思想是將“群體”內的“粒子”視為問題的解,每個粒子都具有各自的位置和速度,通過粒子與粒子間及粒子與群體間的信息共享,經多次迭代得到最優適應度,具體算法描述如下:
假設一個D
維空間內有N
個粒子,i
=1,2,...,N
,其中第i
個粒子的位置為X
=(xi,xi,…,xi),第i
個粒子的速度為V
=(vi,vi,…,vi),當前第i
個粒子的最優值為P
=(pi,pi,…,pi),當前群體的最優值為P
=(pi,pi,…,pi)。在迭代的過程中,通過當前適應度值確定個體最優值和群體最優值,然后根據式(4)、式(5)計算當前粒子的速度和位置:
b
、b
表示學習因子,v
、v
為[0,1]內的隨機數,ω
為慣性權重。當ω
較大時,算法全局收斂性較好;當ω
較小時,算法具有較好的局部搜索特性。如圖2所示,利用PSO算法先行計算BP神經網絡的初始權值等參數,可在一定程度上避免BP神經網絡易陷入局部最優的問題。改進后模型的訓練流程如下:
步驟1:確定BP神經網絡的輸入層、隱層和輸出層的個數。
步驟2:將BP神經網絡各層的連結參數輸入PSO算法的適應度函數中,設定BP神經網絡訓練結果的均方誤差(MSE)為算法適應度值。


步驟3:初始化粒子群個數、粒子個體的速度、位置和邊界大小。
步驟4:計算各粒子的適應度。
步驟5:計算個體和群體極值,并與當前適應度值進行對比,保留最小值。
步驟6:根據式(4)、式(5)計算粒子當前的速度和位置并更換當前值。
步驟7:轉到步驟4,直至滿足條件后停止。
步驟8:當程序達到預設迭代次數或找到最佳極值后,將權值、閥值和偏置參數賦值于BP神經網絡。
步驟9:使用優化后的BP神經網絡進行訓練,計算模型誤差。
步驟10:反向傳播誤差并獲取各層誤差信號,通過梯度下降法調整各層間參數,使誤差達到最小。
步驟11:不斷調整各層參數,當達到預設的迭代次數或滿足誤差條件后停止訓練并輸出結果。
將美國明尼蘇達州2021年7月7日至8月25日共50天的新冠肺炎累計死亡和累計確診人數作為原始數據,數據來源于USAFacts(https://usafacts.org/issues/coronavirus/)。考慮到數據由時間先后順序排列而成,通常利用已有數據進行建模以預測未來數據,具體操作如下:
假設時間序列為X,i=1,2,3,...,N
,利用前t個數據預測第t+1個數據的具體方法如表1所示。經多次實驗,當自回歸階數取4時,即用前4天的數據預測第5天的確診人數預測精度最高。
Table1 Construction method of data set表1 數據集構造方法
b
=b
=1.7,慣性權重ω
=0.6,粒子群個數為20,迭代次數為200,粒子最大速度V
為1,最小速度V
為-1,粒子閥值范圍為[-5,5]。
Fig.2 Flow of PSO-BPmodel圖2 PSO-BP模型流程
3.3.1 累計死亡人數
3種模型的預測結果如表2所示,由于人數為整數,因此對實驗預測數據進行取整操作。圖3為預測結果繪趨勢圖。

Table 2 Forecast results of cumulative deaths in Minnesota表2 明尼蘇達州累計死亡人數預測結果

Fig.3 Forecasting trend of cumulative deaths in Minnesota圖3 明尼蘇達州累計死亡人數預測趨勢
由圖3可見,3種模型的預測結果都較為理想,從趨勢圖中難以分析它們在精度上的差異。為此,根據式(7)計算模型的平均誤差百分比(MAPE)和最大誤差百分比。其中,Holt模型的MAPE和最大誤差百分比分別為0.031%和0.087%;BP模型分別為0.028%和為0.082%;PSO-BP模型分別為0.021%和0.078%。由此可見,兩種神經網絡模型的MAPE和最大誤差百分比均低于Holt模型,且PSO-BP的性能最好,MAPE和最大百分比相較于BP神經網絡分別降低了0.007%和0.004%;相較于Hlot分別降低了0.01%和0.009%。整體而言,PSO-BP模型的預測精度最高。
3.3.2 累計確診人數
同樣使用3種模型對明尼蘇達州累計確診人數進行預測,具體數據如表3所示,趨勢圖如圖4可見。

Fig.4 Estimated cumulative number of confirmed cases in Minnesota圖4 明尼蘇達州累計確診人數預測結果
由表3、圖4可知,Holt模型的平均誤差百分比(MAPE)和最大誤差百分比分別為0.082%和0.439%;BP模型分別為0.043%和為0.456%;PSO-BP模型分別為0.033%和0.165%。其中,Holt的最大百分比相較于BP模型更小但差距不大,PSO-BP的平均誤差百分比相較于BP降低了0.01%,相較于Holt降低了0.049%;絕對誤差百分比相較于BP降低了0.291%,相較于Holt降低了0.274%。整體而言,在累計確診人數的預測上,PSO-BP模型的表現依然優于另外兩種模型。
為進一步對比模型間的性能差異及評價模型的預測效果,采用了平均絕對誤差(MAE)和均方根誤差(RMSE)作為性能評價指標,如式(7)-式(9)所示:


Table3 Estimated cumulative number of confirmed cases in Minnesota表3 明尼蘇達州累計確診人數預測結果


表4為使用MAE、RMSE計算明尼蘇達州累計死亡人數和累計確診人數預測結果的偏差情況。由表4可見,在累計死亡人數預測結果中,PSO-BP的MAE和RMSE相較于BP模型分別降低了24.634%和19.648%;相較于Holt模型分別降低了34.063%和29.378%。在累計確診人數預測結果中,PSO-BP的MAE和RMSE相較于BP模型分別降低了23.648%和39.597%;相較于Holt模型分別降低了59.632%和59.012%。由此可見,PSO-BP模型的性能均為最優。為更直觀地對比性能分析結果,根據表4構建模型性能雷達圖,如圖5所示。

Table4 Minnesota performance index calculation results表4 明尼蘇達州性能指標計算結果

Fig.5 Minnesota model performance indicator radar chart圖5 明尼蘇達州模型性能指標雷達圖
為了進一步檢驗模型的精確度和適應性,將3種模型分別用于預測美國亞利桑那州和密歇根州2021年7月11日至8月25日的累計死亡和累計確診人數,趨勢圖如圖6所示,具體性能指標如表5、表6所示。
由圖6可見,PSO-BP模型對兩地的人數預測基本都符合實際發展趨勢。由表5、表6可知,在對亞利桑那州和密歇根州累計和確診人數的預測中,PSO-BP模型的3項性能指標均為最優。其中,MAPE指標相較于BP模型和Holt分別平均降低了0.012%和0.043%;MAE和RMSE相較于BP模型分別平均降低了14.696%和19.850%,相較于Holt分別平均降低了36.826%和28.046%。由此可見,PSO-BP模型的預測精度和適應性最佳。

Fig.6 Minnesota and Michigan forecast results圖6 亞利桑那州和密歇根州預測結果

Table5 Arizona performance indicator calculation results表5 亞利桑那州性能指標計算結果

Table6 Michigan performance indicator calculation results表6 密歇根州性能指標計算結果
針對傳統時間序列模型精度上的不足及傳統BP神經網絡易陷入局部最優的缺陷,利用粒子群優化BP神經網絡模型,該模型具有PSO算法的全局收斂性和神經網絡的自學習特性。實驗結果表明,PSO-BP的預測性能優于基準模型,預測精度較高、適應度較好。由于本文所用模型需要先使用PSO對BP神經網絡的初始權值和閥值進行計算尋優,再使用優化后的參數訓練神經網絡,在這個過程中會導致整體迭代次數增加,當處理體量較大的數據時模型迭代時間較長。為此,需要根據實際情況對模型進行簡化以提升運行的效率。