Data and MLFeaturedL3:covid-herd-immunity-forecast
COVID-19 Herd Immunity Forecasting with N-BEATS
A study of Indonesia's COVID-19 case and vaccination dynamics, with N-BEATS forecasts of daily cases and full-dose vaccinations.
- Role
- Co-author and notebook author in a three-person team
- Period
- Aug 2021
Results
0.992
R-squared of the daily case model backtest
Historical forecast from 20 March to 22 August 2021 on the training series, so an in-sample check (Darts r2_score, notebook output).
0.9995
R-squared of the full-dose vaccination model backtest
Same in-sample historical forecast method on cumulative full-dose vaccinations (notebook output).
208 days
Daily data used, from 27 January 2021
Notebook output of the main case model.
About 10 months
To 80% full vaccination at the August 2021 pace
At an average of 273,318 second doses a day (the paper in the repository).
Problem
In August 2021 Indonesia was coming off its largest COVID-19 wave, and the question was when cases would ease and how long full vaccination toward herd immunity would take at the current pace.
What I did
- I combined daily case, recovery and vaccination data from January 2021 with population figures, mobility data and weights for policies and holidays.
- I trained N-BEATS models in Darts for daily cases (with mobility as a covariate) and for full-dose vaccinations, and backtested them with historical forecasts from March 2021.
- The team turned the forecasts into estimates of when cases would bottom out and how long 80% full vaccination would take, published at IEEE ICICyTA 2021.
Gallery
Code and research
Repositories on GitHub
Papers, thesis and models
PaperDec 1, 2021
2021 International Conference on Intelligent Cybernetics Technology & Applications (ICICyTA)
Tech stack
Python
- N-BEATS
- Darts
PyTorch
pandas
Plotly
- Matplotlib
Jupyter