scButterfly.train_model_perturb.Model¶
- class scButterfly.train_model_perturb.Model(RNA_data, ATAC_data, chrom_list, logging_path, R_encoder_dim_list, A_encoder_dim_list, R_decoder_dim_list, A_decoder_dim_list, R_encoder_nlayer=2, A_encoder_nlayer=2, R_decoder_nlayer=2, A_decoder_nlayer=2, R_encoder_act_list=[LeakyReLU(negative_slope=0.01), LeakyReLU(negative_slope=0.01)], A_encoder_act_list=[LeakyReLU(negative_slope=0.01), LeakyReLU(negative_slope=0.01)], R_decoder_act_list=[LeakyReLU(negative_slope=0.01), LeakyReLU(negative_slope=0.01)], A_decoder_act_list=[LeakyReLU(negative_slope=0.01), Sigmoid()], translator_embed_dim=128, translator_input_dim_r=128, translator_input_dim_a=128, translator_embed_act_list=[LeakyReLU(negative_slope=0.01), LeakyReLU(negative_slope=0.01), LeakyReLU(negative_slope=0.01)], discriminator_nlayer=1, discriminator_dim_list_R=[128], discriminator_dim_list_A=[128], discriminator_act_list=[Sigmoid()], dropout_rate=0.1, R_noise_rate=0.5, A_noise_rate=0.5)¶
- __init__(RNA_data, ATAC_data, chrom_list, logging_path, R_encoder_dim_list, A_encoder_dim_list, R_decoder_dim_list, A_decoder_dim_list, R_encoder_nlayer=2, A_encoder_nlayer=2, R_decoder_nlayer=2, A_decoder_nlayer=2, R_encoder_act_list=[LeakyReLU(negative_slope=0.01), LeakyReLU(negative_slope=0.01)], A_encoder_act_list=[LeakyReLU(negative_slope=0.01), LeakyReLU(negative_slope=0.01)], R_decoder_act_list=[LeakyReLU(negative_slope=0.01), LeakyReLU(negative_slope=0.01)], A_decoder_act_list=[LeakyReLU(negative_slope=0.01), Sigmoid()], translator_embed_dim=128, translator_input_dim_r=128, translator_input_dim_a=128, translator_embed_act_list=[LeakyReLU(negative_slope=0.01), LeakyReLU(negative_slope=0.01), LeakyReLU(negative_slope=0.01)], discriminator_nlayer=1, discriminator_dim_list_R=[128], discriminator_dim_list_A=[128], discriminator_act_list=[Sigmoid()], dropout_rate=0.1, R_noise_rate=0.5, A_noise_rate=0.5)¶
Main model. Some parameters need information about data, please see in Tutorial.
- Parameters:
RNA_data (Anndata) – RNA controled data for model training and testing.
ATAC_data (Anndata) – RNA stimulated data for model training and testing.
chrom_list (list) – list of peaks count for each chromosomes.
logging_path (str) – the path for output process logging, if not save, set it None.
R_encoder_dim_list (list) – dimension list of controled encoder, length equal to R_encoder_nlayer + 1, the first equal to RNA data dimension, the last equal to embedding dimension.
A_encoder_dim_list (list) – dimension list of stimulated encoder, length equal to A_encoder_nlayer + 1, the first equal to RNA data dimension, the last equal to embedding dimension.
R_decoder_dim_list (list) – dimension list of controled decoder, length equal to R_decoder_nlayer + 1, the last equal to embedding dimension, the first equal to RNA data dimension.
A_decoder_dim_list (list) – dimension list of stimulated decoder, length equal to A_decoder_nlayer + 1, the last equal to embedding dimension, the first equal to RNA data dimension.
R_encoder_nlayer (int) – layer counts of controled encoder, default 2.
A_encoder_nlayer (int) – layer counts of stimulated encoder, default 2.
R_decoder_nlayer (int) – layer counts of controled decoder, default 2.
A_decoder_nlayer (int) – layer counts of stimulated decoder, default 2.
R_encoder_act_list (list) – activation list of controled encoder, length equal to R_encoder_nlayer, default [nn.LeakyReLU(), nn.LeakyReLU()].
A_encoder_act_list (list) – activation list of stimulated encoder, length equal to A_encoder_nlayer, default [nn.LeakyReLU(), nn.LeakyReLU()].
R_decoder_act_list (list) – activation list of controled decoder, length equal to R_decoder_nlayer, default [nn.LeakyReLU(), nn.LeakyReLU()].
A_decoder_act_list (list) – activation list of stimulated decoder, length equal to A_decoder_nlayer, default [nn.LeakyReLU(), nn.LeakyReLU()].
translator_embed_dim (int) – dimension of embedding space for translator, default 128.
translator_input_dim_r (int) – dimension of input from controled encoder for translator, default 128.
translator_input_dim_a (int) – dimension of input from stimulated encoder for translator, default 128.
translator_embed_act_list (list) – activation list for translator, involving [mean_activation, log_var_activation, decoder_activation], default [nn.LeakyReLU(), nn.LeakyReLU(), nn.LeakyReLU()].
discriminator_nlayer (int) – layer counts of discriminator, default 1.
discriminator_dim_list_R (list) – dimension list of discriminator, length equal to discriminator_nlayer, the first equal to translator_input_dim_R, default [128].
discriminator_dim_list_A (list) – dimension list of discriminator, length equal to discriminator_nlayer, the first equal to translator_input_dim_A, default [128].
discriminator_act_list (list) – activation list of discriminator, length equal to discriminator_nlayer, default [nn.Sigmoid()].
dropout_rate (float) – rate of dropout for network, default 0.1.
R_noise_rate (float) – rate of set part of controled input data to 0, default 0.5.
A_noise_rate (float) – rate of set part of stimulated input data to 0, default 0.5.
Methods
__init__(RNA_data, ATAC_data, chrom_list, ...)Main model.
forward_A2A(ATAC_input, a_loss, kl_div_w, ...)forward_R2R(RNA_input, r_loss, kl_div_w, ...)forward_discriminator(batch_samples, ...)forward_translator(batch_samples, ...[, ...])save_model_dict(output_path)set_eval()set_train()test(test_id_r, test_id_a[, model_path, ...])Test for model.
train(loss_weight, train_id_r, train_id_a, ...)Training for model.