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.shA 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.jsonare the architectures of different epochs.last.pthis the latest checkpointbest_acc{}_epoch{}.pthis the best checkpointlog.txtsearch_ct.yamlis the backup config file, which will be used in the retraining stage
bash scripts/retrain_ct.shThe 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.