scembed.methods.scVIMethod#

class scembed.methods.scVIMethod(adata, n_latent=None, n_layers=None, n_hidden=None, gene_likelihood=None, max_epochs=None, early_stopping=None, accelerator=None, batch_size=None, dropout_rate=None, use_batch_norm=None, use_layer_norm=None, lr=None, **kwargs)#

scVI integration method.

Wrapper around the scVI method [LRC+18] for deep generative modeling of single-cell transcriptomics. Part of the scvi-tools framework [GLX+22].

Methods table#

fit()

Fit scVI model.

fit_transform()

Fit the method and transform the data.

get_model_info()

Get information about the fitted model.

load_artifact(source[, artifact_type, ...])

Load a pre-trained model or embedding from various sources.

save_embedding([format_type, filename, ...])

Save embedding to file with preserved cell names as index.

save_model(path)

Save scVI model.

setup([force_recompute])

Setup scVI-specific preprocessing.

transform()

Get scVI latent representation.

validate_adata(adata)

Validate the AnnData object has required keys and structure.

validate_spatial_adata(adata)

Validate spatial-specific data requirements.

Methods#

scVIMethod.fit()#

Fit scVI model.

scVIMethod.fit_transform()#

Fit the method and transform the data.

Modifies self.adata in place.

Return type:

None

scVIMethod.get_model_info()#

Get information about the fitted model.

Return type:

dict[str, Any]

Returns:

Dict[str, Any] Dictionary with model information.

scVIMethod.load_artifact(source, artifact_type='model', embedding_key=None, **kwargs)#

Load a pre-trained model or embedding from various sources.

Parameters:
  • source (str | Path | dict) – Source of the artifact. Can be: - str/Path: Local path to model directory or embedding file - dict: WandB parameters with keys ‘run_id’, ‘entity’, ‘project’

  • artifact_type (Literal['model', 'embedding'] (default: 'model')) – Type of artifact to load: ‘model’ or ‘embedding’.

  • embedding_key (str | None (default: None)) – Key to store embedding in adata.obsm. If None, uses self.embedding_key. Only used when artifact_type=’embedding’.

  • **kwargs – Additional arguments passed to loading functions.

Return type:

None

scVIMethod.save_embedding(format_type='parquet', filename=None, compression=True)#

Save embedding to file with preserved cell names as index.

Parameters:
  • format_type (Literal['parquet', 'pickle', 'h5'] (default: 'parquet')) – Format to save embedding in. Options: ‘parquet’, ‘pickle’, or ‘h5’.

  • filename (str | None (default: None)) – Custom filename (without extension). If None, uses “embedding”.

  • compression (bool (default: True)) – Whether to use compression (gzip for all formats).

Return type:

Path

Returns:

Path Path to the saved embedding file.

Raises:

ValueError – If method is not fitted or embedding key not found in adata.obsm.

scVIMethod.save_model(path)#

Save scVI model.

Return type:

Path | None

scVIMethod.setup(force_recompute=False)#

Setup scVI-specific preprocessing.

Return type:

None

scVIMethod.transform()#

Get scVI latent representation.

scVIMethod.validate_adata(adata)#

Validate the AnnData object has required keys and structure.

Parameters:

adata (AnnData) – Annotated data object to validate.

Raises:

ValueError – If required keys are missing or data is malformed.

Return type:

AnnData

scVIMethod.validate_spatial_adata(adata)#

Validate spatial-specific data requirements.

Parameters:

adata (AnnData) – Annotated data object to validate.

Raises:

ValueError – If required spatial keys are missing or data is malformed.

Return type:

None