xai-in-digital-pathology

Public code repository for survey deployment (React.js/Node.js/MongoDB) and data processing (Python/Jupyter) for the journal paper "The Explainability Paradox: Challenges for xAI in Digital Pathology" (2022) FGCS Special Issue on xAI in healthcare

https://github.com/theodore-evans/xai-in-digital-pathology

Science Score: 67.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
    Found codemeta.json file
  • .zenodo.json file
    Found .zenodo.json file
  • DOI references
    Found 8 DOI reference(s) in README
  • Academic publication links
    Links to: zenodo.org
  • Academic email domains
  • Institutional organization owner
  • JOSS paper metadata
  • Scientific vocabulary similarity
    Low similarity (10.9%) to scientific vocabulary
Last synced: 10 months ago · JSON representation ·

Repository

Public code repository for survey deployment (React.js/Node.js/MongoDB) and data processing (Python/Jupyter) for the journal paper "The Explainability Paradox: Challenges for xAI in Digital Pathology" (2022) FGCS Special Issue on xAI in healthcare

Basic Info
  • Host: GitHub
  • Owner: theodore-evans
  • License: gpl-3.0
  • Language: HTML
  • Default Branch: main
  • Homepage:
  • Size: 83 MB
Statistics
  • Stars: 1
  • Watchers: 1
  • Forks: 1
  • Open Issues: 19
  • Releases: 2
Created almost 5 years ago · Last pushed about 1 year ago
Metadata Files
Readme License Citation

README.md

The explainability paradox: Challenges for xAI in digital pathology CODE REPOSITORY

DOI

Online questionnaire data and data processing, supporting:

Evans, T., Retzlaff, C., Geißler, C., Kargl, M., Plass, M., & Müller, H. et al. (2022). The explainability paradox: Challenges for xAI in digital pathology. Future Generation Computer Systems. doi: 10.1016/j.future.2022.03.009

Data analysis is available in the accompanying Jupyter notebook

Questionnaire contents

  • User profiling questions, collecting data on usage of and familiarity with AI applications in pathology, and with machine learning in general
  • 7 example implementations of explainability methods on a sample Ki-67 app output, with 4 Likert-scale feedback questions to evaluate intelligibility, informativeness and value to user.

Viewing the survey

git clone https://github.com/theodore-evans/xai-in-digital-pathology.git cd xai-in-digital-pathology/frontend npm i npm start Open http://localhost:3000/ in your web browser

Explanation examples

| Name | Description | | | | |------------|--------------------|----------------|-|-| | Saliency Map (Local) | Show the most relevant pixels for the classification of a selected annotation ||| | | Saliency Map (Global) | Show the most relevant pixels for the positive classifications within this region of interest ||| | | Concept Attribution | Show the most important features attributed to positive classifications || | | | Prototypes | Show prototypical positively and negatively classified annotations within this region || | | | Counteractuals (One-axis) | Show generated examples interpolating between positive and negative examples, showing model classifications for each || | | | Counteractuals (Two-axis) | Show generated examples changing in two principal factors of variation, showing model classifications for each || | | | Trust Scores | Display low-confidence annotations for review || | |

Additional info

Sample Ki-67 model: PathnoNet, trained for 20 epochs on the training set of SHIDC-B-Ki-67-V1.0 and demonstrated with the test set of the same dataset.

GradCAM heatmap generated using Neuroscope-1.0

Example interpolations mocked up using DiffMorph

All other graphics created with GIMP

For more detail on example creation, please refer to Method > Questionnaire design in Evans et Al (2022)

This survey is build in React.js using survey.js. The project was adapted from SurveyJS for React quickstart project Public code repo for FGCS Special Issue on xAI in healthcare

Owner

  • Login: theodore-evans
  • Kind: user
  • Location: Berlin

Citation (CITATION.cff)

cff-version: 1.2.0
message: "If you use these results, please cite it accordingly."
authors:
- family-names: "Evans"
  given-names: "Theodore"
  orcid: "https://orcid.org/0000-0003-0548-0421"
- family-names: "Retzlaff"
  given-names: "Carl Orge"
  orcid: "https://orcid.org/0000-0002-0139-2590"
title: "xAI in Digital Pathology"
version: 1.0.0
doi: 10.5281/zenodo.6205286
date-released: 2022-02-21
url: "https://github.com/theodore-evans/xai-in-digital-pathology"

GitHub Events

Total
  • Push event: 2
  • Pull request event: 3
  • Create event: 3
Last Year
  • Push event: 2
  • Pull request event: 3
  • Create event: 3

Issues and Pull Requests

Last synced: 10 months ago

All Time
  • Total issues: 0
  • Total pull requests: 2
  • Average time to close issues: N/A
  • Average time to close pull requests: N/A
  • Total issue authors: 0
  • Total pull request authors: 1
  • Average comments per issue: 0
  • Average comments per pull request: 0.0
  • Merged pull requests: 0
  • Bot issues: 0
  • Bot pull requests: 0
