class_docstr: Main coreference resolution algorithm
docstr: Retrieve cleaned clusters
docstr_tok: ["Retrieve","cleaned","clusters"]
code: def get_clusters(self, remove_singletons=False, blacklist=False):
      """Retrieve cleaned clusters"""
      clusters = self.clusters
      mention_to_cluster = self.mention_to_cluster
      remove_id = []
      if blacklist:
          for key, mentions in clusters.items():
              cleaned_list = []
              for mention_idx in mentions:
                  mention = self.data.mentions[mention_idx]
                  if mention.lower_ not in NO_COREF_LIST:
                      cleaned_list.append(mention_idx)
              clusters[key] = cleaned_list
          # Also clean up keys so we can build coref chains in self.get_most_representative
          added = {}
          for key, mentions in clusters.items():
              if self.data.mentions[key].lower_ in NO_COREF_LIST:
                  remove_id.append(key)
                  mention_to_cluster[key] = None
                  if mentions:
                      added[mentions[0]] = mentions
          for rem in remove_id:
              del clusters[rem]
          clusters.update(added)
  
      if remove_singletons:
          remove_id = []
          for key, mentions in clusters.items():
              if len(mentions) == 1:
                  remove_id.append(key)
                  mention_to_cluster[key] = None
          for rem in remove_id:
              del clusters[rem]
  
      return clusters, mention_to_cluster
  
imports: import os
  import spacy
  import numpy
  from neuralcoref.train.utils import PACKAGE_DIRECTORY, SIZE_SINGLE_IN
  from neuralcoref.train.compat import unicode_
  from neuralcoref.train.document import Document, MENTION_TYPE, NO_COREF_LIST
label_desc: Use image node_id 14 for calling the Coref obj's underlying member method code with example usage: obj.get_clusters(remove_singletons, blacklist) and returns: clusters,  mention_to_cluster