-
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
Lightgbm CPU learner error - lightgbm.basic.LightGBMError: Check failed: (best_split_info.left_count) > (0) #3489
Comments
Thanks @diditforlulz273
could you share the raw data or NumPy format data? |
I guess the problem could be in different versions of Pandas and python's underlying pickle part. Sharing numpy arrays is nearly impossible - train dataframe has ~54 columns. |
@diditforlulz273 I found the root cause you cannot set both |
@guolinke Well, indeed, this combination looks stupid, my bad. I used this tiny dataset in some of my integration tests, and, I guess, set all the possible constraints to 0 to make LightGBM build at least some trees and predict something reproducible. Anyway, it worked out well in 2.3.1 version :) |
This issue has been automatically locked since there has not been any recent activity since it was closed. To start a new related discussion, open a new issue at https://github.com/microsoft/LightGBM/issues including a reference to this. |
How you are using LightGBM?
LightGBM component:
Environment info
Operating System:
Ubuntu 20.04
CPU/GPU model:
Threadripper 1920x
C++ compiler version:
gcc version 9.3.0 (Ubuntu 9.3.0-17ubuntu1~20.04)
CMake version:
3.16.3
Java version:
Python version:
3.8.5
R version:
Other:
LightGBM version or commit hash:
Version: 3.0.0
Error message and / or logs
@guolinke Have just built it from the latest master branch, still fails. I'll try to separate a minimum reproducible example and create an issue then.
Originally posted by @diditforlulz273 in #2793 (comment)
[LightGBM] [Fatal] Check failed: (best_split_info.left_count) > (0) at /__w/1/s/python-package/compile/src/treelearner/serial_tree_learner.cpp, line 630 .
Traceback (most recent call last):
File "/home/seva/PycharmProjects/ECOM_demand/lgbm_mre.py", line 41, in
model = lgb.train(lgb_params, train_dat, valid_sets=test_dat, verbose_eval=20)
File "/home/seva/PycharmProjects/ECOM_demand/venv/lib/python3.8/site-packages/lightgbm/engine.py", line 252, in train
booster.update(fobj=fobj)
File "/home/seva/PycharmProjects/ECOM_demand/venv/lib/python3.8/site-packages/lightgbm/basic.py", line 2370, in update
_safe_call(_LIB.LGBM_BoosterUpdateOneIter(
File "/home/seva/PycharmProjects/ECOM_demand/venv/lib/python3.8/site-packages/lightgbm/basic.py", line 55, in _safe_call
raise LightGBMError(decode_string(_LIB.LGBM_GetLastError()))
lightgbm.basic.LightGBMError: Check failed: (best_split_info.left_count) > (0) at /__w/1/s/python-package/compile/src/treelearner/serial_tree_learner.cpp, line 630 .
Reproducible example(s)
Archive with code and pickled datasets, 4.5 kb total (lol really a MINIMAL reproducible example)
https://drive.google.com/file/d/1y04Z_11Ce-sETRZPfwjBEBY-aSOMBcHK/view?usp=sharing
Steps to reproduce
1.Run it on lgbm==3.0.0
2. ?????
3. NO PROFIT!
4. Run on lgbm==2.3.1
5.?????
6. PROFIT!
The text was updated successfully, but these errors were encountered: