CoolFace
Datasetpublic

songlab/TraitGym

🧬 TraitGym Benchmarking DNA Sequence Models for Causal Regulatory Variant Prediction in Human Genetics πŸ† Leaderboard: https://huggingface.co/spaces/songlab/TraitGym-leaderboard ⚑️ Quick start Load a datasetfrom datasets import load_dataset dataset = load_dataset("songlab/TraitGym", "mendelian_traits", split="test") Example notebook to run variant effect prediction with a gLM, runs in 5 min on Google Colab: TraitGym.ipynb πŸ€— Resources… See the full description on the dataset page: https://huggingface.co/datasets/songlab/TraitGym.

sourceHugging Facemitupdated 1y agoView on Hugging Face
12likes14kdownloads
Dataset Card

🧬 TraitGym

Benchmarking DNA Sequence Models for Causal Regulatory Variant Prediction in Human Genetics

πŸ† Leaderboard: https://huggingface.co/spaces/songlab/TraitGym-leaderboard

⚑️ Quick start

  • β€”Load a dataset
python
    from datasets import load_dataset
    
    dataset = load_dataset("songlab/TraitGym", "mendelian_traits", split="test")
  • β€”Example notebook to run variant effect prediction with a gLM, runs in 5 min on Google Colab: TraitGym.ipynb ![Open In Colab](https://colab.research.google.com/github/songlab-cal/TraitGym/blob/main/TraitGym.ipynb)

πŸ€— Resources (https://huggingface.co/datasets/songlab/TraitGym)

  • β€”Datasets: {dataset}/test.parquet
  • β€”Subsets: {dataset}/subset/{subset}.parquet
  • β€”Features: {dataset}/features/{features}.parquet
  • β€”Predictions: {dataset}/preds/{subset}/{model}.parquet
  • β€”Metrics: {dataset}/{metric}/{subset}/{model}.csv

dataset examples (load_dataset config name):

  • β€”mendelian_traits_matched_9 (mendelian_traits)
  • β€”complex_traits_matched_9 (complex_traits)
  • β€”mendelian_traits_all (mendelian_traits_full)
  • β€”complex_traits_all (complex_traits_full)

subset examples:

  • β€”all (default)
  • β€”3_prime_UTR_variant
  • β€”disease
  • β€”BMI

features examples:

  • β€”GPN-MSA_LLR
  • β€”GPN-MSA_InnerProducts
  • β€”Borzoi_L2

model examples:

  • β€”GPN-MSA_LLR.minus.score
  • β€”GPN-MSA.LogisticRegression.chrom
  • β€”CADD+GPN-MSA+Borzoi.LogisticRegression.chrom

metric examples:

  • β€”AUPRC_by_chrom_weighted_average (main metric)
  • β€”AUPRC

πŸ’» Code (https://github.com/songlab-cal/TraitGym)

Installation

First, clone the repo and cd into it. Second, install the dependencies:

bash
conda env create -f workflow/envs/general.yaml
conda activate TraitGym

Optionally, download precomputed datasets and predictions (6.7G):

bash
mkdir -p results/dataset
huggingface-cli download songlab/TraitGym --repo-type dataset --local-dir results/dataset/

Running

To compute a specific result, specify its path:

bash
snakemake --cores all <path>

Example paths (these are already computed):

bash
# zero-shot LLR
results/dataset/complex_traits_matched_9/AUPRC_by_chrom_weighted_average/all/GPN-MSA_absLLR.plus.score.csv
# logistic regression/linear probing
results/dataset/complex_traits_matched_9/AUPRC_by_chrom_weighted_average/all/GPN-MSA.LogisticRegression.chrom.csv

We recommend the following:

bash
# Snakemake sometimes gets confused about which files it needs to rerun and this forces
# not to rerun any existing file
snakemake --cores all <path> --touch
# to output an execution plan
snakemake --cores all <path> --dry-run

To evaluate your own set of model features, place a dataframe of shape n_variants,n_features in results/dataset/{dataset}/features/{features}.parquet. For zero-shot evaluation of column {feature} and sign {sign} (plus or minus), you would invoke:

bash
snakemake --cores all results/dataset/{dataset}/{metric}/all/{features}.{sign}.{feature}.csv

To train and evaluate a logistic regression model, you would invoke:

bash
snakemake --cores all results/dataset/{dataset}/{metric}/all/{feature_set}.LogisticRegression.chrom.csv

where {feature_set} should first be defined in feature_sets in config/config.yaml (this allows combining features defined in different files).

Citation

Link to paper

bibtex
@article{traitgym,
  title={Benchmarking DNA Sequence Models for Causal Regulatory Variant Prediction in Human Genetics},
  author={Benegas, Gonzalo and Eraslan, G{\"o}kcen and Song, Yun S},
  journal={bioRxiv},
  pages={2025--02},
  year={2025},
  publisher={Cold Spring Harbor Laboratory}
}