We recently have been applying scVI for batch correction to scRNAseq data from two different batches. We see the batch correction working when visualizing the data, however, when we do the genewise comparison between batches it looks like batch effect has not been removed. I wonder if we expect to see batch effect in the reconstructed gene space?
What do you mean by genewise comparison between batches? It sounds like you are comparing the reconstructed gene counts output by get_normalized_expression. If this is the case, by default it uses the original batch terms when inferring the normalized gene levels, which means it will reproduce the batch effects. If you would like a view of the gene counts where they are simulated to come from the same batch, you need to use the transform_batch kwarg, which when set to an integer computes the normalized expression rates as if they came from the same batch.
Thanks for the quick response. I really appreciate it. Can you explain what exactly transform_batch doing? and how should we interpret the values we are getting from transform_batch.