def __init__( self, n_input: int, n_batch: int = 0, n_labels: int = 0, n_hidden: int = 128, n_latent: int = 10, n_layers: int = 1, dropout_rate: float = 0.1, dispersion: str = "gene", log_variational: bool = True, reconstruction_loss: str = "zinb", ): super().__init__( n_input, n_batch, n_labels, n_hidden, n_latent, n_layers, dropout_rate, dispersion, log_variational, reconstruction_loss, ) self.decoder = LinearDecoderSCVI( n_latent, n_input, n_cat_list=[n_batch], n_layers=n_layers, n_hidden=n_hidden, )
def __init__( self, n_input: int, n_batch: int = 0, n_labels: int = 0, n_hidden: int = 128, n_latent: int = 10, n_layers_encoder: int = 1, dropout_rate: float = 0.1, dispersion: str = "gene", log_variational: bool = True, reconstruction_loss: str = "nb", use_batch_norm: bool = True, bias: bool = False, latent_distribution: str = "normal", ): super().__init__( n_input, n_batch, n_labels, n_hidden, n_latent, n_layers_encoder, dropout_rate, dispersion, log_variational, reconstruction_loss, latent_distribution, ) self.use_batch_norm = use_batch_norm self.z_encoder = Encoder( n_input, n_latent, n_layers=n_layers_encoder, n_hidden=n_hidden, dropout_rate=dropout_rate, distribution=latent_distribution, ) self.decoder = LinearDecoderSCVI( n_latent, n_input, n_cat_list=[n_batch], use_batch_norm=use_batch_norm, bias=bias, )