Source code of the 73th / 1305(6%) place solution for SIIM-FISABIO-RSNA COVID-19 Detection Challenge.
- HARDWARE : RTX 3070 8GB VRAM / kaggle docker GPU (P100-16GB) & TPU v3.8 (16GB x 8core)
- Ubuntu 20.04.2 LTS
- CUDA 11.3
- Python 3.7.9
- SIIM COVID 19 DATASET
- download competition dataset at link
$ kaggle competitions download -c siim-covid19-detection # kaggle API
128GB
- MODEL
- STUDY LEVEL (CLASSIFICATION)
- Classification Model :
EfficientNetV2 Large w/ TTA
- Classification Model :
- IMAGE LEVEL (OBJECT DETECTION)
- 2 Classifier Model :
EfficientNetB7
- Object Detection Model :
YoloV5x6 w/ TTA
- 2 Classifier Model :
-
Cross Validation Strategy
- Study Level : GroupKFold by Study level id - 5 Folds
- Image Level : GroupKFold by Study level id - 5 Folds
-
Data Handling
[Discussion] Recommendations for handling duplicates on the train dataset
During this competition, the annotation error issues was found. So, checked All data and Remove some data. And then train again with clean dataset. (Improve score)
.
├── image_level
│ ├── image_level_code
│ │ ├── hyp.scratch.yaml
│ │ ├── run_yolov5.py
│ │ ├── view_checkpoint
│ │ ├── yolo_v5l6_train.ipynb
│ │ ├── yolo_v5x6_train.ipynb
│ │ ├── yolo_v5x_alldata.ipynb
│ │ ├── yolo_v5x_kfold.ipynb
│ │ └── yolo_v5x_train.ipynb
│ ├── infer-siim-cov19-yolov5-image.ipynb
│ └── train-siim-cov19-yolov5-image.ipynb
├── infer-siim-cov19-efnb7-study-image.ipynb
├── structure.txt
├── study_level
│ ├── infer-siim-cov19-efnb7-infer-study.ipynb
│ └── train-siim-study-level.ipynb
├── two_classifier
│ └── train-2-classifier.ipynb
└── utils
├── convert-image-size.ipynb
├── data-annotating.ipynb
├── data-stratified-k-fold-and-create-mask.ipynb
├── kfold_df.csv
├── resized_data
│ ├── new_resized_data
│ └── new_resized_data2
├── result_view
│ ├── 2class_visualize.ipynb
│ ├── image_model
│ ├── model_list.rtf
│ ├── study_model
│ ├── study_model_result.ipynb
│ ├── two_class
│ └── yolo_results.ipynb
├── siim-eda.ipynb
└── weighted_box_fusion.ipynb
13 directories, 24 files
src/study_level/train-siim-study-level.ipynb # train study classifier model
src/study_level/infer-siim-cov19-efnb7-infer-study.ipynb # infer study classifier model
src/two_classifier/train-2-classifier.ipynb # train 2 classifier model
src/image_level/train-siim-cov19-yolov5-image.ipynb # train image object detector model
src/image_level/infer-siim-cov19-yolov5-image.ipynb # infer image object detector model
src/infer-siim-cov19-efnb7-study-image.ipynb # Final submission file
5 GroupKFolds
Classification
: Blending Probability2 classifier
: Blending ProbabilityObject Detection
: WBF Weighted Boxes Fusion
src/utils/result_view/study_model_result.ipynb # visualize and analyze study classification model trainig result
src/utils/result_view/2class_visualize.ipynb # visualize and analyze image 2 classifier model trainig result
src/utils/result_view/yolo_results.ipynb # visualize and analyze image object detection model trainig result
Public LB | Private LB | Rank | Model |
---|---|---|---|
0.608 | 0.625 | 73 / 1305 | EffNetV2 L w/ TTA + EffNetB7 + YoloV5x6 w/ TTA |