hierarchical-dnn-interpretations
Using / reproducing ACD from the paper "Hierarchical interpretations for neural network predictions" 🧠(ICLR 2019)
Science Score: 38.0%
This score indicates how likely this project is to be science-related based on various indicators:
-
✓CITATION.cff file
Found CITATION.cff file -
â—‹codemeta.json file
-
â—‹.zenodo.json file
-
â—‹DOI references
-
✓Academic publication links
Links to: arxiv.org -
✓Committers with academic emails
2 of 2 committers (100.0%) from academic institutions -
â—‹Institutional organization owner
-
â—‹JOSS paper metadata
-
â—‹Scientific vocabulary similarity
Low similarity (16.0%) to scientific vocabulary
Keywords
Repository
Using / reproducing ACD from the paper "Hierarchical interpretations for neural network predictions" 🧠(ICLR 2019)
Basic Info
- Host: GitHub
- Owner: csinva
- License: mit
- Language: Jupyter Notebook
- Default Branch: master
- Homepage: https://arxiv.org/abs/1806.05337
- Size: 48.7 MB
Statistics
- Stars: 129
- Watchers: 8
- Forks: 23
- Open Issues: 2
- Releases: 0
Topics
Metadata Files
readme.md
Hierarchical neural-net interpretations (ACD) ðŸ§
Produces hierarchical interpretations for a single prediction made by a pytorch neural network. Official code for Hierarchical interpretations for neural network predictions (ICLR 2019 pdf).
Documentation • Demo notebooks
Note: this repo is actively maintained. For any questions please file an issue.
examples/documentation
- installation:
pip install acd(or clone and runpython setup.py install) - examples: the reproduce_figs folder has notebooks with many demos
- src: the acd folder contains the source for the method implementation
- allows for different types of interpretations by changing hyperparameters (explained in examples)
- all required data/models/code for reproducing are included in the dsets folder
| Inspecting NLP sentiment models | Detecting adversarial examples | Analyzing imagenet models |
| ---------------------------------- | ----------------------------------- | ----------------------------------- |
|
|
|
|
notes on using ACD on your own data
- the current CD implementation often works out-of-the box, especially for networks built on common layers, such as alexnet/vgg/resnet. However, if you have custom layers or layers not accessible in
net.modules(), you may need to write a custom function to iterate through some layers of your network (for examples seecd.py). - to use baselines such build-up and occlusion, replace the pred_ims function by a function, which gets predictions from your model given a batch of examples.
related work
- CDEP (ICML 2020 pdf, github) - penalizes CD / ACD scores during training to make models generalize better
- TRIM (ICLR 2020 workshop pdf, github) - using simple reparameterizations, allows for calculating disentangled importances to transformations of the input (e.g. assigning importances to different frequencies)
- PDR framework (PNAS 2019 pdf) - an overarching framewwork for guiding and framing interpretable machine learning
- DAC (arXiv 2019 pdf, github) - finds disentangled interpretations for random forests
- Baseline interpretability methods - the file
scores/score_funcs.pyalso contains simple pytorch implementations of integrated gradients and the simple interpration techniquegradient * input
reference
- feel free to use/share this code openly
- if you find this code useful for your research, please cite the following:
r
@inproceedings{
singh2019hierarchical,
title={Hierarchical interpretations for neural network predictions},
author={Chandan Singh and W. James Murdoch and Bin Yu},
booktitle={International Conference on Learning Representations},
year={2019},
url={https://openreview.net/forum?id=SkEqro0ctQ},
}
Owner
- Name: Chandan Singh
- Login: csinva
- Kind: user
- Location: Microsoft research
- Company: Senior researcher
- Website: csinva.io
- Twitter: csinva_
- Repositories: 29
- Profile: https://github.com/csinva
Senior researcher @Microsoft interpreting ML models in science and medicine. PhD from UC Berkeley.
Citation (citation.bib)
@inproceedings{
singh2019hierarchical,
title={Hierarchical interpretations for neural network predictions},
author={Chandan Singh and W. James Murdoch and Bin Yu},
booktitle={International Conference on Learning Representations},
year={2019},
url={https://openreview.net/forum?id=SkEqro0ctQ},
}
GitHub Events
Total
- Watch event: 4
Last Year
- Watch event: 4
Committers
Last synced: 8 months ago
Top Committers
| Name | Commits | |
|---|---|---|
| Chandan Singh | c****h@b****u | 57 |
| Jamie Murdoch | j****h@b****u | 1 |
Committer Domains (Top 20 + Academic)
Issues and Pull Requests
Last synced: 7 months ago
All Time
- Total issues: 9
- Total pull requests: 0
- Average time to close issues: 2 months
- Average time to close pull requests: N/A
- Total issue authors: 8
- Total pull request authors: 0
- Average comments per issue: 2.0
- Average comments per pull request: 0
- Merged pull requests: 0
- Bot issues: 0
- Bot pull requests: 0
Past Year
- Issues: 0
- Pull requests: 0
- Average time to close issues: N/A
- Average time to close pull requests: N/A
- Issue authors: 0
- Pull request authors: 0
- Average comments per issue: 0
- Average comments per pull request: 0
- Merged pull requests: 0
- Bot issues: 0
- Bot pull requests: 0
Top Authors
Issue Authors
- pidahbus (2)
- nsaphra (1)
- cvrmurthy (1)
- LinkToPast1990 (1)
- sopankhosla (1)
- mahiidharv (1)
- yezhengli-Mr9 (1)
- neeps (1)
Pull Request Authors
Top Labels
Issue Labels
Pull Request Labels
Packages
- Total packages: 1
-
Total downloads:
- pypi 54 last-month
- Total dependent packages: 0
- Total dependent repositories: 1
- Total versions: 2
- Total maintainers: 1
pypi.org: acd
Hierarchical interpretatations and contextual decomposition in pytorch
- Homepage: https://github.com/csinva/hierarchical-dnn-interpretations
- Documentation: https://acd.readthedocs.io/
- License: MIT License
-
Latest release: 0.0.2
published about 5 years ago
Rankings
Maintainers (1)
Dependencies
- numpy *
- scikit-image *
- scipy *
- torch *
- tqdm *