Comments (8)
I'd love this feature!
Is anyone working on this? What would be the scope of implementing this?
from alibi.
Thanks for your interest @frederikfaye ! Support for regression problems is quite an open-ended area and there are many ways to do this, so the scope can be quite broad (e.g. even doing it the obvious way of binning the continuous response into discrete bins can be done in various ways depending on the use case). Do you have any particular use case that you have in mind?
from alibi.
When you say
binning the continuous response into discrete bin
do you mean such that the problem effectively becomes a multiclass classification problem?
I wanted to explain a trained CNN, and I was originally looking at something like a modified GradCAM (e.g. here (see the "Third attempt" section) or here), but the more I look at it, I don't think it would be that informative for my particular problem, as I don't have a naturally defined "center" of my regression target (like angle=0 in the linked-to steering angle problems). I guess SHAP would maybe be a solution, but if you have any other suggestions, please do let me know!
However, I now realize that the thing I would be most interested in would actually be a confidence method for regression models (so sorry that I hijacked this thread, which is about model explanations!).
As far as I can see, trust scores only work for classification tasks. I've instead been looking at the following two papers, but their implementation is pretty model-dependent: Bayesian Uncertainty Estimation for Batch Normalized Deep Networks and A Scalable Laplace Approximation for Neural Networks.
Again, do you have any suggestions? Or maybe these are not in the scope of what Alibi seeks to cover?
Best,
Frederik
from alibi.
do you mean such that the problem effectively becomes a multiclass classification problem?
Yes, if you can find an appropriate way of binning your response variable then you could use all these techniques, e.g. you should be able to use trust scores by binning the response without changing your underlying model.
That being said, confidence methods for regression models are definitely in the roadmap for Alibi, but not the immediate focus. It is a harder problem than classification because if our regressor only returns scalar values there is not much to work with. We are also on the look-out for interesting model-specific (white-box?) methods, in particular the Laplace approx. paper you linked looks very interesting if you have access to the full model.
I think SHAP would be interesting to try, I don't think I've seen an example with regression and image data.
Last note, there is a cool toolbox (https://github.com/albermax/innvestigate) which brings a lot of the methods for inspecting CNNs together (mostly classification though). Some things seem to work better than others, in particular one should be wary of saliency maps for use in explanations (https://arxiv.org/abs/1810.03292) !
from alibi.
Thanks for the suggestions, much appreciated!
I'm curious, what about the Laplace approx. paper caught your interest over the other paper?
from alibi.
Purely because I saw that the other one is BatchNorm specific, so wouldn't generalize to non-image applications! In any case I will have a closer look, also feel free to share any other research you come across as we are on the lookout for good ideas!
from alibi.
Right, makes sense - and will do! :)
from alibi.
ALE
, IntegratedGradients
and SHAP
versions all support regression use cases so closing this for now. Will open a new issue if focus on regression use cases specifically becomes a more strategic direction.
from alibi.
Related Issues (20)
- Report test duration in CI HOT 4
- `sklearn` OHE renaming `sparse` to `sparse_output`
- `sklearn` addition of `normalized_stress` parameter to `manifold.MDS`
- Replace Python 2 type comments with type annotations
- Generate counterfactual for non ml model HOT 3
- Path dependent TreeShap for LightGBM - `fit` and `_build_explanation` HOT 2
- `KernelShap` and `TreeShap` - improper resetting of the predictor HOT 1
- CFRL library generating counterfactual with same label HOT 3
- `KernelShap` redundant/incorrect API for OHE of the categorical features - grouping vs aggregation by summation
- [BUG] 'TfCounterfactualRLDataset' object has no attribute 'max_m' in line 99 because of a typo in definition line 73 HOT 1
- ALE uses deprecated "np.object" and raises AttributeError HOT 2
- ValueError: operands could not be broadcast together with shapes (1,2) (1,14) HOT 1
- `pd.DataFrame.append` has been deprecated in `2.0` - notebook failures
- `permutation_importance_classification_leave.ipynb` notebook failing HOT 2
- `overview.ipynb` notebook failing HOT 1
- `AnchorBase` coverage update for proposed anchor after computation. HOT 2
- `AnchorBase` test updates following coverage update HOT 1
- Anchor Tabular - KeyError in get_features_index HOT 5
- `typing-extensions` 4.6.0 breakage HOT 1
- Predictor attr not properly cleared when saving HOT 2
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from alibi.