Skip to content
/ ml-ci Public

A machine learning method for confidence interval (CI) computation with specific application to Covid-19 forecast on 54 countries.

Notifications You must be signed in to change notification settings

ablacan/ml-ci

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

12 Commits
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

PyPI pyversions

ml-ci

Interval forecasting for covid19 cases. Repo in construction...🏗🏗🏗


Main contributor: Alice Lacan
Email: alice.b.lacan@gmail.com


The Covid-19 interval forecasting method developed here leads to a minimization of the negative log-likelihood error up to 15 days ahead. likelihood_results

1. Fit model on real country data

In our work, we focused on the 54 following countries: 'United Kingdom', 'United States','Australia', 'Austria', 'Belgium', 'Bulgaria', 'Canada', 'China', 'Denmark', 'Finland', 'France', 'Germany', 'Greece', 'India', 'Israel', 'Italy', 'Japan', 'Luxembourg', 'Netherlands', 'Norway', 'Poland', 'Portugal', 'Russia', 'South Africa', 'Korea, Republic of', 'Spain', 'Sweden', 'Taiwan', 'Chile', 'Colombia', 'China', 'Egypt', 'Congo', 'Guana', 'Iran', 'Libya', 'Kenya', 'Mexico', 'New Zealand', 'Qatar', 'Peru', 'Sudan', 'Turkey', 'Bangladesh', 'Somalia', 'Singapore', 'Senegal','Ukraine', 'Vietnam', 'Yemen', 'Oman', 'Uruguay', 'Venezuela', 'United Arab Emirates', 'Pakistan'.

To fit our SIR model and stringency parameter on these countries, run the following script:

python /python_scripts/countries_forecast.py

This script will save all results a dictionary in './results_stringency/SIR/result_{COUNTRY}_{TRAIN_WINDOW}days.npy' for each country. The default training window is 100 days (TRAIN_WINDOW=100).

2. Generate simulations

python /python_scripts/run_simulations.py -nb_simulations <NUMBER OF SIMULATIONS>

This script will generate random population numbers (in Millions), stringency data (governmental interventions scenarios) then apply random transofrmations to obtain beta series (transmission rates) and pass them through a SIR model dynamics (no fitting here), to eventually obtain simulated covid19 cases. Both covid19 scenarios and corresponding betas, stringency are stored as a dictionary in '/results_predictor/SIR/simulations_{NUMBER OF SIMULATIONS}samples.npy'.

To load these simulations, run the following with desired key ('simulations' for stringency data, 'betas' for beta series and 'cases' for simulated covid19 cases): simulations_dict = np.load('/results_predictor/SIR/simulations_{NUMBER OF SIMULATIONS}samples.npy', allow_pickle=True).item() simulations_{KEY} = simulations_dict[KEY]

About

A machine learning method for confidence interval (CI) computation with specific application to Covid-19 forecast on 54 countries.

Topics

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages