gam

GAM (Global Attribution Mapping) explains the landscape of neural network predictions across subpopulations

https://github.com/capitalone/global-attribution-mapping

Science Score: 36.0%

This score indicates how likely this project is to be science-related based on various indicators:

  • CITATION.cff file
  • codemeta.json file
    Found codemeta.json file
  • .zenodo.json file
    Found .zenodo.json file
  • DOI references
  • Academic publication links
    Links to: arxiv.org
  • Committers with academic emails
  • Institutional organization owner
  • JOSS paper metadata
  • Scientific vocabulary similarity
    Low similarity (10.0%) to scientific vocabulary

Keywords

explainable-ai explainable-ml neural-networks
Last synced: 6 months ago · JSON representation

Repository

GAM (Global Attribution Mapping) explains the landscape of neural network predictions across subpopulations

Basic Info
  • Host: GitHub
  • Owner: capitalone
  • License: apache-2.0
  • Language: Python
  • Default Branch: master
  • Homepage:
  • Size: 3.64 MB
Statistics
  • Stars: 34
  • Watchers: 11
  • Forks: 25
  • Open Issues: 14
  • Releases: 4
Topics
explainable-ai explainable-ml neural-networks
Created about 7 years ago · Last pushed 7 months ago
Metadata Files
Readme License Codeowners Roadmap

README.md

GAM (Global Attribution Mapping)

Global Explanations for Deep Neural Networks

GAM explains the landscape of model predictions across subpopulations. This implementation is based on "Global Explanations for Neural Networks: Mapping the Landscape of Predictions" (AAAI/ACM AIES 2019). GAM is a method for clustering any set of local attributions - it is agnostic to the choice of model architecture and XAI method.

Installation

sh python3 -m pip install gam

Get Started

First generate local attributions using your favorite technique, then:

```Python

from gam.gam import GAM

for a quick example use attributions_path="tests/test_attributes.csv"

Input/Output: csv (columns: features, rows: local/global attribution)

gam = GAM(attributionspath="<pathtoyourattributes>.csv", distance="spearman", k=2) gam.generate() gam.explanations [[('height', .6), ('weight', .3), ('hair color', .1)], [('weight', .9), ('weight', .05), ('hair color', .05)]]

gam.subpopulation_sizes [90, 10]

gam.subpopulations

global explanation assignment

[0, 1, 0, 0,...]

gam.plot()

bar chart of feature importance with subpopulation size

```

Tests

To run tests: bash $ python -m pytest tests/

Contributors

We welcome Your interest in Capital One’s Open Source Projects (the “Project”). Any Contributor to the Project must accept and sign an Agreement indicating agreement to the license terms below. Except for the license granted in this Agreement to Capital One and to recipients of software distributed by Capital One, You reserve all right, title, and interest in and to Your Contributions; this Agreement does not impact Your rights to use Your own Contributions for any other purpose.

Sign the Individual Agreement

Sign the Corporate Agreement

Code of Conduct

This project adheres to the Open Code of Conduct By participating, you are expected to honor this code.

Owner

  • Name: Capital One
  • Login: capitalone
  • Kind: organization
  • Email: opensource@capitalone.com
  • Location: McLean, VA

We’re an open source-first organization — actively using, contributing to and managing open source software projects.

GitHub Events

Total
  • Issues event: 5
  • Delete event: 2
  • Push event: 2
  • Pull request review event: 2
  • Pull request event: 3
  • Fork event: 1
  • Create event: 3
Last Year
  • Issues event: 5
  • Delete event: 2
  • Push event: 2
  • Pull request review event: 2
  • Pull request event: 3
  • Fork event: 1
  • Create event: 3

Committers

Last synced: 9 months ago

All Time
  • Total Commits: 95
  • Total Committers: 11
  • Avg Commits per committer: 8.636
  • Development Distribution Score (DDS): 0.716
Past Year
  • Commits: 3
  • Committers: 1
  • Avg Commits per committer: 3.0
  • Development Distribution Score (DDS): 0.0
Top Committers
Name Email Commits
markymarkdaviss m****4@g****m 27
jnm703 b****r@c****m 26
Robert Reilly r****7@g****m 22
Samuel Sharpe s****e@c****m 6
danielbarcklow 1****w 4
marksibrahim m****m@g****m 3
Gil Forsyth g****h 2
Ceena Modarres c****m@C****l 2
whitesource-bolt-for-github[bot] 4****] 1
tmbjmu 5****u 1
Santhi S S****n 1
Committer Domains (Top 20 + Academic)

Issues and Pull Requests

Last synced: 6 months ago

All Time
  • Total issues: 41
  • Total pull requests: 73
  • Average time to close issues: 3 months
  • Average time to close pull requests: 10 days
  • Total issue authors: 9
  • Total pull request authors: 14
  • Average comments per issue: 0.41
  • Average comments per pull request: 0.32
  • Merged pull requests: 56
  • Bot issues: 26
  • Bot pull requests: 12
Past Year
  • Issues: 5
  • Pull requests: 4
  • Average time to close issues: about 1 month
  • Average time to close pull requests: 15 minutes
  • Issue authors: 1
  • Pull request authors: 1
  • Average comments per issue: 0.0
  • Average comments per pull request: 0.0
  • Merged pull requests: 3
  • Bot issues: 5
  • Bot pull requests: 0
Top Authors
Issue Authors
  • mend-bolt-for-github[bot] (12)
  • mend-for-github-com[bot] (12)
  • rreilly10 (8)
  • tazitoo (2)
  • markymarkdavis (1)
  • cbbruss (1)
  • BrunoGomesCoelho (1)
  • ashraym (1)
  • justin5927 (1)
Pull Request Authors
  • rreilly10 (17)
  • tazitoo (14)
  • mend-for-github-com[bot] (10)
  • danielbarcklow (10)
  • markymarkdavis (9)
  • ashraym (4)
  • ssharpe42 (4)
  • tmbjmu (2)
  • gforsyth (2)
  • mend-bolt-for-github[bot] (1)
  • hleerighter (1)
  • marksibrahim (1)
  • ceenam (1)
  • dependabot[bot] (1)
Top Labels
Issue Labels
Mend: dependency security vulnerability (24) enhancement (10) good first issue (2) documentation (1)
Pull Request Labels
enhancement (7) Mend: dependency security vulnerability (3) documentation (1) security fix (1) dependencies (1)

Packages

  • Total packages: 1
  • Total downloads:
    • pypi 237 last-month
  • Total dependent packages: 0
  • Total dependent repositories: 1
  • Total versions: 6
  • Total maintainers: 4
pypi.org: gam

Global Explanations for Deep Neural Networks

  • Versions: 6
  • Dependent Packages: 0
  • Dependent Repositories: 1
  • Downloads: 237 Last month
Rankings
Forks count: 7.8%
Dependent packages count: 10.0%
Stargazers count: 11.4%
Average: 13.8%
Downloads: 17.9%
Dependent repos count: 21.7%
Last synced: 6 months ago