      ------
      You should add a regularization term like a l2 loss in addition to this one.
      """
      def __init__(self, k_1=0.01, k_2=0.03, filter_size=11, filter_sigma=1.5, max_value=1.0):
          super().__init__(name="DSSIMObjective")
          self.filter_size = filter_size
          self.filter_sigma = filter_sigma
          self.k_1 = k_1
          self.k_2 = k_2
          self.max_value = max_value
  
      def call(self, y_true, y_pred):
          """ Call the DSSIM Loss Function.
  
          Parameters
 
</s> remove         Weights are returned as the weighted sum of the chosen losses.
 </s> add         Loss is returned as the weighted sum of the chosen losses. </s> remove     def call(self, y_true, y_pred):
 </s> add     def __call__(self, y_true: tf.Tensor, y_pred: tf.Tensor) -> tf.Tensor: </s> remove     def add_loss(self, function, weight=1.0, mask_channel=-1):
 </s> add     def add_loss(self,
                 function: tf.keras.losses.Loss,
                 weight: float = 1.0,
                 mask_channel: int = -1) -> None: </s> remove     def __init__(self):
 </s> add     def __init__(self) -> None: </s> remove     def _apply_mask(cls, y_true, y_pred, mask_channel, mask_prop=1.0):
 </s> add     def _apply_mask(cls,
                    y_true: tf.Tensor,
                    y_pred: tf.Tensor,
                    mask_channel: int,
                    mask_prop: float = 1.0) -> Tuple[tf.Tensor, tf.Tensor]:
        super().__init__(name="DSSIMObjective", reduction=tf.keras.losses.Reduction.NONE)
        self._filter_size = filter_size
        self._filter_sigma = filter_sigma
        self._k_1 = k_1
        self._k_2 = k_2
        self._max_value = max_value
      ------
      You should add a regularization term like a l2 loss in addition to this one.
      """
      def __init__(self, k_1=0.01, k_2=0.03, filter_size=11, filter_sigma=1.5, max_value=1.0):
        super().__init__(name="DSSIMObjective", reduction=tf.keras.losses.Reduction.NONE)
        self._filter_size = filter_size
        self._filter_sigma = filter_sigma
        self._k_1 = k_1
        self._k_2 = k_2
        self._max_value = max_value
        super().__init__(name="DSSIMObjective", reduction=tf.keras.losses.Reduction.NONE)
        self._filter_size = filter_size
        self._filter_sigma = filter_sigma
        self._k_1 = k_1
        self._k_2 = k_2
        self._max_value = max_value
        super().__init__(name="DSSIMObjective", reduction=tf.keras.losses.Reduction.NONE)
        self._filter_size = filter_size
        self._filter_sigma = filter_sigma
        self._k_1 = k_1
        self._k_2 = k_2
        self._max_value = max_value
        super().__init__(name="DSSIMObjective", reduction=tf.keras.losses.Reduction.NONE)
        self._filter_size = filter_size
        self._filter_sigma = filter_sigma
        self._k_1 = k_1
        self._k_2 = k_2
        self._max_value = max_value
        super().__init__(name="DSSIMObjective", reduction=tf.keras.losses.Reduction.NONE)
        self._filter_size = filter_size
        self._filter_sigma = filter_sigma
        self._k_1 = k_1
        self._k_2 = k_2
        self._max_value = max_value
        super().__init__(name="DSSIMObjective", reduction=tf.keras.losses.Reduction.NONE)
        self._filter_size = filter_size
        self._filter_sigma = filter_sigma
        self._k_1 = k_1
        self._k_2 = k_2
        self._max_value = max_value
  
      def call(self, y_true, y_pred):
          """ Call the DSSIM Loss Function.
  
          Parameters
keep keep keep keep replace replace replace replace replace replace keep keep keep keep keep
 bugfix: distibuted training with dssim 
lib/model/losses_tf.py