scvi.dataloaders.SemiSupervisedDataLoader#

class scvi.dataloaders.SemiSupervisedDataLoader(adata_manager, n_samples_per_label=None, indices=None, shuffle=False, batch_size=128, data_and_attributes=None, drop_last=False, **data_loader_kwargs)[source]#

DataLoader that supports semisupervised training.

Parameters:
  • adata_manager (AnnDataManager) – AnnDataManager object that has been created via setup_anndata.

  • n_samples_per_label (Optional[int] (default: None)) – Number of subsamples for each label class to sample per epoch. By default, there is no label subsampling.

  • indices (Optional[list[int]] (default: None)) – The indices of the observations in the adata to load

  • shuffle (bool (default: False)) – Whether the data should be shuffled

  • batch_size (int (default: 128)) – minibatch size to load each iteration

  • data_and_attributes (Optional[dict] (default: None)) – Dictionary with keys representing keys in data registry (adata_manager.data_registry) and value equal to desired numpy loading type (later made into torch tensor). If None, defaults to all registered data.

  • data_loader_kwargs – Keyword arguments for DataLoader

Attributes table#

multiprocessing_context

dataset

batch_size

num_workers

pin_memory

drop_last

timeout

sampler

pin_memory_device

prefetch_factor

Methods table#

check_worker_number_rationality()

resample_labels()

Resamples the labeled data.

subsample_labels()

Subsamples each label class by taking up to n_samples_per_label samples per class.

Attributes#

SemiSupervisedDataLoader.multiprocessing_context[source]#
SemiSupervisedDataLoader.dataset: Dataset[T_co]#
SemiSupervisedDataLoader.batch_size: Optional[int]#
SemiSupervisedDataLoader.num_workers: int#
SemiSupervisedDataLoader.pin_memory: bool#
SemiSupervisedDataLoader.drop_last: bool#
SemiSupervisedDataLoader.timeout: float#
SemiSupervisedDataLoader.sampler: Union[Sampler, Iterable]#
SemiSupervisedDataLoader.pin_memory_device: str#
SemiSupervisedDataLoader.prefetch_factor: Optional[int]#

Methods#

SemiSupervisedDataLoader.check_worker_number_rationality()[source]#
SemiSupervisedDataLoader.resample_labels()[source]#

Resamples the labeled data.

SemiSupervisedDataLoader.subsample_labels()[source]#

Subsamples each label class by taking up to n_samples_per_label samples per class.