My Authors
Read all threads
1/ Okay, so I've taken a quick glance only (!!!) at the mathematical methods behind this model, here's what I could gather so far. Keep in mind that this is all just a personal observation from the perspective of a random dude in germany (long thread)
2/ First of all, the model: it is a generalized gaussian error function to fit the amount of cumulative deaths.
A gaussian error function is a normalized sigmoid function with the domain [-1,1] It follows that this specific model is bounded between 0 and the ultimate level p
3/ α and β are speed of infection and time at which the rate of change is maximal, respectively. To explain why that is so would take up far too much time here.
Whats important is that the model aims to provide a good estimate of these 3 values
4/ Because these values are subject to a significant amount of noise in data, they apply a covariational analysis on top of the curve fitting. They note that this is also because the non statistical model cannot connect different locations together.
5/ The statistical model accounts for another layer of measurement errors as well as location specific covariate noise. The variation of these parameters is subject to assumptions on their side. Next is inputs
6/ Inputs:
Location specific:
Sj: social distancing covariate value at location j
yj^t: cumulative death rate in location j at time t

non-location specific:
mean of γ (this is the random factor in front of the social distancing covariate)
V (Variance parameters)
7/ These inputs are all calculated from a combination of historical data and assumptions mainly pertaining to the level of social distancing being enforced and are constantly updated dependent on new data coming in (correct me if I'm wrong here, I haven't looked into the code)
8/ Now that the model and its inputs are explained, the rest is pretty standard. They use a nonlinear multivariable least squares approach to calculate the 3 different values (p,α,β) for a specific location.
9/ This is done through a numerical method called complex step differentiation to approximate the derivatives. So in the end their model will output some approximate values for:
1. ultimate level p
2. speed of infection α
3. time at which the rate of change is maximal β
10/ they also evaluate uncertainty by holding out prior data points and plugging them back into their current iteration and comparing to oberved data. This is a tool to control for variations due to mean effects and variation across locations
11/ So in summary this is what they do:
Curve fitting for cumulative death rate + statistical model to account for statistical noise + adjusting for uncertainty.
12/ After this whole process they plug their outputs back into their mathematical model and simulate for a certain amount of time, hoping to get good estimates of future deaths. How do they go from cumulative deaths to overall amount of cases?
13/ I dont know, honestly. It isn't clear to me from looking at their methods page. If it really is just a linear interpolation based on rate of deaths, I would be a little disappointed.
14/ Some remarks:
1. They have essentially adjusted their model to a certain degree to take into account level of social distancing (via covariate weights)
2. This model is based on data from around the world, of which most countries have been able to flatten the curve.
15/ 3. This might explain why there was a downward adjustment for the total number of deaths as well as the total number of cases, simply because countries like spain and italy have recently been able to flatten their curves
16/ 4. Because the inputs into this model are based on assumptions and as such are prone for error, I'd be very interested in the condition number of this model (sensitivity of a model to small changes/errors in input)
17/ 5. Since they use death rate stats as the basis, this model is limited by the accuracy of reported covid19 deaths from around the world. However, this is always the case with imperfect data

6. Feel free to correct me, I wrote this on a whim without checking for any errors.
its 5 am in Germany 😱 so I'll head to bed. If there's any questions I'll be glad to answer them tomorrow
Missing some Tweet in this thread? You can try to force a refresh.

Enjoying this thread?

Keep Current with SSW

Profile picture

Stay in touch and get notified when new unrolls are available from this author!

Read all threads

This Thread may be Removed Anytime!

Twitter may remove this content at anytime, convert it as a PDF, save and print for later use!

Try unrolling a thread yourself!

how to unroll video

1) Follow Thread Reader App on Twitter so you can easily mention us!

2) Go to a Twitter thread (series of Tweets by the same owner) and mention us with a keyword "unroll" @threadreaderapp unroll

You can practice here first or read more on our help page!

Follow Us on Twitter!

Did Thread Reader help you today?

Support us! We are indie developers!


This site is made by just three indie developers on a laptop doing marketing, support and development! Read more about the story.

Become a Premium Member ($3.00/month or $30.00/year) and get exclusive features!

Become Premium

Too expensive? Make a small donation by buying us coffee ($5) or help with server cost ($10)

Donate via Paypal Become our Patreon

Thank you for your support!