class_docstr: Is needed to give a roughly estimate of the anaphoricity of two candidates,
  only top scoring candidates are considered on later steps to reduce
  computational complexity.
docstr: Selects top-k rough antecedent scores for each mention.
  
  Args:
      rough_scores: tensor of shape [n_mentions, n_mentions], containing
          rough antecedent scores of each mention-antecedent pair.
  
  Returns:
      FloatTensor of shape [n_mentions, k], top rough scores
      LongTensor of shape [n_mentions, k], top indices
docstr_tok: ["Selects","top-k","rough","antecedent","scores","for","each","mention",".","Args",":","rough_scores",":","tensor","of","shape","[","n_mentions",",","n_mentions","]",",","containing","rough","antecedent","scores","of","each","mention-antecedent","pair",".","Returns",":","FloatTensor","of","shape","[","n_mentions",",","k","]",",","top","rough","scores","LongTensor","of","shape","[","n_mentions",",","k","]",",","top","indices"]
code: def _prune(
      self, rough_scores: torch.Tensor
  ) -> Tuple[torch.Tensor, torch.Tensor]:
      """
      Selects top-k rough antecedent scores for each mention.
  
      Args:
          rough_scores: tensor of shape [n_mentions, n_mentions], containing
              rough antecedent scores of each mention-antecedent pair.
  
      Returns:
          FloatTensor of shape [n_mentions, k], top rough scores
          LongTensor of shape [n_mentions, k], top indices
      """
      top_scores, indices = torch.topk(
          rough_scores,
          k=min(self.k, len(rough_scores)),
          dim=1,
          sorted=False,
      )
      return top_scores, indices
  
imports: from typing import Tuple
  import torch
  from stanza.models.coref.config import Config
label_desc: Use image node_id 3 for calling the RoughScorer obj's underlying member method code with example usage: obj._prune(rough_scores) and returns: top_scores,  indices