  @pytest.mark.parametrize("loss_func", _LWPARAMS, ids=_LWIDS)
  def test_loss_wrapper(loss_func):
      """ Test penalized loss wrapper works as expected """
      if get_backend() == "amd":
          if isinstance(loss_func, losses.GMSDLoss):
              pytest.skip("GMSD Loss is not currently compatible with PlaidML")
          if hasattr(loss_func, "__name__") and loss_func.__name__ == "logcosh":
              pytest.skip("LogCosh Loss is not currently compatible with PlaidML")
      y_a = K.variable(np.random.random((2, 64, 64, 4)))
      y_b = K.variable(np.random.random((2, 64, 64, 3)))
      p_loss = losses.LossWrapper()
 
</s> remove     if get_backend() == "amd" and isinstance(loss_func, losses.GMSDLoss):
        pytest.skip("GMSD Loss is not currently compatible with PlaidML")
 </s> add  </s> remove _LWIDS = ["DSSIMObjective", "GeneralizedLoss", "GMSDLoss", "GradientLoss", "LaplacianPyramidLoss",
          "LInfNorm", "logcosh", "mae", "mse", "MS-SSIM"]
 </s> add _LWIDS = ["DSSIMObjective", "FocalFrequencyLosse", "GeneralizedLoss", "GMSDLoss", "GradientLoss",
          "LaplacianPyramidLoss", "LInfNorm", "logcosh", "mae", "mse", "MS-SSIM"] </s> remove         "the pixel to pixel differences between two images. Similar in approach to SSIM. NB: This "
        "loss does not currently work on AMD cards."),
 </s> add         "the pixel to pixel differences between two images. Similar in approach to SSIM. Ref: "
        "Gradient Magnitude Similarity Deviation: An Highly Efficient Perceptual Image Quality "
        "Index https://arxiv.org/ftp/arxiv/papers/1308/1308.3052.pdf"),
        if isinstance(loss_func, losses.FocalFrequencyLoss):
            pytest.skip("FocalFrequencyLoss Loss is not currently compatible with PlaidML")
  @pytest.mark.parametrize("loss_func", _LWPARAMS, ids=_LWIDS)
  def test_loss_wrapper(loss_func):
      """ Test penalized loss wrapper works as expected """
      if get_backend() == "amd":
        if isinstance(loss_func, losses.FocalFrequencyLoss):
            pytest.skip("FocalFrequencyLoss Loss is not currently compatible with PlaidML")
        if isinstance(loss_func, losses.FocalFrequencyLoss):
            pytest.skip("FocalFrequencyLoss Loss is not currently compatible with PlaidML")
          if hasattr(loss_func, "__name__") and loss_func.__name__ == "logcosh":
              pytest.skip("LogCosh Loss is not currently compatible with PlaidML")
      y_a = K.variable(np.random.random((2, 64, 64, 4)))
      y_b = K.variable(np.random.random((2, 64, 64, 3)))
      p_loss = losses.LossWrapper()
keep keep keep keep replace replace keep keep keep keep keep
 Loss updates
  - Split Loss to own package
  - Add Focal Frequency Loss (Nvidia only)
  - Enable GMSD for AMD 
tests/lib/model/losses_test.py