基于BP神经网络的新冠肺炎疫情病例预测模型

作者: 巴艳坤 郭松林

基于BP神经网络的新冠肺炎疫情病例预测模型0

摘要:自2019年12月以来,新冠肺炎对人们的生活造成了巨大的影响,因此对于每日的新冠肺炎疫情病例的预测对生产生活具有重要意义。基于此,提出了基于麻雀搜索算法优化BP神经网络的模型(SSABP) 对每日的新冠肺炎疫情病例进行预测,并与传统BP神经网络预测模型(BP) 和灰狼算法优化BP神经网络的预测模型(GWOBP) 进行比较。研究结果表明,SSABP预测模型相较于BP和GWOBP预测模型而言,收敛速度更快,精度更高。SSABP预测模型的平均误差为:0.002,BP和GWOBP预测模型的平均误差分别为:0.032和0.025。综上所述,SSA算法优化BP神经网络预测每日新冠肺炎疫情病例的模型是完全可行的,且预测值与实际值能够较好相符。

关键词:新冠肺炎;BP神经网络;SSABP;GWOBP

中图分类号:TP18     文献标识码:A

文章编号:1009-3044(2022)20-0078-03

1 引言

截止到2021年,全球已经有23414万人被确诊为新冠肺炎,其中约有478万病例死亡,220多个国家和地区受到巨大影响。由于新型冠状病毒能通过多种方式进行传播,如间接接触、飞沫、气溶胶等,因此新型冠状病毒传播速度非常快。该病症的临床表现有多种形式,主要有发热、呼吸困难、浑身酸软无力等,严重时可能会导致死亡。文献[1-2]已经说明为了保障疫情的防控工作合理进行和有效调度,流行疾病的预测工作格外重要。文献[3]表明国内外众多学者已经做了很多工作,为了新冠肺炎疫情的发展趋势进行预测。文献[4]建立了非线性回归点模型,对累计COVID-19疫情进行预测,并给了出参数估计方法;文献[5]提出对于噪声进行经验模态分解可以对日新增确诊人数进行有效预测。文献[6]探讨了差分自回归移动平均模型(ARIMA) 用于巴基斯坦新冠肺炎疫情发展趋势的预测效果,为新冠肺炎疫情预测提供实践经验。研究表明新冠肺炎疫情的发展与时间变化存在一定的相关性,因此新冠肺炎日累计确诊病例数是反映疫情变化发展的重要指标。基于此,本文建立了基于SSA算法优化BP神经网络模型,对2021年7月2日至9月30日挪威新冠肺炎日累计确诊病例数进行训练和测试,为进一步掌握新冠肺炎疫情的发展规律和为全球疫情防控提供帮助。

2 模型建立

本文分别把SSA算法和GWO算法与BP神经网络进行了融合,其中SSA算法主要是对发现者、跟随者和警戒者的位置更新进行迭代,GWO算法则是通过狼群的位置更新进行迭代。

2.1 SSA算法

麻雀搜索算法主要源于对麻雀觅食过程和躲避其他捕食者攻击行为的启发,麻雀在觅食期间,会将整个群体分配为发现者和跟随者,发现者在种群中的作用最大,不仅需要寻找食物,还要为整个群体寻找觅食区域并提供方向;而跟随者则需要跟随发现者的飞行轨迹进行觅食行为。除此之外,当群体中的麻雀意识到危险时,还会随机分配警戒者,做出反捕食行为。

2.1.1 发现者位置原始更新公式

[xt+1i,d=xti,d⋅exp(-iα⋅itermax),R2<STxti,d+Q,R2≥ST] (1)

式(1) 中,[xt+1i,d]为种群中第t代第i个个体的第d维位置,[α]为(0,1]中的均匀随机数,Q为一个标准正态分布随机数。[R2]为[0,1]中的均匀随机数,[ST]为警戒阈值,取值范围为[0.5,1.0]。当[R2<ST]时,说明该觅食区域周围没有发现危险,发现者可以进行大规模的搜索操作;当[R2≥ST]时,表明觅食区域附近可能会有捕食者威胁到麻雀群体,此时群体中所有个体必须马上飞到安全的地方进行觅食行为。

