hierarchical-dnn-interpretations

Using / reproducing ACD from the paper "Hierarchical interpretations for neural network predictions" 🧠 (ICLR 2019)

https://github.com/csinva/hierarchical-dnn-interpretations

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

acd ai artificial-intelligence convolutional-neural-networks data-science deep-learning deep-neural-networks explainability explainable-ai feature-importance iclr interpretability interpretation jupyter-notebook machine-learning ml neural-network python pytorch statistics
Last synced: 6 months ago · JSON representation ·

Repository

Using / reproducing ACD from the paper "Hierarchical interpretations for neural network predictions" 🧠 (ICLR 2019)

Basic Info
Statistics
  • Stars: 129
  • Watchers: 8
  • Forks: 23
  • Open Issues: 2
  • Releases: 0
Topics
acd ai artificial-intelligence convolutional-neural-networks data-science deep-learning deep-neural-networks explainability explainable-ai feature-importance iclr interpretability interpretation jupyter-notebook machine-learning ml neural-network python pytorch statistics
Created almost 8 years ago · Last pushed over 4 years ago
Metadata Files
Readme License Citation

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 run python 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 see cd.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.py also contains simple pytorch implementations of integrated gradients and the simple interpration technique gradient * 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

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

All Time
  • Total Commits: 58
  • Total Committers: 2
  • Avg Commits per committer: 29.0
  • Development Distribution Score (DDS): 0.017
Past Year
  • Commits: 0
  • Committers: 0
  • Avg Commits per committer: 0.0
  • Development Distribution Score (DDS): 0.0
Top Committers
Name Email 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
question (3) enhancement (1)
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

  • Versions: 2
  • Dependent Packages: 0
  • Dependent Repositories: 1
  • Downloads: 54 Last month
Rankings
Stargazers count: 6.6%
Forks count: 8.2%
Dependent packages count: 10.1%
Average: 13.9%
Dependent repos count: 21.5%
Downloads: 23.3%
Maintainers (1)
Last synced: 7 months ago

Dependencies

setup.py pypi
  • numpy *
  • scikit-image *
  • scipy *
  • torch *
  • tqdm *