Skip to content

Latest commit

 

History

History
55 lines (43 loc) · 3.17 KB

README.MD

File metadata and controls

55 lines (43 loc) · 3.17 KB

Towards Explainable AI for Cancer Diagnosis

Introduction

This project explores modern deep learning methods for diagnosising cancer. In particular, the goal is to detect the presence of cancer from an H&E staining. My steps are as follows:

  1. Stain Normalization: Implement an algorithm (Macenko Algorithm) for normalizing H&E stains.
  2. Nuclear Panoptic Segmentation: Implement a deep learning model (HoVerNet) for identifying and classifying nuclei.
  3. Cell Graph Construction: Define and create a cell graph.
  4. Cell Graph Classification: Implement a graph neural network to classify the presence of cancer in graph from (3).
  5. Explainability: Implement a post-hoc explainability algorithm (GCExplainer) to make the model in (4) more interpretable.

Overview

Usage

This repository includes a CLI tool. Documentation for using it can be found below. Note you must have the concepts and trained models on the local machine, which are not provided in this repository due to size constraints:

python xcd.py FILE_LOCATION [ARGUMENTS]
ARGUMENT Description
--explanation_file The location for explanations to be saved to. If none is provided, no explanations will be generated
--hovernet_path The location of the trained HoVerNet model
--cell_encoder_path The location of the trained ResNet50 encoder model
--gnn_path The location of the trained GNN model
--concept_path The location of the concepts folder, containing the exemplary concept representation

Worked Example

Overview