2.1.2 跟随者位置原始更新公式

[xt+1i,d=Q⋅exp(xwti,d-xti,dα⋅itermax),i>n2xbti,d+1Dd=1Drand-1,1⋅xbti,d-xti,d,i≤n2]    (2)

式(2) 中,[xwti,d]、[xbti,d]分别为当前群体中个体所占据的最优和最差位置。当i>n/2时,说明第i个个体适应度值较低,没有收获到食物,依然处于饥饿的状态下,必须飞往另一个位置进行觅食。当i<n/2时,麻雀会飞往附近的最优位置。

2.1.3 警戒者位置更新公式

[xt+1i,d=xbti,d⋅β⋅(xti,d-xbti,d),fi>fgxti,d+k⋅xti,d-xwti,dfi-fw+ε,fi=fg] (3)

式(3) 中,[β]为符合标准正态分布的随机数,K为[1,1]的均匀随机数,为一个较小的数防止分母唯一。其中[fw]为所有群体中最差的适应度值,[fi]为任意第i只麻雀的适应度值。当[fi>f]时,说明当前的麻雀正位于整个群体的边缘,极有可能会遭到其他捕食者的捕猎行为。[fi=fg]时,说明群体中间的个体感受到了危险,必须靠近附近的其他麻雀来减少自己被捕食者攻击的风险。

2.2 GWO算法

灰狼是一种群居的犬科动物,在其群体内部存在着非常严格的等级关系。在狼群处于支配地位的狼记为[α]狼,其对于整个算法来说被认为是最优解。[α]狼要领到整个狼群寻求生存。[β]狼是次优解,必须听从于[α]狼,并帮助[α]狼对于群体的各种活动进行管理,在[α]狼去世后,[β]狼会成为狼的最佳继承者,[β]狼可以支配除[α]狼外的其他所有层级上的狼。[δ]狼则可以支配除[α]狼和[β]狼之外的所有狼。[ω]狼,由于其处于群体等级的最底层,因此必须服从其他等级狼群的领导。

2.2.1 包围行为

灰狼捜索猎物时会逐渐地接近猎物并包围它,该行为的数学模型如下:

[D=C⋅XP(t)-X(t)]          (4)

[X(t+1)=Xp(t)-A⋅D]           (5)

[A=2α⋅r1-α]           (6)

[C=2r2]           (7)

式(4) 至(7) 中,t为当前迭代次数,A和C一样都是协同系数;[Xp]表示猎物的位置向量;D为距离;在不断地迭代过程中,[α]会从2慢慢减小至0;[r1]和[r2]是[0,1]中的随机向量。

2.2.2 捕猎行为

狼群将猎物包围后,有狼进行指挥,狼和狼协助,开展捕猎行为,捕猎的数学模型如下:

[Dα=C1⋅Xα(t)-X(t)]        (8)

[Dβ=C2⋅Xβ(t)-X(t)]        (9)

[Dδ=C3⋅Xδ(t)-X(t)]       (10)

[X1(t+1)=Xα(t)-A1⋅Dα]       (11)

[X2(t+1)=Xβ(t)-A2⋅Dβ]       (12)

[X3(t+1)=Xδ(t)-A3⋅Dδ]        (13)

[Xt+1=X1(t+1)+X2(t+1)+X3(t+1)3]   (14)

式(8) 至(14) 中,[Xα]、[Xβ]、[Xδ]分别表示当前种群中[α]狼、[β]狼、[δ]狼的位置向量;X表示灰狼的位置向量;[Dα]、[Dβ]、[Dδ]分别表示当前候选灰狼与最优三条狼之间的距离。

2.3 BP神经网络结构参数的设置

本文中,将神经网络结构设置为3层。选取预测日前三天的新冠肺炎日累计确诊病例数当作输入变量。为了提高预测模型的收敛速度,并尽可能减小误差,可以相应地做一些工作来对数据进行处理。文献[7]采用了最大最小化法将数据处理在[0,1]范围之内,如式(15) 所示:

