Soothsayer: Predicting Cell Death from Live Microscopy

Temporal models that predict whether a neuron will die based on morphological changes observed in live-cell fluorescence microscopy.

Models

50 model checkpoints spanning:

  • Architectures: Embedding LSTM, DualEncoder LSTM, LeJEPA (Transformer)
  • Embeddings: GEDI-CNN (768d), DINOv2 (768d), GEDI+DINOv2 (1536d dual)
  • Observation windows: k=1 (single frame), k=3, k=5

Best Model

DualProjection LeJEPA + GEDI+DINOv2 at k=5: AUC 0.858 (12-experiment, 168K tracks)

Dataset

168,729 Tier 1 cell tracks from 12 experiments across motor neurons, iDA, iCortical, and iMN cell types. Each track has ≥5 alive timepoints verified by Siamese cell identity tracking. Death labels from GEDI biosensor (RFP/GFP ratio).

Split: 70/15/15, stratified by death_event × stimulation_dose, random_state=42.

Usage

import torch
from soothsayer import Soothsayer

model = Soothsayer(input_dim=768, hidden_dim=256, n_heads=4,
                   n_layers=3, ff_dim=512, dropout=0.1)
model.load_state_dict(torch.load("soothsayer_grid/lejepa_gedicnn_k5.pt"))
model.eval()

# embeddings: (batch, seq_len, 768) from GEDI-CNN penultimate layer
# hours: (batch, seq_len) elapsed hours
# lengths: (batch,) actual sequence lengths
pred_next, death_logit, ttd_pred = model(embeddings, hours, lengths)
death_prob = torch.sigmoid(death_logit)

Code

https://github.com/operantclaude-hash/gedi-cnn-foundation

Citation

If you use these models, please cite the GEDI-CNN Foundation repository.

Downloads last month

-

Downloads are not tracked for this model. How to track
Inference Providers NEW
This model isn't deployed by any Inference Provider. 🙋 Ask for provider support