bupt-ai-cz / BALNMP

Predicting Axillary Lymph Node Metastasis in Early Breast Cancer Using Deep Learning on Primary Tumor Biopsy Slides, BCNB Dataset
53 stars 12 forks source link
axillary-lymph-node-metastasis biopsy breast-cancer breast-cancer-classification breast-cancer-prediction deep-learning metastasis primary-tumor-classification wsi-images

Predicting Axillary Lymph Node Metastasis in Early Breast Cancer Using Deep Learning on Primary Tumor Biopsy Slides visitors

Grand-Challenge | Arxiv | Dataset Page | Tweet

This repo is the official implementation of our paper "Predicting Axillary Lymph Node Metastasis in Early Breast Cancer Using Deep Learning on Primary Tumor Biopsy Slides".

Our paper is accepted by Frontiers in Oncology, and you can also get access our paper from Arxiv or MedRxiv.

News

Abstract

Setup

Clone this repo

git clone https://github.com/bupt-ai-cz/BALNMP.git

Environment

Create environment and install dependencies.

conda create -n BALNMP python=3.6 -y
conda activate BALNMP
pip install -r code/requirements.txt

Dataset

For your convenience, we have provided preprocessed clinical data in code/dataset, please download the processed WSI patches from here and unzip them by the following scripts:

cd code/dataset
# download paper_patches.zip
unzip paper_patches.zip

Training

Our codes have supported the following experiments, whose results have been presented in our paper and supplementary material.

experiment_index:

  1. N0 vs N+(>0)
  2. N+(1-2) vs N+(>2)
  3. N0 vs N+(1-2) vs N+(>2)
  4. N0 vs N+(1-2)
  5. N0 vs N+(>2)

To run any experiment, you can do as this:

cd code
bash run.sh ${experiment_index}

Furthermore, if you want to try other settings, please see train.py for more details.

Paper results

The results in our paper are computed based on the cut-off value in ROC. For your convenient reference, we have recomputed the classification results with argmax prediction rule, where the threshold for binary classification is 0.5, and the detailed recomputed results are here.

The performance in prediction of ALN status (N0 vs. N(+))

N0 vs. N(+)

The performance in prediction of ALN status (N0 vs. N + (1-2))

N0 vs. N + (1-2)

The performance in prediction of ALN status (N0 vs. N + (>2))

N0 vs. N + (>2)

Implementation details

Data preparation

In our all experiments, the patch number (N) of each bag is fixed as 10, however, the bag number (M) for each WSI is not fixed and is dependent on the resolution of a WSI. According to our statistical results, the bag number (M) of WSIs varies from 1 to 300, which is not fixed for a WSI during training and testing. The process of dataset preparation is shown in the following figure, and the details are as follows:

The 5 clinical characteristics used in our experiments are age (numerical), tumor size (numerical), ER (categorical), PR (categorical), and HER2 (categorical), which are provided in our BCNB Dataset, and you can access them from our BCNB Dataset.

a

Model testing

As mentioned above, a WSI is split into multiple bags, and each bag is inputted into the MIL model to obtain predicted probabilities. So for obtaining the comprehensive predicted results of a WSI during testing, we compute the average predicted probabilities of all bags to achieve "Result Merging".

c

Demo software

We have also provided software for easily checking the performance of our model to predict ALN metastasis.

Please download the software from here, and check the README.txt for usage. Please note that this software is only used for demo, and it cannot be used for other purposes.

demo-software

Citation

If this work helps your research, please cite this paper in your publications.

@article{xu2021predicting,
  title={Predicting axillary lymph node metastasis in early breast cancer using deep learning on primary tumor biopsy slides},
  author={Xu, Feng and Zhu, Chuang and Tang, Wenqi and Wang, Ying and Zhang, Yu and Li, Jie and Jiang, Hongchuan and Shi, Zhongyue and Liu, Jun and Jin, Mulan},
  journal={Frontiers in oncology},
  volume={11},
  pages={759007},
  year={2021},
  publisher={Frontiers Media SA}
}

Contact

If you encounter any problems, please open an issue without hesitation, and you can also contact us with the following:

Acknowledgements

This project is based on the following open-source projects. We thank their authors for making the source code publically available.