Introduction¶
Dinf is discriminator-based inference for population genetics. It uses a neural network to discriminate between a target dataset and a simulated dataset. Inference is done by finding simulation parameters that produce data closely matching the target dataset. Dinf provides a Python API for creating simulation models, and a CLI for discriminator training, inference, and plotting.
Standing on the shoulders of giants¶
Dinf uses and takes inspiration from the following projects.
msprime and the tskit ecosystem for simulations.
cyvcf2 for reading VCF and BCF files (which itself uses htslib).
matplotlib for creating plots.
pg-gan does discriminator-based inference using simulated annealing in a GAN (generative adversarial network). Dinf implements and extends many ideas from pg-gan.