Changelog#
All notable changes to this project will be documented in this file.
[1.0.0] — 2026-06-04 - Release#
This is the first stable release of Cellina, graduating from the 0.99.x pre-release series.
Added#
subgraph_typeparameter onCellinaGCNandGraphJointDataSplitter("induced"|"directional"); directional mode cuts counterfactual-inference VRAM by ~40% compared to the induced default.End-to-end tutorial notebook shipped in the repository at
docs/tutorial.ipynb, covering a full CRC counterfactual workflow from data loading to perturbation analysis.
Changed#
__version__is now resilient to missing package metadata (returns"unknown"instead of raisingPackageNotFoundError).README updated to reference
docs/tutorial.ipynbas the primary getting-started resource.
Fixed#
ReadTheDocs output path and
attrsmock indocs/conf.py.
[0.99.3] — 2026-06-02 - Pre-prerelease#
Vectorized SupCon loss for improved training speed; updated tests accordingly.
Hops and layer mismatches will raise a warning. From tests, this has a negligable effect if batch_size or the number of neighbors is large enough.
Added log1p for spatial_x in case not normalized.
[0.99.2] — 2026-06-01#
Sparse matrix only for GCN-based module; updated tests accordingly.
[0.99.1] — 2026-06-01#
Added minus 1.0 back to multiplicative perturbation to avoid zeroing out genes with large negative logFCs; updated tests accordingly.
[0.99.0] — 2026-05-27#
This is the first public version of Cellina: a dual-encoder variational autoencoder for spatial transcriptomics with adversarial domain forgetting.
Added#
Cellina/CellinaModule: MLP-based dual-encoder VAE with adversarial domain classifier and discriminator for batch-effect removalCellinaGCN/CellinaGCNModule: GCN-based variant that encodes spatial context via a graph convolutional network (s_encoder) alongside the count encoder (z_encoder); supports link prediction for edge-level tasksCellinaAdversarialTrainingPlan: unified two-step adversarial training plan shared by both module typesGraphJointDataSplitter/InferenceBatchLoader/JointBatchLoader: graph-aware data loading built on PyTorch GeometricNeighborLoaderandLinkNeighborLoaderspatial_neighbors: builds spatial connectivity graphs (kNN + kernel weighting) with support forgaussian,exponential, andlinearkernels, per-library graph construction vialibrary_key, and the newtest_indicesparametertest_indicesinspatial_neighbors/_spatial_neighbors_core: isolates test cells from the spatial graph at build time via coordinate displacement, producing all-zero rows and columns for those cells without post-hoc maskingcompute_spatial_features,make_neighbor_perturbation,make_perturbed_expression: spatial feature computation and in-silico perturbation utilities