竞赛选题 深度学习LSTM新冠数据预测
文章目录
- 0 前言
- 1 课题简介
- 2 预测算法
- 2.1 Logistic回归模型
- 2.2 基于动力学SEIR模型改进的SEITR模型
- 2.3 LSTM神经网络模型
- 3 预测效果
- 3.1 Logistic回归模型
- 3.2 SEITR模型
- 3.3 LSTM神经网络模型
- 4 结论
- 5 最后
0 前言
🔥 优质竞赛项目系列,今天要分享的是
🚩 基于深度学习的新冠疫情预测算法研究与实现
该项目较为新颖,适合作为竞赛课题方向,学长非常推荐!
🥇学长这里给一个题目综合评分(每项满分5分)
- 难度系数:4分
- 工作量:4分
- 创新点:3分
🧿 更多资料, 项目分享:
https://gitee.com/dancheng-senior/postgraduate
1 课题简介
新型冠状病毒肺炎(COVID-19,简称“新冠肺炎”)疫情肆虐全球多个国家,本文采用新冠肺炎的时序历史数据,尝试利用Logistic回归模型、SEITR动力学模型、LSTM神经网络等数学模型预测疫情发展趋势与关键节点,对疫情的规模进行定量分析,对疫情原始基数和有效传播率进行科学和可靠的区间估算并进行不同算法的对比分析,为疫情防控中的分析、指挥和决策提供有效依据和指南。
2 预测算法
学长采用了三种算法对于疫情时序数据进行拟合:
- Logistic回归模型、
- SEITR动力学模型、
- LSTM神经网络。
2.1 Logistic回归模型
Logistic函数或Logistic曲线是一种常见的S形函数,它是皮埃尔·弗朗索瓦·韦吕勒在1844或1845年在研究它与人口增长的关系时命名的。该模型广泛应用于生物繁殖和生长过程、人口增长过程模拟,因此也可以在一定程度上对病毒传播和确诊人数增长过程进行拟合。该函数常用的公式如下:
其中,a、b、K为皮尔模型的参数,估算这三个参数的方法有两类:一类是先估算出a和K,然后推算b值,如Fisher法;另一类是同时估算出参数a、b、K,如倒数总和法。结合疫情发生的实际场景,y为累计病例人数(例/天);t为时间(天);K、a、b为模型参数。从模型可知K为疫情规模,即累计病例最大值;a、b为控制传染速度的参数。
Logistic回归模型其算法思想来源于,当一个物种迁入到一个新生态系统中后,其数量会发生变化。假设该物种的起始数量小于环境的最大容纳量,则数量会增长。该物种在此生态系统中有天敌、食物、空间等资源也不足(非理想环境),则增长函数满足逻辑斯谛方程,图像呈S形,此方程是描述在资源有限的条件下种群增长规律的一个最佳数学模型。
其求参过程如下:根据实际统计的数据
y0,设定初始值K,计算y;用y’和t进行线性回归,得到参数a,b;根据K、a、b按上面的公式计算不同时间的预测值,并同步计算预测值与实际值之间的误差平方和;K值由原值加上步长重复计算,直到误差平方和到达最小,即最小二乘法寻优。此时的K值就是要找的最优K值。
2.2 基于动力学SEIR模型改进的SEITR模型
SEIR模型是一种动力学模型,是传染病预测最为常用的模型之一,所研究的传染病有一定的潜伏期,与病人接触过的健康人并不马上患病,而是成为病原体的携带者。与SIR模型相比,SEIR模型进一步考虑了与患者接触过的人中仅一部分具有传染性的因素,使疾病的传播周期更长。该模型将人口样本分为四类,分别为:易感者(S)、潜伏者(E)、传染者(I)和康复者(R),四类人群依次以一定比率进行转化或死亡,之间关系如下图所示:
其中四类人群具体如下:
1、S 类人群,易感者 (Susceptible),指未得病者,但缺乏免疫能力,与感染者接触后容易受到感染;
2、E 类人群,暴露者 (Exposed),指接触过感染者,但暂无能力传染给其他人的人,对潜伏期长的传染病适用;
3、I 类人群,感病者 (Infectious),指染上传染病的人,可以传播给 S 类成员,将其变为 E 类或 I 类成员;
4、R 类人群,康复者 (Recovered),指被隔离或因病愈而具有免疫力的人。如免疫期有限,R 类成员可以重新变为 S 类。
据此:可以得出SEIR模型的传染病动力学微分方程:
其中,ρ代表传染者单位时间接触易感者数量;β代表每名传染者与易感者接触传染病毒概率;μ代表单位时间死亡几率;ε代表单位时间潜伏者转变为传染者的几率;γ代表单位时间传染者痊愈的几率。
SEITR是基于SEIR模型改进的模型,在原有模型的基础上增加了修正的参数:
“T”:已被感染且正处于接受治疗时期的人群,主要特征表现为已被感染,已过潜伏期,但不会进行传染,且正在被治疗。
同时也将I人群严格定义为被感染,已过潜伏期但未被医院收治无法接受治疗的人群。
δ,表示I变为T的速率,主要受医院接诊速率及收治能力影响,也受发病后及时就医的时间影响。本文采用SEITR模型进行分析;
2.3 LSTM神经网络模型
长短期记忆人工神经网络(Long-Short Term Memory,
LSTM)是一种时间递归神经网络(RNN),由于独特的设计结构,LSTM适合于处理和预测时间序列中间隔和延迟非常长的重要事件。LSTM的拓扑图:
其公式如下:
3 预测效果
3.1 Logistic回归模型
定义logistic回归函数:def logistic_increase_function(t,K,P0,r):t0=11#r 0.05/0.55/0.65r = 0.45# t:time t0:initial time P0:initial_value K:capacity r:increase_rateexp_value=np.exp(r*(t-t0))return (K*exp_value*P0)/(K+(exp_value-1)*P0)
采用国内1月11日到1月27日的累计确诊病例数据作为原始数据,采用最小二乘法拟合逻辑斯蒂曲线,最后经过对逻辑斯蒂模型中R值(增长速率,到达K值的速度)的拟合调整,发现在0.45附近得到的曲线比较贴合我国1月至2月疫情实际情况。
预测参数:
K:capacity P0:initial_value r:increase_rate t:time[4.63653383e+04 3.69197450e+00 1.00000000e+00]
拟合图像:
将拟合结果进行推广预测,得到2月9日的预测值在4万左右,与实际情况十分贴近,也证明了模型的一定可靠性;将本模型推广,进行全球范围内典型新冠肺炎爆发国家的疫情拟合与未来疫情预测,同时通过R值的大小,可以反应出该国疫情应对的有效程度。
对美国的当前确诊数据进行拟合:设置t0 = 11,r = 0.05
预测参数:
K:capacity P0:initial_value r:increase_rate t:time
[2.81881286e+06 7.54187927e+03 1.00000000e+00]
预测结果图像:
对德国的当前确诊数据进行拟合:设置t0 = 11,r = 0.094
预测参数:
K:capacity P0:initial_value r:increase_rate t:time
[1.80914161e+05 1.64581650e+02 1.00000000e+00]
预测结果图像:
3.2 SEITR模型
以下雪学长使用SEITR模型对美国疫情基本得到控制的时间进行预测:
定义SEIR函数:
def funcSEIR(inivalue,_):Y = np.zeros(5)X = inivalueY[0] = - (beta * X[0] *( X[2]+X[1])) / N # 易感个体变化Y[1] = (beta * X[0] *( X[2]+X[1])) / N - X[1] / Te # 潜伏个体变化Y[2] = X[1] / Te - δ * X[2] # 感染未住院Y[3] = gamma * X[4] # 治愈个体变化Y[4] = δ* X[2] - gamma* X[4] #治疗中个体变化
return Y
根据当前数值预估,可设置初始参数如下:
- N =330000000 # N为人群总数(美国人口大致为3.3亿)
- beta = 0.19 # β为传染率系数(美国实际应该略高)
- gamma = 0.15 # gamma为恢复率系数
- δ = 0.3 #δ为受到治疗系数(收治率)
- Te = 14 # Te为疾病潜伏期
- I_0 = 1 # I_0为感染未住院的初始人数
- E_0 = 0 # E_0为潜伏者的初始人数
- R_0 = 0 # R_0为治愈者的初始人数
- T_0 = 0 #T_0为治疗中的初始人数
- S_0 = N - I_0 - E_0 - R_0 - T_0 # S_0为易感者的初始人数
- T = 250 # T为传播时间
拟合结果:
本次预测得到的结果是今年秋季美国的疫情能够基本得到控制。
3.3 LSTM神经网络模型
这里采用了一个简单的LSTM模型,使用pytorch进行训练,对于世界疫情中确诊数据进行预测:model = Sequential()
model.add(LSTM(200, activation='relu', input_shape=(n_input, n_features)))
model.add(Dropout(0.15))
model.add(Dense(1))
model.compile(optimizer='adam', loss='mse')
model.fit_generator(generator_conf,epochs=150)
对后一日的结果进行预测并绘图:
4 结论
总体来说,三种模型都能对新冠肺炎的时序数据作出一定的拟合,Logistic模型对于疫情控制措施没有较大改变的区域,或者是疫情已经初步得到控制的区域拟合还是效果相对较好的,但对于改变了疫情控制措施的地区来说还是过于粗糙,会造成较大的偏移;
LSTM在短期拟合数据较好,长期来看会有较大的偏移产生;
和其他流行病传染模型相比,SEIR
模型所研究的传染病具有一定的潜伏期,即与感染者接触过的易染者并不马上患病,而是成为病原体的携带者,本身具有一定的传染概率,该传播模式和2019-nCOV
更为吻合。
另外,我们对模型的假设条件是,美国的0号病人出现在今年1月11日,但是目前的报告陆续显示早在2019年美国就有社区性传播,因此模型对于此类具有较大不确定性地区的的可靠性大大下降。由于具体的时间目前国际上无法追溯,所以进一步的研究很难继续进行。
在SEIR模型中,还有以下几点需要注意:
1)传染率系数与人与人之间的社交距离和社交频率息息相关,美国在疫情早期未及时向民众宣传保持社交距离和戴口罩、减少出行的建议,导致传染率系数会比参数设置的更高;
2)治疗系数与当地医疗水平、卫生设施数量、医疗物资等息息相关,疫情中期各州的医疗设备全面告急,医护人员感染率上升,同时中产阶级及以下家庭因为无法支付高昂医疗费选择在家隔离,错过最佳治疗期,使得治疗系数要低于已经有雷神山火神山的武汉对应时期的治疗系数;
另外,SEIR模型在尝试同时拟合现有病例(正在接受治疗人群)和治愈人数曲线时,发现无法做到相对同时拟合的比较贴合实际的结果。参数设置对拟合结果的影响非常大,而模型参数的选择需要结合美国实际疫情情况才能推算,目前使用的计算手段过于粗糙。
参考资料
[1] 蔡洁等,基于SEIR模型对武汉市新型冠状病毒肺炎疫情发展趋势预测,山东医药
[2] 金启轩,中国新冠肺炎疫情预测建模与理性评估, 统计与决策
[3] 应用数学:群体免疫与SEIR模型,http://www.dataguru.cn/article-15472-1.html
5 最后
🧿 更多资料, 项目分享:
https://gitee.com/dancheng-senior/postgraduate
相关文章:
竞赛选题 深度学习LSTM新冠数据预测
文章目录 0 前言1 课题简介2 预测算法2.1 Logistic回归模型2.2 基于动力学SEIR模型改进的SEITR模型2.3 LSTM神经网络模型 3 预测效果3.1 Logistic回归模型3.2 SEITR模型3.3 LSTM神经网络模型 4 结论5 最后 0 前言 🔥 优质竞赛项目系列,今天要分享的是 …...
机械设计师应该在工作中培养哪些良好习惯?
图纸规范 1、一定要按照制图标准设计图纸!图纸上任何一条直线(无论是点划线、粗实线、细实线等等)、数值、公差、图标等,都必须有理有据,不能想当然。图纸是产品生产的基础,无论是生产、加工、装配&#x…...
小程序新增功能页面
需求背景: 小程序主页面有个报名板块,我打算替换主页面报名板块菜单,迁移到我的页面里面, 替换成资讯栏目,我喜欢分享最新技术,开源课题,IT资讯,本想做成论坛的效果,由于时间问题,先替换添加板块 替换后效果: 模块功能: 添加、修改、删除、查看 文件目录:// 添…...
LeetCode每日一题——2652. Sum Multiples
文章目录 一、题目二、题解 一、题目 Given a positive integer n, find the sum of all integers in the range [1, n] inclusive that are divisible by 3, 5, or 7. Return an integer denoting the sum of all numbers in the given range satisfying the constraint. E…...
Python问答题(更新中)
1. 列表(list)和元组(tuple)有什么区别? 列表是可变的,创建后可以对其进行修改;元组是不可变的,元组一旦创建,就不能对其进行更改。列表表示的是顺序。它们是有序序列&a…...
服务器中了locked勒索病毒怎么办,勒索病毒解密,数据恢复
最近一段时间内,相信很多使用金蝶或用友的办公软件的企业,有很多都经历了locked勒索病毒的攻击,导致企业服务器被加密无法正常使用,严重影响了企业的正常工作。通过云天数据恢复中心的解密恢复发现,在今年locked勒索病…...
游游的字母串 (环形数组两点之间的位置)
题目链接:登录—专业IT笔试面试备考平台_牛客网 题目: 样例: 输入 yab 输出 3 思路: 暴力枚举,全部变成对应的26个字母字符需要的操作步数,取最少的一个操作步数, 这里的操作步数࿰…...
Flink的ResourceManager详解(一)
ResourceManager 总结 一、概述 1、ResourceManager 管理 Flink 集群中的计算资源,计算资源主要来自 TaskManager 组件。 2、如果集群采用 Native【本地模式】部署,则 ResourceManager 会动态地向集群资源管理器申请 Container 并启动TaskManager&…...
Tornado 可以使用 nginx 提供负载均衡
Tornado和nginx都是网络服务器的重要组成部分,但它们在职能和使用场景上存在显著的差异。 Tornado可以独立运行,而不需要依赖nginx等其他Web服务器。这是因为Tornado本身就是一个完整的Web服务器,可以独立处理HTTP请求并返回响应数据。 ngi…...
Golang 面向对象编程 多态
基本介绍 变量(实例)具有多种形态。面向对象的第三大特征,在Go语言,多态特征是通过接口实现的(接口能够体现多态的特征)。可以按照统一的接口来调用不同的实现。这时接口变量就呈现不同的形态。 在前面的Usb接口案例,u…...
WLAN 无线案例(华为AC控制器配置模板)
实验说明: 无线用户VLAN 30 192.168.30.0/24 AP和AC用VLAN 20 192.168.20.0/24 有线网段 VLAN 10 192.168.10.0/24 步骤一:全网互通 sw1: sysname sw1 # vlan batch 10 20 30 # dhcp enable # ip pool 20 gateway-list 192.168.20.1…...
精美的早安问候语,暖心祝福,开心每一天
1、 美好的祝福,成了清晨的主题。相互问候,是一天的开始。让我们伴着不老的岁月,永远开心快乐。早晨好! 2、 心宽似海,百福皆来,世事看淡,内心安然。随缘即福,随遇而安࿰…...
嵌入式养成计划-41----C++ auto--lambda表达式--C++中的数据类型转换--C++标准模板库(STL)--list--C++文件操作
九十九、auto 99.1 概念 C11引入了自动类型推导,和Python不一样,C中的自动类型推导,需要auto关键字来引导比如 :auto a 1.2; 会被编译器自动识别为 a 为 double 类型 99.2 作用 auto修饰变量,可以自动推导变量的数…...
全局事件总线
全局事件总线 功能:可以解决所有组件之间通信传数据的问题原理:通过一个共享对象,将所有组件全部绑定到对象上,即可通过这个对象实现组件与组件之间的传递数据,而这个共享对象叫做全局事件总线。 如何分清楚谁是发送方…...
通讯网关软件026——利用CommGate X2ORACLE-U实现OPC UA数据转入ORACLE
本文介绍利用CommGate X2ORACLE-U实将OPC UA数据源中的数据转入到ORACLE数据库。CommGate X2ORACLE-U是宁波科安网信开发的网关软件,软件可以登录到网信智汇(http://wangxinzhihui.com)下载。 【案例】如下图所示,将OPC UA数据源的数据写入到ORACLE数据…...
RAII与智能指针
RAII与智能指针 1.RAII1.1RAII理解1.2RAII的原理1.2.1简单的例子说明局部对象的自动销毁的特性 1.2.2 RAII 过程 2.智能指针2.1 auto_ptr2.1.1auto_ptr的使用构造函数与析构函数拷贝构造函数与赋值提领操作auto ptr其它函数 2.1.2autoptr使用的注意事项 2.2 unique_ptr2.2.1uni…...
易云维智慧工业云平台助力广西国企培育数字产业化平台,打造数字化产业生态
2022年6月6日,广西壮族自治区人民政府国有资产监督管理委员会出台了《国有企业数字化转型工作实施意见》,明确了总体要求、主要目标、重点推进国有企业数字化转型的任务和保障措施。 《意见》预计,到2025年底,广西基本实现自治区级…...
【密码学】第三章、分组密码
DES、IDEA、AES、SM4 1、分组密码定义(按照五个组成部分答) 密钥空间:属于对称加密算法kekd明密文空间:将明文划分为m比特的组,每一块依次进行加密加解密算法:由key决定一个明文到密文的可逆映射 2、发展…...
宁夏企业过等保选哪家测评机构好?选哪家堡垒机好?
最近不少宁夏小伙伴在问,宁夏企业过等保选哪家测评机构好?选哪家堡垒机好?今天我们小编就给大家来简单说说哈! 宁夏企业过等保选哪家测评机构好? 目前宁夏正规具有资质的等保测评机构只有3家,分别为中电信…...
Vue绑定style和class 对象写法
适用于:要绑定多个样式,个数确定,名字也确定,但不确定用不用。 绑定 class 样式【对象写法】: .box{width: 100px;height: 100px; } .aqua{background-color: aqua; } .border{border: 20px solid red; } .radius{bor…...
使用vue-sign插件
Vue-sign是一个基于Vue.js和Canvas的签名组件,可以轻松地在Vue应用程序中实现签名板或手写签名功能。使用它可以使用户在前端网页上直接进行手写签名,实现更好的用户交互和业务需求。 使用Vue-sign可以提供以下好处: 通过Vue.js框架进行开发…...
python究竟可以用来做些什么
这里就不撰述python的一些像什么“高级语言”之类的比较常规的介绍了,还是老样子,说说一些比较常用的东西吧。 python是什么 python,一款可编程的开源软件,很多第三方库、框架也是开源的,比如强大的anaconda、sklear…...
Segment Anything(论文解析)
Segment Anything 摘要1.介绍2 SAM任务SAM模型 摘要 我们介绍了“Segment Anything” (SA) 项目:这是一个新的任务、模型和数据集对于图像分割。使用我们高效的模型进行数据收集,我们构建了迄今为止最大的分割数据集(远远超过其他数据集&…...
@ConditionalOnProperty 用法
文章目录 前言一、使用场景二、使用步骤1.错误示例2.ConditionalOnProperty的解决方案 总结 前言 ConditionalOnProperty 是Spring Boot中的条件注解,它的核心功能是通过属性名以及属性值来实现的,常被用于判断某个属性是否存在,然后决定某个…...
如何选择超声波清洗机、超声波清洗机排行榜
眼镜的日常清洗生活中很多人都会把它给忘记!长时间下来眼镜支架就会变成黄色的,非常的难洗掉,从而又浪费了一个眼镜。一副好的眼镜也不便宜的,把换眼镜的钱省下来入一款超声波清洗机,可以大大的减少金钱的支持…...
大家这么喜欢这件羽绒服的吗?眼光太好啦
简单干净散发着朝气,温暖的气息由内而外 90白鸭绒,高密度充绒量和蓬松度 三防工艺,立领连帽设计 下摆抽绳,帽子上的魔术贴设计 无一不将保暖落实在实处...
pytorch 入门(二)
本文为🔗小白入门Pytorch内部限免文章 🍨 本文为🔗小白入门Pytorch中的学习记录博客🍦 参考文章:【小白入门Pytorch】教案二🍖 原作者:K同学啊 目录 一、神经网络的组成部分1. 神经元2. 神经网络…...
2023年国赛-大数据应用开发(师生同赛)_赛项规程样题解析
2023年国赛-大数据应用开发(师生同赛)_赛项规程样题解析-任务B:离线数据处理_子任务一:数据抽取2023年国赛-大数据应用开发(师生同赛)_赛项规程样题解析-任务B:离线数据处理_子任务二:数据清洗2023年国赛-大数据应用开发(师生同赛…...
MNE系列教程1——MNE的安装与基本绘图
一、MNE包简介 MNE-Python是一个强大的Python库,专门用于脑电图(EEG)和磁共振成像(MRI)数据的分析和可视化。它提供了广泛的工具,使研究人员能够高效地处理神经科学数据。 MNE-Python支持许多数据格式,包括标准的EEG和MEG文件格式,以及不同类型的MRI数据。它可以用于…...
黑马JVM总结(三十六)
(1)CAS-概述 cas是配合volatile使用的技术 ,对共享变量的安全性要使用synachonized加锁,但是CAS不加锁,它是使用where(true)的死循环,里面compareAndSwap尝试把结果赋值给共享变量&…...
高性能网站开发/今日最新新闻
所有使用 /proc 的模块应当包含 <linux/proc_fs.h> 来定义正确的函数. 要创建一个只读 /proc 文件, 你的驱动必须实现一个函数来在文件被读时产生数据. 当 某个进程读文件时(使用 read 系统调用), 这个请求通过这个函数到达你的模块. 我们先 看看这个函数并在本章后面讨论…...
做电商网站/网络营销企业培训
在jar上设置/右键properties/Javadoc Location/Struts-2.3.12/docs下面找到对应的文档 转载于:https://www.cnblogs.com/SpringSmallGrass/archive/2013/04/05/3001715.html...
什么网站做微信公众账号/网络营销课程个人总结3000字
原因:音频编码原来为AMR,ios那边貌似不支持这种音频编码 VideoAbsActivity.java 加了 mMediaRecorder.setOutputFormat(MediaRecorder.OutputFormat.DEFAULT);mMediaRecorder.setAudioEncoder(MediaRecorder.AudioEncoder.AAC); 将音频录制格式从默认…...
b2c电子商务是指什么/做好的网站怎么优化
7-21 求特殊方程的正整数解 (15分) 本题要求对任意给定的正整数N,求方程XYN的全部正整数解。 输入格式: 输入在一行中给出正整数N(≤10000)。 输出格式: 输出方程XYN的全部正整数解,其中X≤Y。每组解…...
如何做seo搜索引擎优化/泰州seo推广
绿豆(cnitpm.com) 11:03:20小李发现其计算机无法连接网络,而办公室其它计算机网络访问正常,为了诊断故障,小李在其计算机操作系统中执行了若干命令,得到的结果如下表所示,根据命令执行结果,小李首先应( )。…...
一起做网店 网站打不开/网站注册搜索引擎的目的是
这个是按照event时间的个数收集的; 嗯,按照回滚的时间1S转载于:https://www.cnblogs.com/hzchh/p/8109980.html...