class_docstr: This class computes an assignment between the targets and the predictions of the
  network
  
  For efficiency reasons, the targets don't include the no_object. Because of this,
  in general, there are more predictions than targets. In this case, we do a 1-to-1
  matching of the best predictions, while the others are un-matched (and thus treated
  as non-objects).
docstr: Creates the matcher
  
  Params:
      cost_class: This is the relative weight of the classification error in the
          matching cost
      cost_bbox: This is the relative weight of the L1 error of the bounding box
          coordinates in the matching cost
      cost_giou: This is the relative weight of the giou loss of the bounding box
          in the matching cost
code: def __init__(
      self,
      cost_class: float = 1,
      cost_bbox: float = 1,
      cost_giou: float = 1,
      logsoftmax: bool = False,
  ):
      """Creates the matcher
  
      Params:
          cost_class: This is the relative weight of the classification error in the
              matching cost
          cost_bbox: This is the relative weight of the L1 error of the bounding box
              coordinates in the matching cost
          cost_giou: This is the relative weight of the giou loss of the bounding box
              in the matching cost
      """
      super().__init__()
      self.cost_class = cost_class
      self.cost_bbox = cost_bbox
      self.cost_giou = cost_giou
      self.norm = nn.LogSoftmax(-1) if logsoftmax else nn.Softmax(-1)
      assert (
          cost_class != 0 or cost_bbox != 0 or cost_giou != 0
      ), "all costs cant be 0"
  
file_path: mmf/mmf/models/unit/matcher.py
imports: from typing import Dict, List
  import torch
  from mmf.utils.box_ops import box_cxcywh_to_xyxy, generalized_box_iou
  from scipy.optimize import linear_sum_assignment
  from torch import nn, Tensor
label_desc: Use image node_id 1 to create a new HungarianMatcher object from inherited base classes: nn with example: obj = HungarianMatcher(cost_class, cost_bbox, cost_giou, logsoftmax)