Executor¶
Inheritance Diagram
-
class
ashpy.losses.executor.
Executor
(fn=None)[source]¶ Bases:
object
Carry a function and the way of executing it. Given a context.
Methods
__init__
([fn])Initialize the Executor.
call
(context, **kwargs)Execute the function, using the information provided by the context.
reduce_loss
(call_fn)Create a Decorator to reduce Losses.
Attributes
Return the Keras loss function to execute.
Global batch size comprises the batch size for each cpu.
Return the loss weight.
-
__init__
(fn=None)[source]¶ Initialize the Executor.
- Parameters
fn (
tf.keras.losses.Loss
) – A Keras Loss to execute.- Return type
None
- Returns
-
abstract
call
(context, **kwargs)[source]¶ Execute the function, using the information provided by the context.
- Parameters
context (
ashpy.contexts.Context
) – The function execution Context.- Return type
Tensor
- Returns
tf.Tensor
– Output Tensor.
-
property
fn
¶ Return the Keras loss function to execute.
- Return type
Loss
- Returns
tf.keras.losses.Loss
– Keras Loss.
-
property
global_batch_size
¶ Global batch size comprises the batch size for each cpu.
Calculated as batch_size_for_replica*replica_numbers.
-
static
reduce_loss
(call_fn)[source]¶ Create a Decorator to reduce Losses. Used to simplify things.
Apply a
reduce sum
operation to the loss and divide the result by the batch size.- Parameters
call_fn (
typing.Callable
) – The executor call method.- Return type
- Returns
typing.Callable
– The decorated function.
-
property
weight
¶ Return the loss weight.
This weight is multiplied by the loss value. This is useful when working with multiples losses.
- Return type
- Returns
typing.Callable
– Callable returning the weight (float
).
-