diff --git a/climax/core/loss.py b/climax/core/loss.py
index 43e2f127339ffff169079375cebe54e48e51b438..4758b46e43289ec59df92cf24cbd42f8248917b4 100644
--- a/climax/core/loss.py
+++ b/climax/core/loss.py
@@ -199,4 +199,5 @@ class BernoulliWeibullLoss(NaNLoss):
                           (gshape - 1) * torch.log(y_true + self.epsilon) -
                           (y_true / (gscale + self.epsilon)) ** gshape)
 
-        return self.reduce(loss)
+        # handle +-infinity values resulting from initialization
+        return self.reduce(loss[torch.isfinite(loss)])