[X'=X-XminXmax-Xmin]            (15)

式中(15) ,X是将要处理的数据量,[Xmin]是要处理数据中的最小值,[Xmax]将要处理的数据中的最小值,[X']为对数据处理完之后得到的数据。并将预测当天的日累计确诊病例作为输出量。

在神经网络的预测过程中,隐含层神经元个数过多会导致过拟合,个数过少会导致精度太差,因此要谨慎选择隐含层神经元个数,这关乎整个预测模型的精度。文献[8]表明试凑法对于选取隐含层神经元个数来说,是比较合理的。本文根据网络训练时不同隐含层神经元造成的误差结果,选取误差最小时对应的隐含层神经元个数,建立BP神经网络模型,公式如(16) 所示。

[l=m+n+a]        (16)

式(16) 中,l为隐含层神经元个数,m为输入层神经元个数,n为输出层神经元个数,[α]是调整常数,取值范围为[1,10]之间的整数。通过试凑法[9]可知,隐含层的神经元个数应该是在3至12之间,实验结果表明隐含层节点数为9时,预测模型的误差结果最小。因此我们可以选取3-9-1作为本文的神经网络结构,此时预测结果最好。训练目标为0.00001,学习率为0.1,最大训练次数为1000。其适应度函数为P:

[P=1Mi=1Nj=1CSdi,j-Si,j2]         (17)

式(17) 中,C是输出层节点数,M为总样本数,[Si,j]代表网络输出值,[Sdi,j]是期望值。

3 应用案例

本文收集了世界权威机构约翰斯霍普金斯大学发布的全球疫情统计数据,选取了挪威自2021年7月5日起到2021年9月30日为止的共85组样本数据,其中将训练样本选取为统计的前75组数据,则将测试组选为后10组数据,数据统计如图2所示。

数据收集完毕后,将分别得到的10组测试样本的预测值与实际值做对比,得到的结果如图3和图4所示。

由图3可以看出SSABP预测模型的预测值更符合实际值。且其平均误差仅为0.002,而GWOBP预测模型的平均误差为0.025,BP神经网络的预测误差则为0.032。因此SSA算法优化的神经网络预测模型是切实可行的。

由图4可以看出,SSABP预测模型收敛效果更好,在经过同样次数的训练下,SSABP误差更小。

3 结论

SSABP预测模型收敛速度更快,全局搜索能力更强,能更快地确定全局最优点,且SSA算法不仅能使神经网络的收敛速度更快,还能提高神经网络的训练精度。因此采用SSA算法优化BP神经网络对新冠肺炎疫情病例进行预测,预测值和实际值能较好相符。

参考文献:

[1] 余艳妮,聂绍发,廖青,等.传染病预测及模型选择研究进展[J].公共卫生与预防医学,2018,29(5):89-92.

[2] Ahmad A,Garhwal S,Ray S K,et al.The number of confirmed cases of covid-19 by using machine learning:methods and challenges[J].Archives of Computational Methods in Engineering:State of the Art Reviews,2021,28(4):2645-2653.

[3] 黄丽红,魏永越,沈思鹏,等.常见新型冠状病毒肺炎疫情预测方法及其评价[J].中国卫生统计,2020,37(3):322-326.

[4] 崔恒建,胡涛.新型冠状病毒肺炎疫情预测预报的非线性回归方法[J].中国科学:数学,2021,51(8):1267-1278.

[5] 李少亭,王雪瑞.XGBoost模型在新冠疫情预测中的研究应用[J].小型微型计算机系统,2021,42(12):2465-2472.

[6] 温亮,黄清臻,王志刚,等.运用ARIMA模型预测巴基斯坦新型冠状病毒肺炎疫情发展趋势的结果分析[J].解放军预防医学杂志,2020,38(8):96-99,102.

[7] 丁守銮,王洁贞,胡平.基于动态学习比率BP神经网络的时间序列预测方法[J].中国卫生统计,2002,19(4):194-198.

[8] 黄丽红,魏永越,沈思鹏,等.常见新型冠状病毒肺炎疫情预测方法及其评价[J].中国卫生统计,2020,37(3):322-326.

[9] 雷波,漆泰岳,王睿,等.长大山岭隧道涌水量的BP神经网络时间序列预测模型[J].铁道建筑,2014,54(6):82-84.

【通联编辑:梁书】

经典小说推荐

杂志订阅