Skip to content
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

Support cuML / scikit-learn RF classifiers in TreeExplainer #4447

Merged
merged 30 commits into from
Jan 26, 2022

Conversation

hcho3
Copy link
Contributor

@hcho3 hcho3 commented Dec 14, 2021

Add support for:

  • cuML RF classifiers
  • scikit-learn RF regressors
  • scikit-learn RF classifiers

TODOs

  • Add test cases
  • De-duplicate path extraction logic

Requires dmlc/treelite#330

@github-actions github-actions bot added CUDA/C++ Cython / Python Cython or Python issue labels Dec 14, 2021
@hcho3 hcho3 added improvement Improvement / enhancement to an existing function non-breaking Non-breaking change labels Dec 14, 2021
@hcho3 hcho3 changed the title [WIP] Support cuML RF classifier in TreeExplainer [WIP] Support cuML RF / scikit-learn classifiers in TreeExplainer Dec 14, 2021
@hcho3 hcho3 changed the title [WIP] Support cuML RF / scikit-learn classifiers in TreeExplainer [WIP] Support cuML / scikit-learn RF classifiers in TreeExplainer Dec 14, 2021
@hcho3
Copy link
Contributor Author

hcho3 commented Dec 17, 2021

rerun tests

@caryr35 caryr35 added this to PR-WIP in v22.02 Release via automation Dec 20, 2021
@hcho3 hcho3 changed the title [WIP] Support cuML / scikit-learn RF classifiers in TreeExplainer Support cuML / scikit-learn RF classifiers in TreeExplainer Dec 22, 2021
@hcho3 hcho3 marked this pull request as ready for review December 22, 2021 01:52
@hcho3 hcho3 requested a review from a team as a code owner January 14, 2022 02:02
Copy link
Member

@ajschmidt8 ajschmidt8 left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Looks like this PR also includes changes from #4484. Is that intentional? If so, we'll need to wait for that to merge before this can merge.

@hcho3
Copy link
Contributor Author

hcho3 commented Jan 18, 2022

@ajschmidt8 Yes, this is intentional, to show that the proposed changes in this PR are valid. We will need to wait until #4484 is merged.

@hcho3
Copy link
Contributor Author

hcho3 commented Jan 19, 2022

Undoing accidentally pushed commits that should have been directed to #4473

@hcho3
Copy link
Contributor Author

hcho3 commented Jan 19, 2022

rerun tests

1 similar comment
@hcho3
Copy link
Contributor Author

hcho3 commented Jan 20, 2022

rerun tests

rapids-bot bot pushed a commit that referenced this pull request Jan 25, 2022
The 2.2.0 version of Treelite incorporates the following major improvements:

* dmlc/treelite#314
* dmlc/treelite#322, dmlc/treelite#327
* dmlc/treelite#325
* dmlc/treelite#332
* dmlc/treelite#330
* dmlc/treelite#333
* dmlc/treelite#334
* dmlc/treelite#304
* dmlc/treelite#335

In particular, dmlc/treelite#332, dmlc/treelite#330, dmlc/treelite#333 are required for #4447.

Requires rapidsai/integration#412.

