TemporalLoss

class lightning_pose.losses.losses.TemporalLoss(data_module: BaseDataModule | UnlabeledDataModule | None = None, epsilon: float | List[float] = 0.0, prob_threshold: float = 0.0, log_weight: float = 0.0, **kwargs)[source]

Bases: Loss

Penalize temporal differences for each target.

Motion model: x_t = x_(t-1) + e_t, e_t ~ N(0, s)

Methods Summary

__call__(keypoints_pred[, confidences, stage])

Call self as a function.

compute_loss(predictions)

rectify_epsilon(loss)

Rectify supporting a list of epsilons, one per bodypart.

remove_nans(loss, confidences)

Methods Documentation

__call__(keypoints_pred: Tensor[Tensor], confidences: Tensor[Tensor] | None = None, stage: Literal['train', 'val', 'test'] | None = None, **kwargs) Tuple[Tensor[Tensor], List[dict]][source]

Call self as a function.

compute_loss(predictions: Tensor[Tensor]) Tensor[Tensor][source]
rectify_epsilon(loss: Tensor[Tensor]) Tensor[Tensor][source]

Rectify supporting a list of epsilons, one per bodypart. Not implemented in Loss class, because shapes of broadcasting may vary

remove_nans(loss: Tensor[Tensor], confidences: Tensor[Tensor]) Tensor[Tensor][source]