class_docstr: An implementation of `"BigClam" <http://infolab.stanford.edu/~crucis/pubs/paper-nmfagm.pdf>`_
  from the WSDM '13 paper "Overlapping Community Detection at Scale: A Non-negative Matrix
  Factorization Approach". The procedure uses gradient ascent to create an embedding which is
  used for deciding the node-cluster affiliations.
  
  Args:
      dimensions (int): Number of embedding dimensions. Default 8.
      iterations (int): Number of training iterations. Default 50.
      learning_rate (float): Gradient ascent learning rate. Default is 0.005.
      seed (int): Random seed value. Default is 42.
class_docstr_tok: ["An","implementation","of","`","``","BigClam","''","<","http",":","\/\/infolab.stanford.edu\/~crucis\/pubs\/paper-nmfagm.pdf",">","`","_","from","the","WSDM","'13","paper","``","Overlapping","Community","Detection","at","Scale",":","A","Non-negative","Matrix","Factorization","Approach","''",".","The","procedure","uses","gradient","ascent","to","create","an","embedding","which","is","used","for","deciding","the","node-cluster","affiliations",".","Args",":","dimensions","(","int",")",":","Number","of","embedding","dimensions",".","Default","8.","iterations","(","int",")",":","Number","of","training","iterations",".","Default","50.","learning_rate","(","float",")",":","Gradient","ascent","learning","rate",".","Default","is","0.005.","seed","(","int",")",":","Random","seed","value",".","Default","is","42","."]
docstr: Getting the cluster membership of nodes.
  
  Return types:
      * **memberships** *(dict)* - Node cluster memberships.
docstr_tok: ["Getting","the","cluster","membership","of","nodes",".","Return","types",":","*","*","*","memberships","*","*","*","(","dict",")","*","-","Node","cluster","memberships","."]
code: def get_memberships(self) -> Dict[int, int]:
      r"""Getting the cluster membership of nodes.
  
      Return types:
          * **memberships** *(dict)* - Node cluster memberships.
      """
      indices = np.argmax(self._embedding, axis=1)
      memberships = {
          i: membership for i, membership in enumerate(indices)
      }
      return memberships
  
file_path: karateclub/karateclub/community_detection/overlapping/bigclam.py
imports: import random
  import community
  import numpy
  import networkx
  from typing import Dict
  from karateclub.estimator import Estimator
label_desc: Use image node_id 5 for calling the BigClam obj's underlying member method code with example usage: obj.get_memberships() and returns: memberships