大数据战“疫”,分秒必争 2020-03-03


1月24日,除夕夜,tyc234cc 太阳成集团刘跃文副教授接到了合作单位云南省公安厅的电话:“现在疫情可能比较严重,要尽量避免外出。我们已经组织了专班开始做大数据抗疫情的工作。”听到这个消息,刘跃文坐不住了。云南是寒假旅游的热门地区,疫情传播期内全国各地人员流动量极大且结构复杂,交叉感染风险极高。如果不能有效控制云南的疫情,甚至有可能影响到全国的疫情防控。作为云南省公安厅大数据专家组组长,刘跃文觉得自己责无旁贷。和家人简单商量后,征得云南省公安厅同意,1月25日,农历新年第一天,刘跃文带着家人前往昆明,加入到省厅紧急组建的大数据战“疫”专班,着手进行疫情大数据分析和模型研发。大数据战“疫”拉开序幕,与疫情赛跑,分秒必争。

战“疫”专班开会讨论制定方案


防止疫情“输入型”传播:一秒钟计算感染风险

1月25日到28日这几天,战“疫”专班的主要工作是利用旅行大数据筛查近期去过疫源地(湖北)的人员。在筛查过程中,刘跃文发现了一些问题:有很多人在公共交通工具中和疫源地来的人,甚至和确诊病患接触过,自己根本不知道;还有些人知道自己接触过,但是觉得无所谓或者干脆不承认。这个问题在基层一线摸排和核查时,特别突出,基层只能找到武汉人、湖北人。然而,感染新冠病毒风险的因素特别多,需要综合判断,基层人员根本无法及时获取相关数据,也无法及时判断一个人的风险。综合基层反馈来的问题,刘跃文想,能不能基于旅行大数据做一个模型,输入身份证号就立刻计算出被新冠病毒感染的风险呢?

刘跃文基于他之前的一项科研成果,快速地搭建了一个新冠肺炎感染风险预测模型。这个模型基于个人的旅行数据,自动分析其是否到过疫源地、是否与疫源地人员接触、是否与已感染病患接触等多项指标,利用贝叶斯方法,计算感染新冠病毒的可能性指数,并预警高风险人员。模型做完后,刘跃文又带着专班研发了新冠肺炎感染风险预测系统。该系统可以通过扫描身份证、网页查询、批量计算等方式投入实际应用,计算一个人不到一秒钟,快速地锁定风险。

刘跃文带领团队研发系统

在模型实现的过程中,战“疫”专班遇到了人手不足的大问题。公安厅研发团队里的很多人都在老家过春节,如果临时召集,他们在返程途中有被感染的风险。于是,刘跃文决定靠着很有限的人手,每个人承担多角色、多任务,用最短的时间把任务完成。刘跃文自己除了分析数据、研发模型,还要负责编写计算过程的核心代码,每天至少工作到凌晨两三点。专班每个人都有特别急迫的感觉,想把系统赶紧做出来,服务基层一线。

基层一线干警利用系统现场核查

2月3日,新冠病毒感染风险预测系统正式推广使用,部署应用到云南省每一个检查点,很快就产生了显著的效果。基层一线有些同事反馈来消息说,已经查到了高风险人员,迅速移交隔离。看到模型能帮他们识别风险,提高工作效率,刘跃文特别开心。这个风险预测系统在后来一共使用了数百万次,识别出数百名高风险人员,在一定程度上有效地阻止了“输入型”疫情的传播。


追溯疫情“聚集型”扩散:一分钟追溯接触人员

2月6日,战“疫”专班对疫情传播的形势进行了一次深入讨论。大家一致认为,疫情传播形势正在从“输入型”传播向“聚集型”扩散转变。到2月10日各地陆续复工复产之后,公共场所人员流动将会大幅增加,新型冠状病毒聚集型传播的风险就会增大。2月6日之后的几天,媒体上频繁出现“紧急扩散”寻找公共场所中接触人员的新闻,反复地触动着刘跃文的神经。在媒体上“紧急扩散”是不可能快速准确地找回接触人员的。能不能设计一种快速准确地追溯公共场所内接触人员的系统,变“紧急扩散”到“主动找回”呢?

经过反复研讨,2月9日,刘跃文编写了一个扫码“抗疫情”追溯接触人员的系统方案,提交给抗疫指挥部。扫码“抗疫情”系统是一个基于微信小程序的轻量化系统。公共场所在其入口和出口处张贴系统生成的二维码。市民在进入和离开公共场所时,拿微信扫一下二维码,就可以登记其停留信息。一旦有人被确诊,就可以快速找回确诊病患去公共场所时可能接触的人员。刘跃文给自己定了个目标:“一分钟”追溯接触人员。

