Qi-Jun Hong
Projection made on Jan 31, 2021
This is a personal project and these are my own views.
Covid19 Encounter Model by Qi-Jun Hong is licensed under a Creative Commons Attribution 4.0 International License.
Based on a work at https://github.com/qjhong/covid19.
Projection summary
- My model projects flat curves of cases and deaths over the next few weeks in the US.
- Fatality will peak in early February. The peak is at 3000-3500 deaths/day, with single day max above 4000.
States at risk:
See figure below “Daily New Cases in 50 US States”. States at risk are colored in red.
Next 10 days
Top 5 States by Daily New Cases
- Next Day Feb 1: CA(18180), TX(17351), NY(12212), FL(10117), AZ(5955)
- In 5 Days Feb 5: TX(17379), CA(16326), NY(11930), FL(9744), AZ(5877)
- In 10 Days Feb 10: TX(17361), TX(14611), NY(11299), FL(9332), AZ(5688)
Projection of the Next 60 Days
State Projection:
AK AL AR AZ CA CO CT DC DE FL GA HI IA ID IL IN KS KY LA MA MD ME MI MN MO MS MT NC ND NE NH NJ NM NV NY OH OK OR PA RI SC SD TN TX US UT VA VT WA WI WV WY
Daily new confirmed cases:
Total deaths:
Daily deaths:
Fatality rate Poisson weighted:
Reproductive number:
My Model’s Ranking by Youyang Gu:
On Nov 2, Youyang Gu slightly changed his ranking method. For transparency, I keep ranking results both before and after the change. (See Nov 02 link at top of page)
If we compare median/mean ranking, my model is at the top of the list, regardless of the change.
Starting the next update, I will post ranking only using the new method (since this is Youyang Gu’s ranking evaluation).
Weekly ranking, 1-6w forward performance
Overall ranking and RMSE/MAE of errors
Daily Tests and Daily New Cases
(Data source: the COVID Tracking Project)
Daily New Cases in 50 US States
(Data source: the COVID Tracking Project)
What is the idea?
UPDATE: Since Oct 12, my model has included more features, in addition to encounter density. XGBoost is employed for regression.
today's "Daily New Confirmed Cases" + today's "Encounter Density" ==> today's newly infected Cases ==> next 2-3 weeks' "Daily New Confirmed Cases"
(Encounter Density D data source: Unacast's Social Distancing Scoreboard, which analyzes cell phone location data, counts "Human Encounters", defined as two cell phone devices that were in the same place at the same time, and then derives the probability and "Encounter Density".)
My model uses current "Encounter Density" D to predict future "Reproductive Number" R and "Daily New Confirmed Cases". This is the most fundamental idea and assumption in this model.
Why "Encounter" data?
Daily New Confirmed Cases data is "outdated". People who get confirmed today were infected days ago through "Human Encounter" with other contagious people, and it took days to develop symptoms, seek tests, and get confirmed (infected -> symptomatic -> tested -> confirmed). In other words, today's "Daily New Confirmed Cases" is outdated data and it can be inferred from past "Daily New Confirmed Cases" data + past "Encounter" data.
Encounter data is up-to-date. Typically yesterday's Human Encounter Density data is available online today. (Encounter Density D data source: Unacast's Social Distancing Scoreboard, which analyzes cell phone location data, counts "Human Encounters", defined as two cell phone devices that were in the same place at the same time, and then derives the probability and "Encounter Density".)
How does it work?
The strong correlation between R and D (D is shifted by ~22 days) is evident in this figure. While social distancing quickly brought down R, easing policy is slowly increasing R back above 1.
Using (1) R and D relation in the past as a training set, (2) future D as input, and (3) machine learning / regression, my model can predict future R, and ultimately future Daily New Cases.
Shown in red is "Daily Reproductive Number" R_d, which is obtained through fitting of existing "Daily New Confirmed Cases". By definition, if day 1 daily new cases in N, day 2 number will be N*R_d. Hence, the ultimate goal is to keep R_d under 1.
The black dots are Adjusted Encounter Density D_adj, shifted forward by ~22 days. These two curves are remarkably close. For example, R started to quickly decrease at around 3/20. This coincides with a sudden decrease of D at the end of Feb, ~20 days before. R reached bottom at ~4/15 and stayed at the level till ~5/15. This overlaps with low D between 3/20 to 4/20. The amount of shift is optimized to maximize overlap, and the value is determined as ~22 days. The values are normalized to pre-pandamic levels, so 1.0 means activity level before pandemic hit US.