[AAAI2021] Automated Model Design and Benchmarking of 3D Deep Learning Models for COVID-19 Detection with Chest CT Scans
Accepted in AAAI-2021.
@article{He2021CovidNet3D,
title={Automated Model Design and Benchmarking of 3D Deep Learning Models for COVID-19 Detection with Chest CT Scans},
journal={Proceedings of the AAAI Conference on Artificial Intelligence},
author={He, Xin and Wang, Shihao and Chu, Xiaowen and Shi, Shaohuai and Tang, Jiangping and Liu, Xin and Yan, Chenggang and Zhang, Jiyong and Ding, Guiguang},
year={2021}
}
pip install -r requirements.txt
- CC-CCII: Zhang, K., Liu, X., Shen, J., Li, Z., Sang, Y., Wu, X., Zha, Y., Liang, W., Wang, C., Wang, K., et al.: Clinically applicable AI system for accurate diagnosis, quan- titative measurements, and prognosis of covid-19 pneumonia using computed tomography. Cell (2020)
- MosMed: Morozov, S., Andreychenko, A., Pavlov, N., Vladzymyrskyy, A., Ledikhova, N., Gombolevskiy, V., Blokhin, I., Gelezhe, P., Gonchar, A., Chernina, V., Babkin, V.: Mosmeddata: Chest ct scans with covid-19 related findings. medRxiv (2020)
- COVID-CTset: Rahimzadeh, M., Attar, A., Sakhaei, S.M.: A fully automated deep learning-based network for detecting covid-19 from a new and large lung ct scan dataset. medRxiv (2020)
Statistics
Dataset | Class | #Patients | #Scans | ||
---|---|---|---|---|---|
Train | Test | Train | Test | ||
CC-CCII | NCP | 726 | 190 | 1213 | 302 |
CP | 778 | 186 | 1210 | 303 | |
Normal | 660 | 158 | 772 | 193 | |
MosMed | NCP | 604 | 255 | 601 | 255 |
Normal | 178 | 76 | 178 | 76 | |
COVID-CTset | NCP | 202 | 42 | 202 | 42 |
Normal | 200 | 82 | 200 | 82 |
bash scripts/search_ct.sh
A logger directory will be created according to the logger.name
in config file, with the following structure:
Supporse logger.name=MyExp
:
|_output
|_MyExp
|_version_0 ()
|_epoch_0.json
|_last.pth
|_best_acc{}_epoch{}.pth
|_log.txt
|_search_ct.yaml
|_version_1()
epoch_0.json, epoch_1.json, ..., epoch_N.json
are the architectures of different epochs.last.pth
is the latest checkpointbest_acc{}_epoch{}.pth
is the best checkpointlog.txt
search_ct.yaml
is the backup config file, which will be used in the retraining stage
bash scripts/retrain_ct.sh
The commands in retrain_ct.sh
are as follows:
srun -n 1 --cpus-per-task 2 python -m ipdb retrain.py \
--config_file outputs/checkpoint/version_0/search_ct.yaml \
--arc_path outputs/checkpoint/version_0/epoch_0.json \
input.size [128,128]
You should manually set config_file
and arc_path
. The image size in the search stage is 64x64. Here, in the retraining stage, you should specify a larger image size.
arc_path
indicates which architecture you want to retrain. You can select it based on their perfomance in the search stage.
The following directory will be created:
|_output
|_MyExp
|_version_0 (search stage)
|_epoch_0.json
|_last.pth
|_
|_version_0_retrain_0 (retraining stage)
|_last.pth
|_best_acc0.96_epoch13.pth (file name records the best acc and the corresponding epoch)
|_othe files
|_version_0_retrain_1 (results of other architectures if you select other architecture json file.)
ModuleNotFoundError: No module named 'sklearn.neighbors._base'
You may need to upgrade your scikit-learn
lib.