composite
composite
¶
Composite loss class that combine multiple loss components.
CompositeLoss
¶
Bases: BaseLoss
Composite loss that sums multiple sub-loss modules.
Initialize composite loss.
Parameters:
| Name | Type | Description | Default |
|---|---|---|---|
loss_modules
|
dict[str, BaseLoss]
|
Dictionary of loss module names to loss instances. |
required |
weights
|
dict[str, float] | None
|
Deprecated legacy composite weights. Kept only for config compatibility and ignored at runtime. |
None
|
Source code in src/versatil/metrics/losses/composite.py
set_weights
¶
Setter that updates the weight scalar coefficients.
Source code in src/versatil/metrics/losses/composite.py
get_required_keys
¶
Get required target keys by recursively collecting from all sub-modules.
Returns:
| Type | Description |
|---|---|
set[str]
|
Union of all required keys from all sub-modules |
Source code in src/versatil/metrics/losses/composite.py
forward
¶
Sum all sub-loss outputs (each sub-loss applies its own scalar weight).
Parameters:
| Name | Type | Description | Default |
|---|---|---|---|
predictions
|
dict[str, Tensor]
|
Model output dictionary |
required |
targets
|
dict[str, Tensor]
|
Ground truth dictionary |
required |
is_pad
|
Tensor | None
|
Optional padding mask |
None
|
Returns:
| Type | Description |
|---|---|
LossOutput
|
LossOutput with the summed total loss and all component losses |