-
Notifications
You must be signed in to change notification settings - Fork 552
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
RF: Make experimental-backend default for regression tasks and deprecate old-backend. #3872
RF: Make experimental-backend default for regression tasks and deprecate old-backend. #3872
Conversation
Co-authored-by: Philip Hyunsu Cho <[email protected]>
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Minor nitpicks. Overall LGTM.
This should only be merged after #3845 ! |
Co-authored-by: Thejaswi. N. S <[email protected]>
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
This should get removed:
CUML_LOG_WARN("Using experimental backend for growing trees\n"); |
I thought so too, @RAMitchell ,but wanted confirmation since that output was being tested; will remove it 👍 |
…-rf-relegate-old-backend
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Changes LGTM.
seems like it was a combination of 2, one of them due to the quoted reason, second is detailed in the issue #3910 . My latest commit closes #3910 |
rerun tests |
rerun tests |
It seems like all the test jobs timed out in the same test (Jenkins UI doesn’t show it): cuml/test/test_random_forest.py::test_rf_regression[special_reg0-1-log2-True-100-float32-1.0]
Build timed out (after 40 minutes). Marking the build as failed. |
I added more tests for the experimental backend in this PR (here), which exposed an unusual problem: seems like setting |
@venkywonka do we have a list of values that could make the tests hang? |
Thanks to @vinaydes , we discovered the bug, it was a regression in regression (again) (sorry) I have patched the fix in this PR #3921 and that should resolve this deadly bug |
@@ -217,10 +221,14 @@ def test_rf_classification(small_clf, datatype, split_algo, | |||
(1, 'sqrt', False, 100), | |||
(1, 1.0, True, 17), | |||
(1, 1.0, True, 32), | |||
(0, 1.0, True, 16), | |||
(1, 1.0, True, 11), | |||
(0, 'auto', True, 128), |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Fantastic news on solving the bug @venkywonka (and @vinaydes) I think we should just add some test cases like n_bins 100 back to have better test coverage and we’re good to merge
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
yep will add them right away!
@@ -341,7 +366,7 @@ def test_rf_classification_float64(small_clf, datatype, convert_dtype): | |||
fil_preds = np.reshape(fil_preds, np.shape(cu_preds)) | |||
|
|||
fil_acc = accuracy_score(y_test, fil_preds) | |||
assert fil_acc >= (cu_acc - 0.02) | |||
assert fil_acc >= (cu_acc - 0.07) |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
May be add a comment here as reminder to restore the old tolerance value later.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
sure will do
…enh-ext-rf-relegate-old-backend
@gpucibot merge |
Codecov Report
@@ Coverage Diff @@
## branch-21.06 #3872 +/- ##
===============================================
Coverage ? 77.30%
===============================================
Files ? 215
Lines ? 17042
Branches ? 0
===============================================
Hits ? 13174
Misses ? 3868
Partials ? 0
Flags with carried forward coverage won't be shown. Click here to find out more. Continue to review full report at Codecov.
|
…ate old-backend. (rapidsai#3872) * This PR follows rapidsai#3845 and resolves rapidsai#3520 * Makes new-backend default for regression tasks. Now, for both classification and regression tasks, experimental-backend (new-backend) is better than old 😀 * Adds deprecation warning when using old-backend in the C++ DecisionTree layer so that the warning reflects for the decision trees C++ API too. * Sets default `n_bins` to 128 * Some docs update * Some python tests update Authors: - Venkat (https://github.com/venkywonka) - Rory Mitchell (https://github.com/RAMitchell) Approvers: - Rory Mitchell (https://github.com/RAMitchell) - Thejaswi. N. S (https://github.com/teju85) - Philip Hyunsu Cho (https://github.com/hcho3) - Dante Gama Dessavre (https://github.com/dantegd) URL: rapidsai#3872
n_bins
to 128