-
-
Notifications
You must be signed in to change notification settings - Fork 26.9k
Log Loss gradient and hessian returns NaN for large negative values #28046
Copy link
Copy link
Closed
Labels
Description
Describe the bug
The private HalfBinomialLoss gradient and hessian returns np.NaN for large negative values of raw_prediction:
gradientgradient_hessian
Only theloss_gradientreturns the correct gradient.
Steps/Code to Reproduce
import numpy as np
from sklearn._loss import HalfBinomialLoss
loss = HalfBinomialLoss()
y_true, raw = np.array([1.]), np.array([-1e3])
[
loss.gradient(y_true, raw),
loss.loss_gradient(y_true, raw),
loss.gradient_hessian(y_true, raw),
]Expected Results
gradient = -1 and hessian = 0
Actual Results
[array([nan]), (array([1000.]), array([-1.])), (array([nan]), array([nan]))]
Versions
sklearn: 1.3.2Reactions are currently unavailable