Past Year
  • Issues: 0
  • Pull requests: 2
  • Average time to close issues: N/A
  • Average time to close pull requests: N/A
  • Issue authors: 0
  • Pull request authors: 1
  • Average comments per issue: 0
  • Average comments per pull request: 0.0
  • Merged pull requests: 0
  • Bot issues: 0
  • Bot pull requests: 0
Top Authors
Issue Authors
Pull Request Authors
  • theodore-evans (6)
Top Labels
Issue Labels
Pull Request Labels

Dependencies

backend/package-lock.json npm
  • 219 dependencies
backend/package.json npm
  • body-parser ^1.19.0
  • content-filter ^1.1.2
  • cors ^2.8.5
  • dotenv ^10.0.0
  • express ^4.17.3
  • mongo-sanitize ^1.1.0
  • mongoose ^5.13.14
  • nodemon ^2.0.7
  • path ^0.12.7
  • router ^1.3.6
  • serve-favicon ^2.5.0
frontend/package-lock.json npm
  • 670 dependencies
frontend/package.json npm
  • @babel/core ^7.14.3 development
  • @babel/preset-env ^7.14.4 development
  • @babel/preset-react ^7.13.13 development
  • babel-loader ^8.2.2 development
  • copy-webpack-plugin ^9.0.0 development
  • css-loader ^5.2.6 development
  • file-loader ^6.2.0 development
  • html-webpack-plugin ^5.3.1 development
  • prettier ^2.3.0 development
  • style-loader ^2.0.0 development
  • url-loader ^4.1.1 development
  • webpack ^5.38.1 development
  • webpack-cli ^4.7.0 development
  • webpack-dev-server ^3.11.0 development
  • webpack-manifest-plugin ^3.1.1 development
  • bootstrap ^5.0.1
  • react ^16.14.0
  • react-dom ^16.14.0
  • survey-react ^1.9.23
DataProcessing/poetry.lock pypi
  • appnope 0.1.2
  • argon2-cffi 21.1.0
  • attrs 21.2.0
  • backcall 0.2.0
  • bleach 4.1.0
  • cffi 1.15.0
  • colorama 0.4.4
  • colorlover 0.3.0
  • cycler 0.10.0
  • debugpy 1.5.1
  • decorator 5.1.0
  • defusedxml 0.7.1
  • entrypoints 0.3
  • ipykernel 6.4.2
  • ipython 7.30.0
  • ipython-genutils 0.2.0
  • ipywidgets 7.6.5
  • jedi 0.18.1
  • jinja2 3.0.3
  • jsonschema 3.2.0
  • jupyter 1.0.0
  • jupyter-client 7.1.0
  • jupyter-console 6.4.0
  • jupyter-core 4.7.1
  • jupyterlab-pygments 0.1.2
  • jupyterlab-widgets 1.0.2
  • kaleido 0.2.1
  • kiwisolver 1.3.1
  • markupsafe 2.0.1
  • matplotlib 3.4.2
  • matplotlib-inline 0.1.3
  • mistune 0.8.4
  • nbclient 0.5.9
  • nbconvert 6.3.0
  • nbformat 5.1.3
  • nest-asyncio 1.5.1
  • notebook 6.4.10
  • numpy 1.21.0
  • packaging 21.3
  • pandas 1.2.5
  • pandocfilters 1.5.0
  • parso 0.8.2
  • pexpect 4.8.0
  • pickleshare 0.7.5
  • pillow 9.0.1
  • plotly 5.0.0
  • prometheus-client 0.12.0
  • prompt-toolkit 3.0.23
  • ptyprocess 0.7.0
  • py 1.11.0
  • pycparser 2.21
  • pygments 2.10.0
  • pyparsing 2.4.7
  • pyrsistent 0.17.3
  • python-dateutil 2.8.1
  • pytz 2021.1
  • pywin32 301
  • pywinpty 1.1.6
  • pyzmq 22.3.0
  • qtconsole 5.2.1
  • qtpy 1.11.2
  • send2trash 1.8.0
  • six 1.16.0
  • tenacity 7.0.0
  • terminado 0.12.1
  • testpath 0.5.0
  • tornado 6.1
  • traitlets 5.0.5
  • wcwidth 0.2.5
  • webencodings 0.5.1
  • widgetsnbextension 3.5.2
DataProcessing/pyproject.toml pypi
  • colorlover ^0.3.0
  • jupyter ^1.0.0
  • kaleido 0.2.1
  • matplotlib ^3.4.2
  • nbformat ^5.1.3
  • pandas ^1.2.5
  • plotly ^5.0.0
  • python ^3.8
Dockerfile docker
  • node latest build
docker-compose.yml docker
  • mongo latest