class_docstr: Computes the lifted structured loss.
  
  The loss encourages the positive distances (between a pair of embeddings
  with the same labels) to be smaller than any negative distances (between
  a pair of embeddings with different labels) in the mini-batch in a way
  that is differentiable with respect to the embedding vectors.
  See: https://arxiv.org/abs/1511.06452.
  
  Args:
    margin: Float, margin term in the loss definition.
    name: Optional name for the op.
code: def __init__(
      self,
      margin: FloatTensorLike = 1.0,
      name: Optional[str] = None,
      **kwargs,
  ):
      super().__init__(
          lifted_struct_loss,
          name=name,
          reduction=tf.keras.losses.Reduction.NONE,
          margin=margin,
      )
  
file_path: addons/tensorflow_addons/losses/lifted.py
imports: import tensorflow
  from tensorflow_addons.losses import metric_learning
  from tensorflow_addons.utils.keras_utils import LossFunctionWrapper
  from tensorflow_addons.utils.types import FloatTensorLike, TensorLike
  from typeguard import typechecked
  from typing import Optional
label_desc: Use image node_id 1 to create a new LiftedStructLoss object from inherited base classes: LossFunctionWrapper with example: obj = LiftedStructLoss(margin, name)