Skip to content

The codes for paper "Smooth Attention for Deep Multiple Instance Learning: Application to CT Intracranial Hemorrhage Detection" accepted in MICCAI 2023.

License

Notifications You must be signed in to change notification settings

YunanWu2168/SA-MIL

Repository files navigation


Logo

Smooth Attention for Deep Multiple Instance Learning: Application to CT Intracranial Hemorrhage Detection

The codes for the paper accepted in MICCAI 2023.

Table of Contents
  1. Introduction
  2. Getting Started
  3. Usage

Introduction

Multiple Instance Learning (MIL) has been widely applied to medical imaging diagnosis, where bag labels are known and instance labels inside bags are unknown. Traditional MIL assumes that instances in each bag are independent samples from a given distribution. However, instances are often spatially or sequentially ordered, and one would expect similar diagnostic importance for neighboring instances. To address this, in this study, we propose a smooth attention deep MIL (SA-DMIL) model. Smoothness is achieved by the introduction of first and second order constraints on the latent function encoding the attention paid to each instance in a bag. The method is applied to the detection of intracranial hemorrhage (ICH) on head CT scans. The results show that this novel SA-DMIL: (a) achieves better performance than the non-smooth attention MIL at both scan (bag) and slice (instance) levels; (b) learns spatial dependencies between slices; and (c) outperforms current state-of-the-art MIL methods on the same ICH test set.

(back to top)

Getting Started

This is an example of how you may give instructions on setting up your project locally. To get a local copy up and running follow these simple example steps.

Prerequisites

This is an example of how to list things you need to use the software and how to install them.

  • The codes use Tensorflow and you can download all packages in requirements.txt.
matplotlib==3.7.1

numpy==1.22.4

opencv_contrib_python==4.7.0.72

opencv_python==4.7.0.72

opencv_python_headless==4.7.0.72

pandas==1.5.3

scikit_learn==1.2.2

tensorflow==2.12.0

Installation

  1. Pip install requirements.txt
    pip install requirements.txt
  2. Open SA-MIL-preprocessing.ipynb - How to process head CTs
  3. Open SA-MIL-training.ipynb - Train SA-DMIL
  4. Open Non-SA-MIL-training.ipynb - Train Att-MIL
  5. Open SA-MIL-testing.ipynb - Test SA-DMIL and Att-MIL
  6. Open vis-SA-MIL.ipynb - Visualize at slice level

(back to top)

Dataset

Download

The dataset used in this paper can be download via Kaggle Challenge Dataset

CT Slice Image Processing with Windowing

SA_MIL_preprocessing.ipynb

Usage

  1. Model training at scan level

SA_MIL_training.ipynb

Non_SA_MIL_training.ipynb

  1. Model testing at scan level

SA_MIL_testing.ipynb

  1. Model testing at slice level

vis_SA_MIL.ipynb

(back to top)

License

Distributed under the MIT License. See LICENSE.txt for more information.

(back to top)

About

The codes for paper "Smooth Attention for Deep Multiple Instance Learning: Application to CT Intracranial Hemorrhage Detection" accepted in MICCAI 2023.

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published