这是nature上的一篇文章,主要是研究了一下交通对疫情的影响,做的很好,主要体现在研究结果很有意义,方法效果好,工作量巨大。用的方法难度倒不是非常大,看了之后也都能理解。
1.文章目标和意义
文章主要是研究了出行对疫情传播的影响。具体而言,分析了:
- 出行减少和重新开放计划对疫情发展的影响;
- 少量的POI占据了绝大多数的疫情感染,并分析了其中的原因;
- 减小POI的最大占用率对疫情控制的影响;
- 重新开放不同类型的POI对相对风险的影响;
- 不同阶层和种族的疫情感染差异情况,并分析了造成该差异的原因;
主要就是进行了以上5个分析。
2.数据
这个文章的数据维度十分丰富,想搞到这个数据也是不容易的:
- SafeGraph,该数据记录了人们在CBG(我的理解这个CBG就是一个交通小区)和POI的时空信息。具体来说,包括每个POI每小时的访客数量,访问时间中位数,以周为单位和以月为单位的访客的出发CBG。该数据还包含Social Distancing Metrics信息,即每个CBG每天呆在家的人数的比例。
- US Census,每个CBG的家庭收入中位数,黑白居民比例。
- New York Times,包括各地的确诊人数和每日的cases。
3.方法论
这篇文章实际上用的方法倒不是非常难的,但是工作量真的巨大,这个巨大体现在几个方面:
- 数据量巨大,处理起来很麻烦,用普通的数据分析方法不一定可以;
- 模型虽然不难,但是里面参数很多,而且也没有现成的代码可以用,都得自己实现;
- 文章对十多个城市都做了一样的分析;
- 文章的分析内容本来就很多,看第一部分里面就可以知道了;除了第一部分提到的研究目标,文章实际上还探讨了模型对数据的拟合好坏,考不考虑mobility对SEIR的影响咋样之类的,总之内容很多很多。
这篇文章需要掌握的方法的话其实就两个:
- Iterative proportional fitting,这个方法在文章是被用来估计每小时从每个CBG到每个POI的人数的。看下面的图,作者把CBG和POI变成了一个二分网络,每个edge就是从该CBG到该POI的人数。因为利用safegraph的数据我们可以得到以周为单位和以月为单位的访客的出发CBG,即我们可以得到数据范围内的整个时间段的这个二分网络的edge,该矩阵设为Z,但是无法知道每小时的edge权重,同时我们也知道每小时每个POI的访客数量,Y的一个边际(数据中可以直接知道)以及每小时每个CBG外出到POI的人数,Y的另一个边际(这个需要估计,我的理解是算出这个小时外出的总人数,再按照比例分配即可),然后可以用IPFP估计出X,即每小时从每个CBG到每个POI的人数。这里X,Y,Z和wiki里的介绍是一致的。
- SEIR,这个就是传染病经典的发展模型了,关于这个模型就不做介绍了。关键就是介绍下如何在二分网络上嵌入这个SEIR模型。其实文章一段话就交代清楚了:To model the spread of SARS-CoV-2, we overlay a metapopulation disease transmission model on the mobility network defined in Methods M2. The transmission model structure follows prior work on epidemiological models of SARS-CoV-2, but incorporates a fine-grained mobility network into the calculations of the transmission rate. We construct separate mobility networks and models for each metropolitan statistical area.也就是说出行主要是影响了SEIR模型的传播率。下面这个图片就是SEIR模型的过程,也比较好理解,但是这几个式子无法反应出出行如何影响传播率,其实关键就在下面的第一个式子里,也就是易感者变成潜伏者,后面两个式子有一些参数要确定,但是和出行没啥关系。
下面这个图片就是易感者变成潜伏者完整的公式了, a p j a_{pj} apj是POI的面积, d p j d_{pj} dpj是在这个POI的停留时间,然后 w i j w_{ij} wij就是出行对疫情传播的影响了。
4.模型训练和拟合
这里模型的拟合使用网格搜索法实现的,对几个参数做了一个范围估计,然后用网格搜索法进行参数选取。模型主要是对确诊人数进行拟合,使得SEIR模型预测得到的确诊人数尽可能准确。