Generative model of bacterial gene content that expands a handful of chosen KEGG modules into the full gene complement a viable cell would need.
No providers recorded yet. Browse all providers
Asking for a bacterium that runs glycolysis, the TCA cycle and butane degradation is easy. Writing down every other gene such a cell would have to encode — the ribosome, the replication machinery, the transporters, the cofactor biosynthesis that those three pathways silently depend on — is the hard part, and biology has mostly answered it by deletion: cutting the Mycoplasma mycoides genome from 901 genes to 473 took roughly USD 40 million and twenty people working for a decade.
DeepGenomeVector reframes that enumeration as a denoising problem. Each bacterial genome is reduced to a genome vector: a 9,863-bit binary string over KEGG Orthology identifiers, one bit per gene family, recording only which gene families the organism encodes. Training corrupts each vector by keeping the genes of ten randomly chosen KEGG modules and masking everything else, then asks a variational autoencoder to reconstruct the original. Because the corruption is shaped like a user's query — a few functional units, retained; the rest, unknown — the trained decoder can be handed a fresh set of desired pathways and asked to fill in the surrounding genome, sampling the latent space to produce designs that are new rather than memorized.
The model was built by Natasha Dudek and Doina Precup at McGill University and Mila, posted to bioRxiv in October 2023 and published in Proceedings of the Royal Society B in December 2024. The authors present it explicitly as a proof of concept on a simplified representation, not as a genome design tool ready for the bench.
The training corpus is 2,584 complete, high-quality bacterial genomes drawn from the KEGG genomes database and thinned to limit over-represented taxa, spanning 46 major bacterial lineages. Genomes carry a median of 1,885 annotated gene families each (range 528–4,536), and 1,085 of the 9,863 features (11%) fall inside a KEGG module. Genomes were split roughly 90/10 into training and test sets before corruption, with each vector corrupted 100 times to augment the data. The released architecture is a three-layer encoder of widths 9,863 → 500 → 250 → 100 with separate mean and log-variance heads and a mirrored decoder ending in a sigmoid — about 10 million parameters — trained in PyTorch for 10 epochs on the sum of binary cross-entropy and KL divergence, with layer count, batch size, learning rate and weight decay selected by 10-fold cross-validated hyperparameter search. On held-out genomes the model reaches a micro-average AUROC of 0.98 and per-genome F1 scores from 0.39 to 0.99, median 0.83, against five heuristic baselines — turning on random genes, turning on the genes most often present across the training set, an untrained VAE, and substituting either the sparsest or the densest training genome — that all perform substantially worse.
The immediate use is exploratory: proposing gene sets for a target metabolic lifestyle in synthetic biology, augmenting scarce genome datasets for downstream models, and inferring what an incompletely assembled genome is likely to encode — the question PICRUSt-style tools answer from marker genes. Because generated vectors place sensibly within a parsimony dendrogram of real genomes, they also probe which gene combinations sequenced bacterial diversity makes plausible.
DeepGenomeVector is a compact demonstration that generative machine learning can capture statistical rules of genome composition, and it publishes its own limits clearly. Genome vectors carry no spatial organization, no non-coding or regulatory sequence, and no genes outside KEGG's annotated set, so they omit a large share of what a real genome contains, and translating a binary vector into actual sequence is left as future work. Reproduction takes effort too: the MIT-licensed repository ships the training and analysis code but no released checkpoint, and the notebook loads a model from a path on the author's own machine. Read as what it claims to be — concept validation rather than a production design system — it stakes out the problem clearly enough for larger models to build on.
Much of this page is generated or calculated automatically. Flag anything that looks off and we will re-run it.