class_docstr: Generalized Intersection over Union, see https://arxiv.org/abs/1902.09630
  Args:
      loss_weight (float): giou loss weight, default as 1
      eps (float): epsilon to avoid divide by zero, default as 1e-10
      reduction (string): Options are "none", "mean" and "sum". default as none
code: def __init__(self, loss_weight=1.0, eps=1e-10, reduction="none"):
      self.loss_weight = loss_weight
      self.eps = eps
      assert reduction in ("none", "mean", "sum")
      self.reduction = reduction
  
imports: from __future__ import absolute_import
  from __future__ import division
  from __future__ import print_function
  import numpy
  import math
  import paddle
  from ppdet.core.workspace import register, serializable
  from ..bbox_utils import bbox_iou
label_desc: Use image node_id 1 to create a new GIoULoss object from inherited base classes: object with example: obj = GIoULoss(loss_weight, eps, reduction)