New in 0.11.0 (2021-05-23)#

From the user perspective, this release features the new differential expression functionality (to be described in a manuscript). For now, it is accessible from differential_expression(). From the developer perspective, we made changes with respect to scvi.dataloaders.DataSplitter and surrounding the Pyro backend. Finally, we also made changes to adapt our code to PyTorch Lightning version 1.3.

Changes#

• Pass n_labels to VAE from SCVI (#1055).

• Require PyTorch lightning > 1.3, add relevant fixes (#1054).

• Automatic delta and eps computation in differential expression (#1043).

• Allow doublet ratio parameter to be changed for used in SOLO (#1066).

Bug fixes#

• Fix an issue where transform_batch options in TOTALVI was accidentally altering the batch encoding in the encoder, which leads to poor results (#1072). This bug was introduced in version 0.9.0.

Breaking changes#

These breaking changes do not affect the user API; though will impact model developers.

• Use PyTorch Lightning data modules for scvi.dataloaders.DataSplitter (#1061). This induces a breaking change in the way the data splitter is used. It is no longer callable and now has a setup method. See TrainRunner and its source code, which is straightforward.

• No longer require training plans to be initialized with n_obs_training argument (#1061). n_obs_training is now a property that can be set before actual training to rescale the loss.

• Log Pyro loss as train_elbo and sum over steps (#1071)