2019年12月,新型冠状病毒肺炎疫情(corona virus disease 2019, COVID-19)在中国湖北省武汉市爆发。新型冠状病毒传染速度极快,短时间内即造成多人感染。为控制疫情,武汉市于2020年1月23日实施封城管理,此后全国多个省市相继启动突发公共卫生事件Ⅰ级响应机制。2020年1月31日,世界卫生组织宣布COVID-19疫情构成“国际关注的突发公共卫生事件”,后于当地时间2020年3月11日宣布COVID-19疫情成为全球大流行。一时之间,疫情的发展趋势成为全国乃至世界人民共同关注的问题。通过对疫情发展趋势的有效预测可对人们提前制定应对措施提供帮助。从疫情爆发初期开始,世界范围内就有诸多学者对疫情情况进行了预测[1-3]。
SIR模型[4-5]和SEIR模型[6-7]都是常用的传染病模型,被用来对传染病传播情况进行模拟和预测。文献[8]使用SEIR模型对武汉当时的疫情规模以及武汉和全国其余地区的疫情峰值进行了预测。文献[9]考虑到人口的流动情况,对SEIR模型进行改进,使用改进后的模型对国内疫情趋势进行预测。文献[10]使用基于年龄的SEIR模型对美国的疫情感染人数和死亡人数进行了预测。传统SIR模型和SEIR模型的局限性在于模型参数都是常数,无法随着现实世界中真实情况的变化而改变。在以往的工作中,模型参数的计算通常需要人为划分时间段,使用不同时间段的数据进行分段计算,以实现动态预测。针对此问题,文献[11]基于启发式算法[12],对SEIR模型中的参数不断进行随机采样并通过均方根误差最小的约束原则,获得参数的最优解,从而对武汉的疫情拐点进行预测。文献[13]则在SIR模型的基础上,将模型与机器学习中的极限学习机[14]相结合,提出了极限IR模型,将疫情发展趋势预测模型的构建转化为对模型参数预测模型的构建,对全国疫情趋势进行了预测。
近年来随着深度学习的不断发展,其以优秀的实验性能在多个领域中脱颖而出,包括计算机视觉领域[15-17]、自然语言处理领域[18-20]和语音识别领域[21-23]等。在时序预测问题中,最常见的神经网络是循环神经网络[24-25](recurrent neural network, RNN)。RNN可学习到历史输入与当前输入的关联信息,从而进行时序预测。但当时间序列过长时,传统RNN容易出现梯度消失现象,无法处理具有长期依赖关系的问题。为解决这一问题,出现了长短期记忆网络[26-27](long short-term memory network, LSTM)。在此次疫情中,疫情的变化和发展会受到前期各项措施的影响,因此疫情趋势预测可看作具有长期依赖关系的时序预测问题。文献[11]除使用改进后的SEIR模型之外,也使用了LSTM对疫情的发展趋势进行模拟和预测。
本文将疫情趋势预测看作一个长期且动态变化的时序预测问题,受文献[11, 13]启发,借助传统SEIR模型的数学方法与人工智能方法在时序预测问题上的优越性,从SEIR模型参数入手,针对新冠病毒的传播特点,提出了基于LSTM的病毒传染率预测方法,并将其与SEIR模型结合,提出新冠肺炎疫情趋势预测模型(LSTM-SEIR network, LS-Net)。LS-Net借助LSTM优良的时序信息学习能力对病毒传染率进行实时预测。最后将实时更新的病毒传染率应用到SEIR模型中,实现对疫情发展趋势的智能动态预测。
1 基于传统SEIR模型的疫情趋势预测模型 1.1 传染病传播模型——SEIRSEIR模型是经典的传染病模型,它将人群分为4类:易感者(susceptible),健康但有可能感染病毒的人,总人数为S;潜伏者(exposed),已感染病毒但仍未出现病症的人,总人数为E;感染者(infected),已感染病毒并出现病症的确诊患者,总人数为I;移除者(removed),感染病毒后因病死亡或成功治愈的人,总人数为R。在COVID-19疫情中,SEIR模型中4类人群的转化关系如图1所示,图中,
$\left\{ \begin{aligned} &\dfrac{{{\rm{d}} S}}{{{\rm{d}} t}} = - \dfrac{{{b_1}SE}}{N} - \dfrac{{{b_2}SI}}{N} \\ &\dfrac{{{\rm{d}} E}}{{{\rm{d}} t}} = \dfrac{{{b_1}SE}}{N} + \dfrac{{{b_2}SI}}{N} - aE \\ &\dfrac{{{\rm{d}} I}}{{{\rm{d}} t}} = aE - gI \\ &\dfrac{{{\rm{d}} R}}{{{\rm{d}} t}} = gI \end{aligned} \right.$ | (1) |
式中:t为时间步长;N=S+E+I+R为人群总数。
Download:
|
|
根据文献[11],
$\left\{ \begin{array}{l} {\beta _1} = {k_1}b \\ {\beta _2} = {k_2}b \end{array} \right.$ | (2) |
式中:
$\frac{{{\rm{d}} I}}{{{\rm{d}} t}} = \frac{{\beta SI}}{N} - \gamma I \approx (\beta - \gamma )I$ | (3) |
由式(3)可得:
${{I}} ({{t}}) = {\rm{exp}}[(kb - \gamma )I]$ | (4) |
由式(4)可计算出
在传统SEIR模型中,
针对传统SEIR模型中的病毒传染率无法实现自动动态预测和没有考虑到潜伏期患者的传染情况的问题,本文基于LSTM和SEIR模型提出LS-Net。
2.1 LS-Net的网络结构与数学模型LS-Net的总体结构如图2所示,其包括2个模块:病毒传染率预测模块和疫情趋势预测模块。病毒传染率预测模块包括LSTM层、全连接层(fully connection layer,FC)和非线性变换层,实现对新冠病毒传染率
Download:
|
|
病毒传染率后期的变化与疫情前期的防控和诊治措施息息相关,因此病毒传染率的预测需要结合历史信息与当前信息共同分析得出。病毒传染率预测模块以LSTM为基础,结合病毒的传播规律对传染率进行预测。为更好地学习到时序数据间的关联信息,LS-Net使用3天的潜伏期、感染者、移除者数量作为输入。
LSTM可学习并生成包含历史信息与当前信息的数据,其包含3类门:输入门
$\left\{ \begin{aligned} & {i_t} = s({W_{ii}}{X_t} + {b_{ii}} + {W_{hi}}{h_{t - 1}} + {b_{hi}}) \\ & {f_t} = s({W_{if}}{X_t} + {b_{if}} + {W_{hf}}{h_{t - 1}} + {b_{hf}}) \\ &{{\tilde c}_t} = s({W_{i{\tilde c}}}{X_t} + {b_{i\tilde c}} + {W_{h{\tilde c}}}{h_{t - 1}} + {b_{h\tilde c}}) \\ &{o_t} = s({W_{io}}{X_t} + {b_{io}} + {W_{ho}}{h_{t - 1}} + {b_{ho}}) \\ &{c_t} = {f_t}{c_{t - 1}} + {i_t}{{\tilde c}_t} \\ &{h_t} = {o_t}\tanh ({c_t}) \end{aligned} \right.$ | (5) |
式中:
将
$\left\{ \begin{aligned} &{C_{{t}}} = \lg (1 + \exp ({W_C}{h_t})) \\ &{a_{{t}}} = \lg (1 + \exp ({W_a}{h_t})) \\ &{k_{{t}}} = \lg (1 + \exp ({W_k}{h_t})) \end{aligned} \right.$ | (6) |
式中:
随着政府和社会管控力度以及人们自身防控意识的不断增强,
$\left\{ \begin{array}{l} {\beta _{{1_{{t}}}}} = {C_t}\exp \left( - \dfrac{1}{{{a_t}}}\right) \\ {\beta _{{{\rm{2}}_t}}} = {k_t}{\beta _{1_t}} \end{array} \right.$ | (7) |
该模块由1.1节所述的SEIR模型构成。SEIR层具有参数S、
$ \left\{ \begin{aligned} & P{(S)_{t + 1}} = {S_{t }} - \dfrac{{{\beta _{{1_t}}}{S_t}{E_t}}}{N} - \dfrac{{{\beta _{{2_t}}}{S_t}{I_t}}}{N} \\ & P{(E)_{t + 1}} = {E_{t }} + \dfrac{{{\beta _{{1_t}}}{S_t}{E_t}}}{N} + \dfrac{{{\beta _{{2_t}}}{S_t}{I_t}}}{N} - \alpha {E_t} \\ & P{(I)_{t + 1}} = {I_{t }} + \alpha {E_t} - \gamma {I_t} \\ & P{(R)_{t + 1}} = {R_{t}} + \gamma {I_t} \end{aligned} \right. $ | (8) |
式中:
LS-Net训练时使用前3天的数据预测第4天的数据,并使用平均平方误差(mean square error, MSE)作为损失函数。由于现实中感染者和移除者的数据更易收集,且人们对感染者情况更关注,本文在训练时给3类数据的MSE分配了不同的权重。具体如式(9)所示:
$\left\{ \begin{array}{l} {\rm{Loss}} = 0.1{{\rm{MSE}} _E} + 0.5{{\rm{MSE}} _I} + 0.4{{\rm{MSE}} _R} \\ {{\rm{MSE}} _E} = \dfrac{1}{T}\displaystyle\sum\limits_{t = 1}^T {{{({E_t} - P{{(E)}_t})}^2}} \\ {{\rm{MSE}} _I} = \dfrac{1}{T}\displaystyle\sum\limits_{t = 1}^T {{{({I_t} - P{{(I)}_t})}^2}} \\ {{\rm{MSE}} _R} = \dfrac{1}{T}\displaystyle\sum\limits_{t = 1}^T {{{({R_t} - P{{(R)}_t})}^2}} \end{array} \right.$ | (9) |
式中:
模型训练流程如图3所示。该训练算法见算法1。
Download:
|
|
算法1 模型训练
输入 训练集样本
输出 模型预测结果
参数epoch:训练的总次数。
1) While 训练次数
2) for each
3)由式(5)、(6)、(7)计算病毒传染率
4)由式(8)计算新冠肺炎疫情趋势
5) End for
6)由式(9)计算Loss
7)根据Loss更新LSTM参数
9)End while
2.3 模型测试算法LS-Net测试时同样使用前3天的数据预测第4天的数据。但由于疫情趋势预测是对疫情在未来较长时间段内的发展趋势进行预测,而当下无法获得未来时间下的E、I、R具体数据,因此本文将模型的输出与上一组输入中的后2天数据相结合,组成新的输入数据再次输入到模型中进行计算。若对未来n天的疫情趋势进行预测,则测试算法流程如图4所示,测试算法见算法2。
Download:
|
|
算法2 模型测试
输入 测试集初始输入
输出 模型预测结果
参数d:已测试的天数。
1)While d
2)由式(5)、(6)、(7)计算病毒传染率
3)由式(8)计算新冠肺炎疫情趋势
4)
5)
6)End while
3 实验及结果为验证LS-Net的效果,本文使用Pytorch深度学习框架和Python语言搭建预测模型。Python版本为3.6。使用云南省、上海市和陕西省3个地区的疫情数据创建数据集进行实验并与传统SEIR模型进行对比。本节将对实验数据集、实验参数设置进行介绍并对实验结果进行分析。
3.1 数据收集及整理1)数据来源:2019年12月8日—2020年3月28日全国各省市卫生健康委员会公布的疑似病例、确诊病例、治愈和死亡病例(后文简称移除病例)数据。
2)数据选取:LS-Net没有考虑不同地区之间人员流动的因素,因此选取了武汉实施全面封城后的2020年1月24日—2020年3月28日的数据进行实验,以尽量减少人员流动对实验结果带来的影响。在全国的总体数据中,确诊病例和移除病例大部分来自于湖北省。而早期由于检测手段跟不上,湖北省存在大量患者不能及时得到确诊和无法对疑似病例进行排查的情况,所以早期全国总体数据与现实情况有较大差距。为此本文没有使用全国总体数据进行实验,而是从除湖北省外同时记录有疑似病例、确诊病例和移除病例的省市中挑选了云南省、上海市和陕西省3个地区的数据进行实验。
3)数据集准备:早期无法对人群的病毒感染情况进行排查,还未出现感染症状的潜伏期患者数据难以被记录,因此,本文使用现存疑似病例(已出现病毒感染临床症状但还未得到核酸检测结果的病例)数作为E,现存确诊病例数作为I(现存确诊病例数=累计确诊病例数−累计移除病例数),移除病例数作为R,各地区2019年常住人口数作为N。将第t~t+2天的数据作为输入,第t+3天的数据作为对应标签来进行整理,共得到62份数据。
4)数据集划分:将3)得到的数据按训练集规模大小的不同分别整理出4个数据集,即Set_10、Set_20、Set_30、Set_40。其中Set_10划分规则: 前10份数据作为训练集,后52份数据的标签作为测试集的标签,第11份输入数据作为测试集的初始输入数据。Set_20、Set_30、Set_40划分规则同理。
3.2 实验参数设置模型参数:根据文献[5],设
各地区人口总数:N云南省=4858.3万人[28]、N上海市=2824.14万人[29]、N陕西省=3876.21万人[30]。
LSTM的隐层数量为1,维度为22。
3.3 实验结果及分析本文在不同的数据集上分别对E、I、R进行预测。LS-Net的实验结果如图5所示,传统SEIR模型的实验结果如图6所示。LS-Net和传统SEIR模型对现存确诊人数峰值的预测结果如表1所示。
Download:
|
|
从图5和表1可看出,在Set_10的测试集上LS-Net能大致预测出I的峰值及达到峰值的时间,且曲线走势与真实情况大致相同。但由于训练集样本较少,3类人群的预测结果均高于真实数据,尤其在R的预测上误差较大。由在Set_10、Set_20、Set_30、Set_40测试集上的预测结果的纵向对比可知,随着训练集样本的增加以及疫情后期发展趋于稳定,预测结果与真实值的误差逐渐减小。图5(e)实验结果中,I后期有反弹趋势,可预测结果却趋于平稳下降,这或许与数据集中的中期至后期E均为0有关。在SEIR模型中,感染者由潜伏者转化而来,因此E对I、R和E本身的最终预测结果都会产生影响。从图5(a)、(d)、(g)可看出3个地区只在前10天左右有疑似病例,而在疑似病例清零的14天之后感染者仍有新增,说明以疑似病例数作为E与真实的潜伏期人数有较大差异。
从图6和表1可看出,传统SEIR模型的预测结果与现实情况相差巨大。这是因为,传统SEIR模型中
Download:
|
|
在以上使用包含了云南省、上海市、陕西省的感染人数由急剧增加、到达峰值至逐渐降低趋于稳定几个阶段的实验数据的实验中,LS-Net使用LSTM和式(7)对
本文结合LSTM和传统SEIR模型提出了LS-Net。实验结果表明,LS-Net可省去人工拆分时段进行动态计算的繁琐过程,使用少量的训练数据即可对疫情中现存确诊病例的峰值进行预测,在一定程度上可为人们在当前的防控措施下对疫情的发展趋势预测提供参考。为使LS-Net成为一个更通用的传染病疫情趋势预测模型,未来工作将会基于现有模型从以下几点进行改进:1)考虑各地人口的流动情况;2)提出可合理地估算潜伏期人群数量的方法。潜伏者数量由于还未出现感染症状,因此难以被统计。从已有数据中准确地估算出潜伏期人群的数量将大大提高模型预测的准确率。
[1] | IMAI N, CORI A, DORIGATTI I, et al. Transmissibility of 2019-nCoV[EB/OL].(2020−01−25)[2020−07−30] https://spiral.imperial.ac.uk:8443/handle/10044/1/77148. (0) |
[2] | READ J M, BRIDGEN J R E , CUMMINGS D A T, et al. Novel coronavirus 2019-nCoV: early estimation of epidemiological parameters and epidemic predictions[EB/OL]. (2020−01−28)[2020−07−28] https://www.medrxiv.org/CONTENT/10.1101/2020.01.23.20018549V2. (0) |
[3] | SHEN Mingwang, PENG Zhihang, XIAO Yanni, et al. Modeling the epidemic trend of the 2019 novel coronavirus outbreak in China[J]. The innovation, 2020, 1(3): 100048. DOI:10.1016/j.xinn.2020.100048 (0) |
[4] | HARKO T, LOBO F S N, MAK M K. Exact analytical solutions of the Susceptible-Infected-Recovered (SIR) epidemic model and of the SIR model with equal death and birth rates[J]. Applied mathematics and computation, 2014, 236: 184-194. DOI:10.1016/j.amc.2014.03.030 (0) |
[5] | KRÖGER M, SCHLICKEISER R. Analytical solution of the SIR-model for the temporal evolution of epidemics. Part A: time-independent reproduction factor[J]. Journal of pysics A, 2020(50): 505601. (0) |
[6] | LI M Y, MULDOWNEY J S. Global stability for the SEIR model in epidemiology[J]. Mathematical biosciences, 1995, 125(2): 155-164. DOI:10.1016/0025-5564(95)92756-5 (0) |
[7] | GODIO A, PACE F, VERGNANO A. SEIR modeling of the Italian epidemic of SARS-CoV-2 using computational swarm intelligence[J]. International journal of environmental research and public health, 2020, 17(10): 3535. DOI:10.3390/ijerph17103535 (0) |
[8] | WU J T, LEUNG K, LEUNG G M. Nowcasting and forecasting the potential domestic and international spread of the 2019-nCoV outbreak originating in Wuhan, China: a modelling study[J]. The lancet, 2020, 395(10225): 689-697. DOI:10.1016/S0140-6736(20)30260-9 (0) |
[9] | YANG Zifeng, ZENG Zhiqi, WANG Ke, et al. Modified SEIR and AI prediction of the epidemics trend of COVID-19 in China under public health interventions[J]. Journal of thoracic disease, 2020, 12(3): 165-174. DOI:10.21037/jtd.2020.02.64 (0) |
[10] | WALKER P, WHITTAKER C, WATSON O, et al. The global impact of COVID-19 and strategies for mitigation and suppression[EB/OL]. (2020−03−26)[2020−07−28] https://www.imperial.ac.uk/mrc-global-infectious-disease-analysis/covid-19/report-12-global-impact-covid-19/. (0) |
[11] |
范如国, 王奕博, 罗明, 等. 基于SEIR的新冠肺炎传播模型及拐点预测分析[J]. 电子科技大学学报, 2020, 49(3): 369-374. FAN Ruguo, WANG Yibo, LUO Ming, et al. SEIR-based COVID-19 transmission model and inflection point prediction analysis[J]. Journal of University of Electronic Science and Technology of China, 2020, 49(3): 369-374. DOI:10.12178/1001-0548.2020029 (0) |
[12] | ARMOUR G C, BUFFA E S. A heuristic algorithm and simulation approach to relative location of facilities[J]. Management science, 1963, 9(2): 294-309. DOI:10.1287/mnsc.9.2.294 (0) |
[13] |
梅文娟, 刘震, 朱静怡, 等. 新冠肺炎疫情极限IR实时预测模型[J]. 电子科技大学学报, 2020, 49(3): 362-368. MEI Wenjuan, LIU Zhen, ZHU Jingyi, et al. Extreme IR model for COVID-19 real-time forecasting[J]. Journal of University of Electronic Science and Technology of China, 2020, 49(3): 362-368. DOI:10.12178/1001-0548.2020063 (0) |
[14] | GUO Wei, XU Tao, TANG Keming. M-estimator-based online sequential extreme learning machine for predicting chaotic time series with outliers[J]. Neural computing and applications, 2017, 28(12): 4093-4110. DOI:10.1007/s00521-016-2301-0 (0) |
[15] | HE Kaiming, ZHANG Xiangyu, REN Shaoqing, et al. Deep residual learning for image recognition[C]//Proceedings of the IEEE Conference on Computer Vision and Pattern Recognition. Las Vegas, NV, USA: IEEE, 2016, 770−778. (0) |
[16] | SIMONYAN K, ZISSERMAN A. Very deep convolutional networks for large-scale image recognition[EB/OL]. (2015-04-10)[2020-07-28] http://arxiv.org/abs/1409.1556. (0) |
[17] | KRIZHEVSKY A, SUTSKEVER I, HINTON G E. ImageNet classification with deep convolutional neural networks[C]//Proceedings of the 25th International Conference on Neural Information Processing Systems. Red Hook, NY, USA: Curran Associates Inc., 2012: 1097−1105. (0) |
[18] | COLLOBERT R, WESTON J, BOTTOU L, et al. Natural language processing (almost) from scratch[J]. The journal of machine learning research, 2011, 12: 2493-2537. (0) |
[19] | TAY Y, LUU A T, HUI S C. Compare, compress and propagate: enhancing neural architectures with alignment factorization for natural language inference[C]// Proceedings of the 2018 Conference on Empirical Methods in Natural Language Processing. Brussels, Belgium, 2018: 1565−1575. (0) |
[20] | DEVLIN J, CHANG M W, LEE K, et al. BERT: Pre-training of deep bidirectional transformers for language understanding[EB/OL]. (2019−05−24)[2020−07−28] http://arxiv.org/abs/1810.04805. (0) |
[21] | HINTON G, DENG Li, YU Dong, et al. Deep neural networks for acoustic modeling in speech recognition: the shared views of four research groups[J]. IEEE signal processing magazine, 2012, 29(6): 82-97. DOI:10.1109/MSP.2012.2205597 (0) |
[22] | SAK H, SENIOR A, RAO K, et al. Fast and accurate recurrent neural network acoustic models for speech recognition[EB/OL]. (2015−07−24)[2020−07−28] http://arxiv.org/abs/1507.06947. (0) |
[23] | XIONG W, DROPPO J, HUANG X, et al. Achieving human parity in conversational speech recognition[EB/OL]. (2015−07−24)[2020−07−28] https://arxiv.org/abs/1610.05256. (0) |
[24] | LIPTON Z C. A critical review of recurrent neural networks for sequence learning[EB/OL]. (2015−10−17) [2020−07−28] http://arxiv.org/abs/1506.00019. (0) |
[25] | WANG Jianyong, ZHANG Lei, GUO Quan, et al. Recurrent neural networks with auxiliary memory units[J]. IEEE transactions on neural networks and learning systems, 2018, 29(5): 1652-1661. DOI:10.1109/TNNLS.2017.2677968 (0) |
[26] | WANG Jianyong, ZHANG Lei, CHEN Yuanyuan, et al. A new delay connection for long short-term memory networks[J]. International journal of neural systems, 2018, 28(6): 1750061. DOI:10.1142/S0129065717500617 (0) |
[27] | MALHOTRA P, VIG L, SHROFF G, et al. Long short term memory networks for anomaly detection in time series[C]// ESANN 2015 proceedings, European Symposium on Artificial Neural Networks, Computational Intelligence and Machine Learning. Bruges, Belgium, 2015:22−24. (0) |
[28] | 云南省统计局, 国家统计局云南调查总队. 云南省2019年国民经济和社会发展统计公报[EB/OL]. (2020−04−14)[2020−07−28] http://stats.yn.gov.cn/tjsj/tjgb/202004/t20200414_938595.html. (0) |
[29] | 上海市统计局. 2019年上海市国民经济和社会发展统计公报[EB/OL]. (2020−03−09)[2020−07−28] http://tjj.sh.gov.cn/tjgb/20200329/05f0f4abb2d448a69e4517f6a6448819.html. (0) |
[30] | 陕西省统计局, 国家统计局陕西调查总队. 2019年陕西省国民经济和社会发展统计公报[EB/OL]. (2020−03−20)[2020−07−28] http://www.shaanxi.gov.cn/zfxxgk/fdzdgknr/tjxx/tjgb_240/wap.html. (0) |