-
Notifications
You must be signed in to change notification settings - Fork 3.8k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
[RFC] Inconsistent behavior when a single-leaf tree is encountered #5051
Labels
Comments
I think option 2 is better. |
Strongly agree. |
Thanks for writing this up and for the description in #4708 (comment)! I think option 2 is preferable. Encountering a single-leaf tree doesn't necessarily mean that training should stop. I'd expect future boosting rounds could still find informative splits in some situations, like:
|
@jameslamb Thanks. Then let's go to option 2. |
Samsagax
added a commit
to Samsagax/LightGBM
that referenced
this issue
Feb 4, 2023
As per discussion on GH-microsoft#5051 and GH-microsoft#5193 the python package does not stop training if a single leaf tree (stupm) is found and relies on early stopping methods to stop training. This commits removes the finish condition on training based on the result of `TrainOneIter()` and sets the `is_finished` flag on early stopping alone.
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Description
With a single-leaf tree, CLI version stops training at once. But Python API continues to train.
Reproducible example
Example by @arnocandel in #4708.
Additional Comments
We have two choices:
- sum_of_gradients/sum_of_hessians
in the root node, which is now not calculated.Gently ping @guolinke @jameslamb @StrikerRUS @hzy46 @btrotta for your opinion.
The text was updated successfully, but these errors were encountered: