scgen.SCGENVAE

class scgen.SCGENVAE(n_input, n_hidden=800, n_latent=10, n_layers=2, dropout_rate=0.1, log_variational=False, latent_distribution='normal', use_batch_norm='both', use_layer_norm='none', kl_weight=5e-05)[source]

Variational auto-encoder model.

Parameters
n_input : int

Number of input genes

n_hidden : int (default: 800)

Number of nodes per hidden layer

n_latent : int (default: 10)

Dimensionality of the latent space

n_layers : int (default: 2)

Number of hidden layers used for encoder and decoder NNs

dropout_rate : float (default: 0.1)

Dropout rate for neural networks

use_layer_norm : {‘encoder’, ‘decoder’, ‘none’, ‘both’}Literal[‘encoder’, ‘decoder’, ‘none’, ‘both’] (default: 'none')

Whether to use layer norm in layers

kl_weight : float (default: 5e-05)

Weight for kl divergence

Methods

generative(z)

Runs the generative model.

get_reconstruction_loss(x, px)

rtype

Tensor

inference(x)

High level inference method.

loss(tensors, inference_outputs, ...)

Compute the loss for a minibatch of data.

sample(tensors[, n_samples])

Generate observation samples from the posterior predictive distribution.