popv.algorithms.KNN_SCVI#

class popv.algorithms.KNN_SCVI(batch_key='_batch_annotation', labels_key='_labels_annotation', save_folder=None, result_key='popv_knn_on_scvi_prediction', embedding_key='X_scvi_popv', umap_key='X_umap_scvi_popv', model_kwargs=None, classifier_dict=None, embedding_kwargs=None, train_kwargs=None)[source]#

Class to compute KNN classifier after scVI integration.

Parameters:
  • batch_key (str | None (default: '_batch_annotation')) – Key in obs field of adata for batch information. Default is “_batch_annotation”.

  • labels_key (str | None (default: '_labels_annotation')) – Key in obs field of adata for cell-type information. Default is “_labels_annotation”.

  • max_epochs – Number of epochs scvi is trained.

  • result_key (str | None (default: 'popv_knn_on_scvi_prediction')) – Key in obs in which celltype annotation results are stored. Default is “popv_knn_scvi_prediction”.

  • embedding_key (str | None (default: 'X_scvi_popv')) – Key in obsm in which latent dimensions are stored. Default is “X_scvi_popv”.

  • umap_key (str | None (default: 'X_umap_scvi_popv')) – Key in obsm in which UMAP embedding of integrated data is stored. Default is “X_umap_scvi_popv”.

  • model_kwargs (dict | None (default: None)) – Dictionary to supply non-default values for SCVI model. Options at scvi.model.SCVI. Default is {“n_layers”: 3, “n_latent”: 20, “gene_likelihood”: “nb”, “use_batch_norm”: “none”, “use_layer_norm”: “both”, “encode_covariates”: True}.

  • classifier_kwargs – Dictionary to supply non-default values for KNN classifier. See sklearn.neighbors.KNeighborsClassifier. Default is {“weights”: “uniform”, “n_neighbors”: 15}.

  • embedding_kwargs (dict | None (default: None)) – Dictionary to supply non-default values for UMAP embedding. See scanpy.tl.umap(). Default is {“min_dist”: 0.1}.

  • train_kwargs (dict | None (default: None)) – Dictionary to supply non-default values for training scVI. Options at scvi.model.SCVI.train(). Default is {“max_epochs”: 20, “batch_size”: 512, “accelerator”: settings.accelerator, “plan_kwargs”: {“n_epochs_kl_warmup”: 20}}.

Methods table#

compute_integration(adata)

Compute scVI integration.

compute_umap(adata)

Compute UMAP embedding of scVI results.

predict(adata)

Predict celltypes using KNN on scVI embedding.

Methods#

KNN_SCVI.compute_integration(adata)[source]#

Compute scVI integration.

Parameters:

adata – Anndata object. Results are stored in adata.obsm[self.embedding_key].

KNN_SCVI.compute_umap(adata)[source]#

Compute UMAP embedding of scVI results.

Parameters:

adata – Anndata object. Results are stored in adata.obsm[self.umap_key].

KNN_SCVI.predict(adata)[source]#

Predict celltypes using KNN on scVI embedding.

Parameters:

adata – Anndata object. Results are stored in adata.obs[self.result_key].