torchcell.losses.multi_dim_nan_tolerant.NaNTolerantL1Loss

class NaNTolerantL1Loss[source]

Bases: Module

Per-dimension L1 loss that ignores NaN targets.

forward(y_pred: Tensor, y_true: Tensor) → tuple[Tensor, Tensor][source]

Compute L1 loss while properly handling NaN values.

Parameters:
  • y_pred (torch.Tensor) – Predictions [batch_size, num_dims]

  • y_true (torch.Tensor) – Ground truth [batch_size, num_dims]

Returns:

(dim_means, mask) - Loss per dimension and validity mask

Return type:

tuple