def _wrap_activity_regularizer(layer): """Wraps the activity regularizer.""" if isinstance(layer.activity_regularizer, def_function.Function): return layer.activity_regularizer return def_function.Function( layer.activity_regularizer, '{}_activity_regularizer'.format(layer.name), input_signature=[tensor_spec.TensorSpec(None, layer.dtype or K.floatx())])
def _wrap_unconditional_loss(loss_fn, index): """Wraps callable/unconditonal loss, returning a serializable function.""" # Extract original loss function from partial function fn = loss_fn.args[0] if isinstance(loss_fn, functools.partial) else loss_fn if isinstance(fn, def_function.Function): return fn else: return def_function.Function( fn, 'loss_fn_{}'.format(index), input_signature=[])
def _wrap_activity_regularizer(layer): """Wraps the activity regularizer.""" # pylint: disable=protected-access if isinstance(layer._activity_regularizer, def_function.Function): return layer._activity_regularizer return def_function.Function( layer._activity_regularizer, '{}_activity_regularizer'.format(layer.name), input_signature=[ tf.TensorSpec(None, layer._compute_dtype or K.floatx()) ])