Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- def focal_loss_lgb(y_pred, dtrain, alpha, gamma):
- a,g = alpha, gamma
- y_true = dtrain.label
- def fl(x,t):
- p = 1/(1+np.exp(-x))
- return -( a*t + (1-a)*(1-t) ) * (( 1 - ( t*p + (1-t)*(1-p)) )**g) * ( t*np.log(p)+(1-t)*np.log(1-p) )
- partial_fl = lambda x: fl(x, y_true)
- grad = derivative(partial_fl, y_pred, n=1, dx=1e-6)
- hess = derivative(partial_fl, y_pred, n=2, dx=1e-6)
- return grad, hess
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement