-
Notifications
You must be signed in to change notification settings - Fork 52
Cat Boost Support for TreeExplainer #97
Copy link
Copy link
Open
Labels
explainer 🔍All issues that are linked to explainersAll issues that are linked to explainersfeature 💡New feature or enhancement requestNew feature or enhancement requesthelp wanted 🙏Extra attention is neededExtra attention is needed
Milestone
Metadata
Metadata
Labels
explainer 🔍All issues that are linked to explainersAll issues that are linked to explainersfeature 💡New feature or enhancement requestNew feature or enhancement requesthelp wanted 🙏Extra attention is neededExtra attention is needed
Projects
Status
🏗 In progress
Description
We should support the python version of CatBoost in our TreeExplainer.
To do so, we need to write a conversion mechanism akin to our other converters, which can be found here and incorporate it in our validation step. The converters transform the tree structures inside of the original API's structure into our own
TreeModelorlist[TreeModel]which is then used inside theTreeExplainer.For reference, one can take a look at our LightGBM transform or into shap's transformation using the
CatBoostTreeModelLoaderwhich is getting called here.Important for this is that we do not run into import errors when users do not have CatBoost installed. This means we do not have
import catboostlying around in files that get imported when they should not get imported. To fix this, either add the import statements inside function calls that only get run where it's supposed to.Tasks
To close this issue we would need the following then:
pyproject.toml's optional dependencies list.