I’m looking into implementing a new project as an scvi model and am working my way through the code base to understand a bit more what is going on.
I’m still new to python module development and I’m wondering why certain methods are inherited from an actual parent class (BaseModelClass
), while others are inherited from mixins (RNASeqMixin, VAEMixin, ArchesMixin, UnsupervisedTrainingMixin
), as shown in the definition below:
class SCVI(
RNASeqMixin, VAEMixin, ArchesMixin, UnsupervisedTrainingMixin, BaseModelClass
):