Perturbation representation model embedding CRISPR gene targets and small molecules in one space, transferring genetic screen models to drug response.
No providers recorded yet. Browse all providers
Cells can be perturbed genetically — knocking out or knocking down a gene with CRISPR — or chemically, with a small molecule that hits one or more proteins. Both produce transcriptional readouts, and both are being used to build models that predict a cell's state after an intervention. But the two kinds of perturbagen are described in incompatible ways: a gene is a sequence, a drug is a molecular graph. Models trained on one cannot borrow from the other, and chemical screens are the more expensive of the two to run at scale.
UniPert-G2CP, from the Tencent AI for Life Sciences Lab with collaborators at Central South University, is a two-phase answer to that split. UniPert is a multimodal representation model that encodes genetic and chemical perturbagens into a single embedding space, using measured compound-target interactions as the bridge. G2CP — Genetic-to-Chemical Perturbation transfer learning — then reuses that shared space to convert models fit on CRISPR screen data into predictors of chemical perturbation phenotypes, so an expensive drug screen does not have to be run from scratch.
The authors frame the work as infrastructure for the "AI virtual cell": a substrate on which perturbation models can be trained once and queried across modalities. It joins catalog entries such as GEARS, which predicts transcriptional responses to multi-gene CRISPR perturbations, by supplying the representation layer that lets such models cross into chemistry.
Genetic perturbagens enter through their protein sequence: node embeddings are initialised
with the pretrained ESM-2 650M-parameter encoder
(esm2_t33_650M_UR50D), producing 1,280-dimensional vectors that are refined by graph
message passing over a target-relation graph before projection to the 256-dimensional
shared space. An unseen sequence is attached to that graph as a new node and updated the
same way, which is what makes the model applicable to targets outside the training set.
Chemical perturbagens are encoded as 2,048-bit ECFP4 Morgan fingerprints and projected
into the same 256-dimensional space. Training combines graph self-supervised learning on
the genetic side with contrastive alignment across compound-target interaction pairs.
Building on those representations, G2CP models post-perturbation cellular states spanning 4,994 gene and 7,821 compound perturbagens. The reference implementation is on GitHub under GPL-3.0 and ships a pretrained checkpoint plus tutorials for encoding gene lists or FASTA files, SMILES files, and perturbation AnnData objects; installation depends on PyTorch, PyTorch Geometric, and MMseqs2.
The practical use is in silico drug screening where genetic screen data already exists. A group that has run a genome-wide CRISPR screen in a cell line can use G2CP to ask what a library of compounds would do in that context, prioritising which to test at the bench. The shared embedding is also useful on its own: annotating poorly characterised targets by their neighbours in the space, matching compounds to genetic phenotypes when looking for a chemical mimic of a knockout, and providing perturbagen features for downstream perturbation-response models.
UniPert-G2CP's contribution is treating the genetic/chemical divide as a representation problem with an experimental bridge already available — the compound-target interaction record — rather than as two separate modelling efforts. Reported gains are in silico: transfer efficiency and prediction accuracy on held-out perturbagens, not prospective experimental validation, and the work remains a preprint. The compound encoder is a fingerprint rather than a learned molecular representation, which caps how much chemical nuance the shared space can carry. Public code and a pretrained checkpoint under GPL-3.0 make the embeddings straightforward to drop into existing perturbation pipelines.
Much of this page is generated or calculated automatically. Flag anything that looks off and we will re-run it.