方案很快就得到了抗疫指挥部的认可,接着又是两日两夜不眠不休的研发。2月12日,扫码“抗疫情”系统在云南省全面推广上线,迅速得到了整个社会的广泛接受和支持。截至2月27日,注册的公共场所数量已经接近100万,用户数超过1500万,而扫码量达到了2亿多人次。

“云南抗疫情”微信小程序研发成功

看起来简单的“扫一扫”,背后有着艰难的大数据“攻关”。要攻克的第一关是“数据量”关。“扫一扫”面向的是全省,高峰时期每分钟有将近4万人次的扫码量。这对于整个系统的压力是极其巨大的。项目紧急上线后的第一个上午非常卡顿,就是因为扫码量远远超出了系统的承受能力。刘跃文带领专班团队与腾讯云平台的团队一起,齐心协力地逐个解决问题,终于能平稳地接收所有的扫码数据。

要攻克的第二关是“数据质量”关。理想的情况下,一个人进入场所时扫码,离开时也扫码,就能知道这个人什么时候在这个场所里。然而实际上,70%以上的进入扫码没有对应的离开扫码。在这种情况下,简单的逻辑判断就失效了,要利用大数据方法尽可能准确地推断出真实情况,“估计”出离开时间。这个估计方法既要尽量准确,又不能过于复杂,否则可能会导致计算时间过长,严重影响效率。刘跃文经过三天的努力,终于研究出来相应的大数据模型和算法。同时,利用“空间换时间”的策略,在服务器空闲时计算先验停留时长,从而解决了“一分钟找回接触人员”的问题。

要攻克的第三关是“数据安全”关。系统在互联网上运行,每一分钟都有被滥用甚至被恶意攻击的风险。上线后第4天,后台系统中就发现了木马,专班人员在发现的第一时间就更换了服务器,万幸的是没有造成任何损失。这一事件为数据安全敲响了警钟。为了保护隐私数据不外泄,在专业安全团队的帮助下,对系统做了全面的防护,保障了数据安全。

刘跃文参加云南省新闻发布会并讲解 “云南抗疫情”微信小程序使用

艰辛的付出很快就产生了效果。2月20日,云南新增1例新冠肺炎确诊病例。刘跃文将这名病患的手机号码录入系统后,仅用了30秒就筛选出204名与这名确诊病患在公共场所内可能接触过的人员名单,迅速发送给防疫指挥部,实现了“一分钟内找回接触人员”的目标。

市民出入公共场所扫码“云南抗疫情”微信小程序


助力疫情后期经济复苏:一天撰写数据分析报告

随着疫情形势逐步好转,复工复产开始稳步推进。2月24日,云南省疫情防控响应级别已经由一级调整为省级三级。除了防控疫情的工作外,提给刘跃文的新问题是,能不能用大数据评估目前复工复产的程度?防控疫情不能耽搁,复工复产同样也不能耽搁。准确的数据分析报告,将有助于复工复产相关决策的制定,有助于经济的复苏。接到任务后,刘跃文立刻组织专班成员开了一个短会,评估了一下数据情况,制定了数据分析的方案,决定在一天之内完成报告。

要评估复工复产的程度,最难的是“基准线”不确定的问题。例如,某个生产指标现在是30,要如何评估复工复产达到几成呢?如果能够知道,在没有疫情的情况下现在的生产指标是100,那么就可以说,复工复产到了三成,这显然是不可能知道的。刘跃文需要“推测”没有疫情的情况下的生产指标。这个生产指标和去年同时段的生产指标是相关的,也和疫情发生前的生产指标是相关的,但又和这两个指标不同。经过反复研讨,刘跃文最终用时间序列的方法计算出没有疫情的“猜测”值,解决了评估复工复产程度的问题。

刘跃文带领战“疫”专班成员一起讨论问题

为了快速完成分析报告,及时提交指挥部,刘跃文带领专班团队与时间赛跑,集体熬了一个通宵。大家分工合作,数据统计、绘制图表、撰写材料等各项工作多头并进,终于在早上8点前定稿。报告最终得到了指挥部的肯定,大家都露出了欣慰的笑容。

所有的工作成绩,都离不开团队的一起努力。刘跃文带领的这个大数据战“疫”专班主要有三支力量:第一支力量是tyc234cc 太阳成集团刘跃文副教授及他的博士生团队,主要是基于大数据研究社会行为,负责提供理论方法和模型;第二支力量是来自云南省公安厅科信处的民警,他们对云平台和大数据非常熟悉,非常专业;第三支力量是来自多个公司的工程师,为专班提供了强大的开发力量。刘跃文带着专班团队一起吃泡面、一起熬夜、一起战斗,从没有人叫过苦,喊过累。因为每个人心里都很清楚,大数据战“疫”,分秒必争!只有尽快战胜疫情,才能重享碧水蓝天。