We lifted 11 functions out of this paper's own repositories and ran 9 of them in a sandbox. "Ran" means the function executed on a synthesized input and returned a value. It is not a reproduction of the paper's results.
| Repository | Role | Ran |
|---|---|---|
| dylan-slack/modeling-uncertainty-local-explainability | pwc_unofficial | 9 of 11 |
| Function | Status | Where it lives |
|---|---|---|
| fill_segmentation | Ran | dylan-slack/modeling-uncertainty-local-explainability/visualization/image_posterior.py code served (permissive licence) · get_code("d359b9f758dfbf7a") |
| get_all_points_less_than_eps | Ran | dylan-slack/modeling-uncertainty-local-explainability/experiments/stability.py code served (permissive licence) · get_code("e7e614ff440495e7") |
| get_creds | Ran | dylan-slack/modeling-uncertainty-local-explainability/experiments/calibration.py code served (permissive licence) · get_code("2ebea4b2b8e58e96") |
| get_epsilon_tightness | Ran | dylan-slack/modeling-uncertainty-local-explainability/experiments/stability.py code served (permissive licence) · get_code("d4260adff9d42932") |
| get_imagenet | Ran | dylan-slack/modeling-uncertainty-local-explainability/bayes/data_routines.py code served (permissive licence) · get_code("9b9aeb04bf81f6f6") |
| get_xtrain | Ran | dylan-slack/modeling-uncertainty-local-explainability/bayes/models.py code served (permissive licence) · get_code("a14c4857f68c99a2") |
| load_image | Ran | dylan-slack/modeling-uncertainty-local-explainability/bayes/data_routines.py code served (permissive licence) · get_code("90517ea60254868b") |
| map_to_list | Ran | dylan-slack/modeling-uncertainty-local-explainability/experiments/stability.py code served (permissive licence) · get_code("d6d888a31a110191") |
| nCk | Ran | dylan-slack/modeling-uncertainty-local-explainability/bayes/explanations.py code served (permissive licence) · get_code("f44b64afd587fa14") |
| get_mnist | Not yet run | dylan-slack/modeling-uncertainty-local-explainability/bayes/data_routines.py code served (permissive licence) · get_code("e947cb61477d2661") |
| process_imagenet_get_model | Not yet run | dylan-slack/modeling-uncertainty-local-explainability/bayes/models.py code served (permissive licence) · get_code("343878ebfe5a34e3") |
Some links come from the archived Papers with Code dataset (CC BY-SA 4.0): attribution and licence.
As black box explanations are increasingly being employed to establish model credibility in high-stakes settings, it is important to ensure that these explanations are accurate and reliable. However, prior work demonstrates that explanations generated by state-of-the-art techniques are inconsistent, unstable, and provide very little insight into their correctness and reliability. In addition, these methods are also computationally inefficient, and require significant hyper-parameter tuning. In this paper, we address the aforementioned challenges by developing a novel Bayesian framework for generating local explanations along with their associated uncertainty. We instantiate this framework to obtain Bayesian versions of LIME and KernelSHAP which output credible intervals for the feature importances, capturing the associated uncertainty. The resulting explanations not only enable us to make concrete inferences about their quality (e.g., there is a 95% chance that the feature importance lies within the given range), but are also highly consistent and stable. We carry out a detailed theoretical analysis that leverages the aforementioned uncertainty to estimate how many perturbations to sample, and how to sample for faster convergence. This work makes the first attempt at addressing several critical issues with popular explanation methods in one shot, thereby generating consistent, stable, and reliable explanations with guarantees in a computationally efficient manner. Experimental evaluation with multiple real world datasets and user studies demonstrate that the efficacy of the proposed framework.
The same record, over MCP at https://syntology.ai/mcp:
get_harvested_code_for_paper("2008.05030")
get_code_for_paper("2008.05030")
have("2008.05030")
Connect an agent — have() is free.