Home

Awesome

Exploring Low-Rank Property in Multiple Instance Learning for Whole Slide Image Classification (ICLR 2023) pdf

Authors: Jinxi Xiang, Xiyue Wang, Jun Zhang, Sen Yang, Xiao Han and Wei Yang.

In this study, we investigate the low-rank property of whole slide images to establish a novel multiple-instance learning paradigm. Specifically, we enhance performance through a two-stage process:

  1. We introduce a low-rank contrastive learning approach designed to generate pathology-specific visual representations.

  2. We augment the standard transformer model by incorporating a learnable low-rank matrix, which serves as a surrogate to facilitate higher-order interactions.

Requirements

Create a new enviroment with anaconda.

conda create -n ilra python=3.10 -y --no-default-packages
conda activate ilra
pip install --upgrade pip
pip install -r requirements.txt

Structure

The folder structure is as follows:


configs/    # create yaml file that contains dataloader, model, etc.
    ├── config_abmil_camelyon16_imagenet.yaml
    ├── config_clam_camelyon16_imagenet.yaml
    └── ...
models/  # definition of MIL models
    ├── abmil.py
    ├── clam.py
    ├── ilra.py   # our proposed model
    └── ...
splits/  # training ans test data split
    ├── camelyon16_test.csv
    ├── camelyon16_train_10fold.csv
    └── ...
topk/ # dependency of CLAM
    └── ...
train_mil.py/   # main function of training and test
wsi_dataset.py/  # WSI dataset

Step 1

Prepare your WSI feature with CLAM and change the 'Data.feat_dir' in yaml file. To run this example code, you can download the CAMELYON16 features using ImageNet pre-trained Resnet50 from this link.

Step 2

change line 42 in train_mil.py to run different experiments.

fname = "config_ilra_camelyon16_imagenet"