Example #1
0
 def named_losses(self) -> Dict[str, tf.Tensor]:
     losses = self._named_losses.copy()
     if hasattr(self, '_layers'):
         for layer in filter_empty_layer_containers(
                 self._layers):  # type: ignore[attr-defined]
             layer_losses = getattr(layer, 'named_losses', None)
             if layer_losses:
                 for name, loss in layer_losses.items():
                     assert name not in losses, f'Loss names must be unique, but there are two losses called {name}!'
                     losses[name] = loss
     return losses
Example #2
0
def _list_all_layers(obj):
    if isinstance(obj, training_lib.Model):
        return obj.layers
    else:
        return trackable_layer_utils.filter_empty_layer_containers(obj._layers)  # pylint: disable=protected-access
Example #3
0
 def layers(self):
     return layer_utils.filter_empty_layer_containers(self._layers)
Example #4
0
 def layers(self):
   return layer_utils.filter_empty_layer_containers(self._layers)