primo-eval / pages /submit.md
HungryTorch's picture
Point the Space at the PRIMOmics data repos
383d326 verified
|
Raw
History Blame Contribute Delete
2.55 kB

A newer version of the Gradio SDK is available: 6.25.0

Upgrade

The fastest way in. Two files, both in this Space's repo:

  • 📥 quickstart.py: downloads the selected modality, embeds it, and writes a valid submission. Swap its embed function for your model and you are done.
  • 📄 example_submission.csv: four lines, fake numbers, the exact shape we expect.
pip install anndata scikit-learn pandas pyyaml huggingface_hub
python quickstart.py --modality bulk-rna --out submission.parquet
# or: --modality single-cell-rna

Or do it by hand, in three steps:

  1. Choose one modality → use the selector in the form. The quickstart downloads only its datasets from PRIMOmics/primo.
  2. Embed that modality → build one file: dataset_id, sample_id, then one column per embedding dim (e0, e1, …). CSV / TSV / Parquet, or NPZ.
  3. Sign in, fill the form, and hit Evaluate. Add an institution for group submissions, check Submitted by the model's authors when applicable, and provide a paper link to make the model name clickable. A fixed task probe scores each hidden task (AUROC, Pearson or centered Spearman), reported per task category in its native metric.

Example file

dataset_id,sample_id,e0,e1,e2
d001,S1,0.12,-0.44,0.98
d002,S1,0.31,0.02,-0.15

For bulk datasets, each H5AD row is one submission sample. For single-cell datasets, H5AD rows are cells and obs["sample_id"] maps them to opaque collection samples. Aggregate the cells however your model requires and submit exactly one embedding per unique sample_id; the submission schema is unchanged.

Files containing dataset IDs from another modality are rejected. Reusing a model name for another modality replaces its previous leaderboard entry. Partial submissions are welcome. Cover fewer datasets within the selected modality and you are still scored: you get ranked on every board whose scored tasks you covered in full, and your numbers still show up in each board's per-task table, so nothing you send is thrown away.

Your first target is the baselines. We run our own reference submissions on the log-CPM expression itself, whole or cut down to its most variable genes, and they sit on the boards labelled (baseline). Beating them is the bar to clear.