SenonETS / mil4wsi

DAS-MIL: Distilling Across Scales for MILClassification of Histological WSIs

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

Introduction

Welcome to the mil4wsi Framework – your gateway to state-of-the-art Multiple Instance Learning (MIL) model implementations for gigapixel whole slide images. This comprehensive open-source repository empowers researchers, developers, and enthusiasts to explore and leverage cutting-edge MIL techniques.

Installation

conda create -n wsissl python=3.9
conda activate wsissl
conda env update --file environment.yml

Data Preprocessing

This work uses CLAM to filter out background patches. After the .h5 coordinate generation, use:

Available Models

  • MaxPooling
  • MeanPooling
  • ABMIL
  • DSMIL
  • DASMIL
  • BUFFERMIL
  • TRANSMIL
  • HIPT

DASMIL

@inproceedings{Bontempo2023,
  title={{DAS-MIL: Distilling Across Scales for MIL Classification of Histological WSIs}},
  author={Bontempo, Gianpaolo and Porrello, Angelo and Bolelli, Federico and Calderara, Simone and Ficarra, Elisa},
  booktitle={{Medical Image Computing and Computer Assisted Intervention – MICCAI 2023}},
  year={2023}
}

Training

python main.py --datasetpath DATASETPATH --dataset [cam or lung]

Reproducibility

Pretrained models

DINO Camelyon16 DINO LUNG
x5 ~0.65GB x5 ~0.65GB
x10 ~0.65GB x10 ~0.65GB
x20 ~0.65GB x20 ~0.65GB
DASMIL Camelyon16 DASMIL LUNG
model ~9MB model ~15MB
ACC: 0.945 ACC: 0.92
AUC: 0.967 AUC: 0.966

Pytorch Geometric - Extracted Features

Camelyon16 LUNG
Dataset ~4.25GB Dataset ~17.5GB

Eval

setup checkpoints and datasets paths in utils/experiment.py then

python eval.py --datasetpath DATASETPATH --checkpoint CHECKPOINTPATH --dataset [cam or lung]

Contributing

We encourage and welcome contributions from the community to help improve the MIL Models Framework and make it even more valuable for the entire machine-learning community.

About

DAS-MIL: Distilling Across Scales for MILClassification of Histological WSIs


Languages

Language:Python 99.9%Language:Shell 0.1%