Ideas to simplify the generative model for variant data
Nobody has claimed this yet.
- Dominant language
- Python
- Stars
- 13
- Forks
- 3
- Avg merge
- 19h 43m
- Merged PRs (30d)
- 1
Description
Why this issue?
In f2f discussion, we talked about the difficulty in having a generative model for both weekly hospitalisation and bi-weekly variant frequencies simultaneously. There are a few possible reasons why this is hard to achieve, for example, the variant frequencies are from a region and might not represent the local dynamics of a state.
On the other hand, the intrinsic dynamics of the model requires new variants as the primary mechanism whereby a new wave is trigger; that is the mechanistic assumption is that new waves are primarily driven by immunity loss.
Simpler generative models for variants
We need a model for the arrival of a new variant because its intrinsic to the dynamics, but we can simplify what this model is generating.
The simplest model I can think of that gives us what we need for the dynamics, and connects to the data, has these features:
- Each variant $v = 1, 2, 3, 4,...$ arrives sequentially in the model at time $T_v$ with interval times $T_{v+1} - T_v \sim \text{Exp}(\lambda_{nv})$ where $\lambda_{nv}$ is a baseline rate of new variant arrival.
- At the $T_v$ point we add a new variant:
- Generate $\chi_{i,v}$ for $i < v$ for the cross-immunity of the new variant with the older variants (I think we have some prior for this already?).
- Set an initial number of infected people with the new variant (I think we have some prior for this already?).
- We need to define what an arrival of a new variant looks like in the data. This could be something like first time the variant frequency hits some value (e.g. 5%) with some growth rate (maybe?). Then we can assign a time to each variant invasion in the data (for each region): $T_{\text{obs},v}$.
- The residual between the data invasion time and the model invasion time could be just Normal:
T_{\text{obs},v} - T_v \sim \mathcal{N}(0,~ \sigma_{nv}).
- We can probably assume that no variant is just missed in the data; therefore, for looking backwards for parameter inference we set the number of variant as the number observed in the data. Projecting forwards I think mostly we'll want to condition on the variant outcomes (e.g. as defined scenarios).
Contributor guide
No contributing guide indexed for this repository
First steps
- Read the whole issue, then the project's contributing guide.
- Comment on the issue to say you are picking it up — it saves two people doing the same work.
- Fork the repository and make your change on a branch.
- Open a pull request that references the issue number.
Research direction
No source files, tests, or entry points are named. Start by locating the current generative variant model and its inference tests, then compare them with the proposed variant-arrival and observed-invasion-time approach. Done means the simplified model is defined, implemented, and validated against the relevant variant data.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- python
- Domain
- data
- Issue type
- Feature
- Difficulty
- 5/5
- Estimated time
- Over a week
- Activity status
- Stale
- Clarity
- Needs clarification
- Newbie friendliness
- 25/100