← PBISC-Diffusion

One cell, step by step.

Follow one generated cell through 50 denoising steps. Compare its noisy state and expression estimate with the real-cell average for its type.

ctx2048 · E12 · EMA · 50 steps · 2,980 genes · One cell per type · Recorded run · no new inference

Loading the recorded run…

Genes

Noise in, cell out

What the model seesNoisy state xt
What the model predictsExpression estimate x̂0
Real-cell average
0 · log1p(CP10k)

One tile = one gene. Hover or tap a tile for its name. Blocks and gene order come from real cells of this donor, never from the generated cell.

Shared = genes detected in at least half of the real cells in each of the five broad cell types in this donor, including ribosomal, mitochondrial and early-response genes such as FOS and JUN. The prediction changes at every step because the model recomputes it from the updated noisy state. In these examples, the leading cell type stays the same after the early steps, while expression estimates keep changing.

Selected genes

Each bar is the selected cell at this step. The gray bar with a black edge is the real average for its type, from the same donor.

All generated cells

The same measurement for every recorded cell, not only the one shown above.

Prediction settles
Step median · p10–p90
Noisy state settles
Step median · p10–p90
Gauge vs scANVI
agreement on real cells · on generated endpoints
Never settle
cells whose final type stays below 0.5
PredictionNoisy state