class_docstr: Train and use Online Latent Dirichlet Allocation model as presented in
  `'Online Learning for LDA' by Hoffman et al.`_
  
  Examples
  -------
  Initialize a model using a Gensim corpus
  
  .. sourcecode:: pycon
  
      >>> from gensim.test.utils import common_corpus
      >>>
      >>> lda = LdaModel(common_corpus, num_topics=10)
  
  You can then infer topic distributions on new, unseen documents.
  
  .. sourcecode:: pycon
  
      >>> doc_bow = [(1, 0.3), (2, 0.1), (0, 0.09)]
      >>> doc_lda = lda[doc_bow]
  
  The model can be updated (trained) with new documents.
  
  .. sourcecode:: pycon
  
      >>> # In practice (corpus =/= initial training corpus), but we use the same here for simplicity.
      >>> other_corpus = common_corpus
      >>>
      >>> lda.update(other_corpus)
  
  Model persistency is achieved through :meth:`~gensim.models.ldamodel.LdaModel.load` and
  :meth:`~gensim.models.ldamodel.LdaModel.save` methods.
class_docstr_tok: ["Train","and","use","Online","Latent","Dirichlet","Allocation","model","as","presented","in","`","'Online","Learning","for","LDA","'","by","Hoffman","et","al.","`","_","Examples","--","--","--","-","Initialize","a","model","using","a","Gensim","corpus","..","sourcecode",":",":","pycon",">",">",">","from","gensim.test.utils","import","common_corpus",">",">",">",">",">",">","lda","=","LdaModel","(","common_corpus",",","num_topics=10",")","You","can","then","infer","topic","distributions","on","new",",","unseen","documents",".","..","sourcecode",":",":","pycon",">",">",">","doc_bow","=","[","(","1",",","0.3",")",",","(","2",",","0.1",")",",","(","0",",","0.09",")","]",">",">",">","doc_lda","=","lda","[","doc_bow","]","The","model","can","be","updated","(","trained",")","with","new","documents",".","..","sourcecode",":",":","pycon",">",">",">","#","In","practice","(","corpus","=\/=","initial","training","corpus",")",",","but","we","use","the","same","here","for","simplicity",".",">",">",">","other_corpus","=","common_corpus",">",">",">",">",">",">","lda.update","(","other_corpus",")","Model","persistency","is","achieved","through",":","meth",":","`","~gensim.models.ldamodel.LdaModel.load","`","and",":","meth",":","`","~gensim.models.ldamodel.LdaModel.save","`","methods","."]
docstr: Get the representation for a single topic. Words the integer IDs, in constrast to
  :meth:`~gensim.models.ldamodel.LdaModel.show_topic` that represents words by the actual strings.
  
  Parameters
  ----------
  topicid : int
      The ID of the topic to be returned
  topn : int, optional
      Number of the most significant words that are associated with the topic.
  
  Returns
  -------
  list of (int, float)
      Word ID - probability pairs for the most relevant words generated by the topic.
docstr_tok: ["Get","the","representation","for","a","single","topic",".","Words","the","integer","IDs",",","in","constrast","to",":","meth",":","`","~gensim.models.ldamodel.LdaModel.show_topic","`","that","represents","words","by","the","actual","strings",".","Parameters","--","--","--","--","--","topicid",":","int","The","ID","of","the","topic","to","be","returned","topn",":","int",",","optional","Number","of","the","most","significant","words","that","are","associated","with","the","topic",".","Returns","--","--","--","-","list","of","(","int",",","float",")","Word","ID","-","probability","pairs","for","the","most","relevant","words","generated","by","the","topic","."]
code: def get_topic_terms(self, topicid, topn=10):
      """Get the representation for a single topic. Words the integer IDs, in constrast to
      :meth:`~gensim.models.ldamodel.LdaModel.show_topic` that represents words by the actual strings.
  
      Parameters
      ----------
      topicid : int
          The ID of the topic to be returned
      topn : int, optional
          Number of the most significant words that are associated with the topic.
  
      Returns
      -------
      list of (int, float)
          Word ID - probability pairs for the most relevant words generated by the topic.
  
      """
      topic = self.get_topics()[topicid]
      topic = (
          topic / topic.sum()
      )  # normalize to probability distribution
      bestn = matutils.argsort(topic, topn, reverse=True)
      return [(idx, topic[idx]) for idx in bestn]
  
imports: import logging
  import numbers
  import os
  import time
  from collections import defaultdict
  import numpy
  from scipy.special import gammaln, psi
  from scipy.special import polygamma
  from gensim import interfaces, utils, matutils
  from gensim.matutils import kullback_leibler, hellinger, jaccard_distance, jensen_shannon, dirichlet_expectation, logsumexp, mean_absolute_difference
  from gensim.models import basemodel, CoherenceModel
  from gensim.models.callbacks import Callback
label_desc: Use image node_id 17 for calling the LdaModel obj's underlying member method code with example usage: obj.get_topic_terms(topicid, topn) and returns: unknown