EDIT. Using 2.2.1 patch release, to incorporate a hotfix (dmlc/treelite#340).

Authors:
  - Philip Hyunsu Cho (https://github.com/hcho3)

Approvers:
  - AJ Schmidt (https://github.com/ajschmidt8)
  - Dante Gama Dessavre (https://github.com/dantegd)

URL: #4484
@github-actions github-actions bot removed conda conda issue CMake labels Jan 25, 2022
v22.02 Release automation moved this from PR-Needs review to PR-Reviewer approved Jan 25, 2022
@github-actions github-actions bot removed the gpuCI gpuCI issue label Jan 25, 2022
@hcho3
Copy link
Contributor Author

hcho3 commented Jan 25, 2022

@dantegd Can we merge this after the CI passes? @wphicks already reviewed this PR and approved it.

@dantegd
Copy link
Member

dantegd commented Jan 25, 2022

@gpucibot merge

@dantegd
Copy link
Member

dantegd commented Jan 26, 2022

rerun tests

@codecov-commenter
Copy link

Codecov Report

❗ No coverage uploaded for pull request base (branch-22.02@2cc2d69). Click here to learn what that means.
The diff coverage is n/a.

Impacted file tree graph

@@               Coverage Diff               @@
##             branch-22.02    #4447   +/-   ##
===============================================
  Coverage                ?   85.68%           
===============================================
  Files                   ?      236           
  Lines                   ?    19334           
  Branches                ?        0           
===============================================
  Hits                    ?    16567           
  Misses                  ?     2767           
  Partials                ?        0           
Flag Coverage Δ
dask 46.52% <0.00%> (?)
non-dask 78.58% <0.00%> (?)

Flags with carried forward coverage won't be shown. Click here to find out more.


Continue to review full report at Codecov.

Legend - Click here to learn more
Δ = absolute <relative> (impact), ø = not affected, ? = missing data
Powered by Codecov. Last update 2cc2d69...cdb46d3. Read the comment docs.

@hcho3
Copy link
Contributor Author

hcho3 commented Jan 26, 2022

@rapidsai/cuml-cmake-codeowners Can I get approval from one of you so that this can be merged?

@rapids-bot rapids-bot bot merged commit 3ccf77f into rapidsai:branch-22.02 Jan 26, 2022
v22.02 Release automation moved this from PR-Reviewer approved to Done Jan 26, 2022
rapids-bot bot pushed a commit that referenced this pull request Jan 28, 2022
Stacked on top of #4447. Do not merge until #4447 is merged first.

~If you'd like to review before #4447 is merged, look at the net diff at hcho3#2.~

- [x] Test XGBoost models with categorical splits
- [x] Test LightGBM models with categorical splits

Authors:
  - Philip Hyunsu Cho (https://github.com/hcho3)

Approvers:
  - Dante Gama Dessavre (https://github.com/dantegd)

URL: #4473
vimarsh6739 pushed a commit to vimarsh6739/cuml that referenced this pull request Oct 9, 2023
The 2.2.0 version of Treelite incorporates the following major improvements:

* dmlc/treelite#314
* dmlc/treelite#322, dmlc/treelite#327
* dmlc/treelite#325
* dmlc/treelite#332
* dmlc/treelite#330
* dmlc/treelite#333
* dmlc/treelite#334
* dmlc/treelite#304
* dmlc/treelite#335

In particular, dmlc/treelite#332, dmlc/treelite#330, dmlc/treelite#333 are required for rapidsai#4447.

Requires rapidsai/integration#412.

EDIT. Using 2.2.1 patch release, to incorporate a hotfix (dmlc/treelite#340).

Authors:
  - Philip Hyunsu Cho (https://github.com/hcho3)

Approvers:
  - AJ Schmidt (https://github.com/ajschmidt8)
  - Dante Gama Dessavre (https://github.com/dantegd)

URL: rapidsai#4484
vimarsh6739 pushed a commit to vimarsh6739/cuml that referenced this pull request Oct 9, 2023
…#4447)

Add support for:
- [x] cuML RF classifiers
- [x] scikit-learn RF regressors
- [x] scikit-learn RF classifiers

TODOs
- [x] Add test cases
- [x] De-duplicate path extraction logic

Requires dmlc/treelite#330

Authors:
  - Philip Hyunsu Cho (https://github.com/hcho3)

Approvers:
  - William Hicks (https://github.com/wphicks)
  - Dante Gama Dessavre (https://github.com/dantegd)

URL: rapidsai#4447
vimarsh6739 pushed a commit to vimarsh6739/cuml that referenced this pull request Oct 9, 2023
Stacked on top of rapidsai#4447. Do not merge until rapidsai#4447 is merged first.

~If you'd like to review before rapidsai#4447 is merged, look at the net diff at hcho3#2.~

- [x] Test XGBoost models with categorical splits
- [x] Test LightGBM models with categorical splits

Authors:
  - Philip Hyunsu Cho (https://github.com/hcho3)

Approvers:
  - Dante Gama Dessavre (https://github.com/dantegd)

URL: rapidsai#4473
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
CUDA/C++ Cython / Python Cython or Python issue improvement Improvement / enhancement to an existing function non-breaking Non-breaking change
Projects
No open projects
Development

Successfully merging this pull request may close these issues.

None yet

5 participants