class_docstr: Ensemble Latent Dirichlet Allocation (eLDA), a method of training a topic model ensemble.
  
  Extracts stable topics that are consistently learned across multiple LDA models. eLDA has the added benefit that
  the user does not need to know the exact number of topics the topic model should extract ahead of time.
class_docstr_tok: ["Ensemble","Latent","Dirichlet","Allocation","(","eLDA",")",",","a","method","of","training","a","topic","model","ensemble",".","Extracts","stable","topics","that","are","consistently","learned","across","multiple","LDA","models",".","eLDA","has","the","added","benefit","that","the","user","does","not","need","to","know","the","exact","number","of","topics","the","topic","model","should","extract","ahead","of","time","."]
code: def save(self, *args, **kwargs):
      if self.get_topic_model_class() is not None:
          self.topic_model_module_string = (
              self.topic_model_class.__module__
          )
          self.topic_model_class_string = (
              self.topic_model_class.__name__
          )
      kwargs["ignore"] = frozenset(kwargs.get("ignore", ())).union(
          ("topic_model_class",)
      )
      super(EnsembleLda, self).save(*args, **kwargs)
  
imports: import logging
  import os
  from multiprocessing import Process, Pipe, ProcessError
  import importlib
  from typing import Set, Optional, List
  import numpy
  from scipy.spatial.distance import cosine
  from dataclasses import dataclass
  from gensim import utils
  from gensim.models import ldamodel, ldamulticore, basemodel
  from gensim.utils import SaveLoad
label_desc: Use image node_id 3 for calling the EnsembleLda obj's underlying member method code with example usage: obj.save() without return types