๐ก Review Top Solutions in Kaggle (Object Detection Competition)
1. Global Wheat Detection
#1 Solution
Augmentation
- Custom mosaic (Random crop X. ๊ฒฝ๊ณ์ ์ ์งํ๋ฉด์ Crop)
- MixUp
- Heavy Augmentation (RandomCrop, HorizontalFlip, VerticalFlip, ToGray, GaussNoise, MotionBlur, MedianBlur, Blur, CLAHE, Sharpen, Emboss, RandomBrightnessContrast, HueSaturationValue)
Data Preprocessing
- Data Cleaning
- ๋์ด, ๋๋น 10px ์ดํ box ์ญ์
Model
- Models: EfficientDet, Faster R-CNN + FPN
- Stratified Kfold
- 5 folds
- Image source ๊ธฐ์ค
- Optimizer
- EfficientDet: Adam lr=5e-4
- Faster RCNN: SGD lr=5e-3
- LR scheduler: cosine-annealing
- Mixed precision (16fp, 32fp)
Post-process
- Ensemble multi-scale model => WBF
- Test time augmentation (HorizontalFlip, VerticalFlip, Rotate90)
- Pseudo labeling
- ํ์
์์ ์ฌ์ฉ ๋ถ๊ฐ. kaggle์์๋ง ์ฌ์ฉ ๊ฐ๋ฅ
- ์ฃผ์ด์ง test dataset์ ์ด์ฉํด pseudo labeling ํด์ ์ฌ์ฉ
#9 Solution
- Model: DetectoRS + UniverseNet(Retina based)
- MultilabelStratifiedKFold with 5 folds
- # of boxes, Median of box areas, Image Source ๊ธฐ์ค
- Heavy Augmentation
- Multi-scale training & Multi-scale testing (TTA)
2.VinBigData Chest X ray Abnormalities Detection
#1 Solution
๊ฐ์ธ ์ฐธ์ฌ
- Baseline: Faster RCNN + FPN
- WBF ensemble + YOLOv5
- Ensemble with other yolo fold + other yolo hyperparameter
** No validations
ํ ์ฐธ์ฌ
- Pre-processing
- ๊ฒน์น๋ box WBF๋ก ์์๋ธ
- CV strategy
- ๊ฐ์ธ ์ฐธ๊ฐ -> ๋ง์ง๋ง์ team up -> CV ๋ชจ๋ ๋ค๋ฆ
- Public LB๋ฅผ CV strategy๋ก ์ฌ์ฉ
- ๊ฐ์ธ submissions ์์๋ธ => ์ฑ๋ฅ ํฅ์
- Ensemble
- (YOLO ์ฌ๋ฌ version, EffDet, Public Notebooks) ์์๋ธ -> ์์๋ธ -> ์์๋ธ + Public Notebooks -> ์์๋ธ
** ์ ๋ง ๋ง์ ์คํ + ์์๋ธ์ด ์ค์
#2 Solution
- MMDetection Grid Search๋ก ์ฌ๋ฌ ๋ชจ๋ธ ์ฐพ์
- ATSS, Cascade RFP(ResNet50), GFL, RetinaNet(ResNext101), UniverseNet
- Training Trick
- Albumentation
- 1024x1024 ํ์ต -> ์์ ๋ฐ์ค ์ก๊ธฐ ์ํด 2048x2048 fine-tuning
- FP16 -> speed & batch size ์ฆ๊ฐ
- StepLR
- Class balanced Dataset ์์ฉ -> ์ฑ๋ฅ ํฅ์ X
- 2 Step Training
- ๋ชจ๋ box -> 30 epoch train -> best checkpoint ์ ์ฅ
- ์ ๋ฌธ๊ฐ๋ณ ๋ช ๊ฐ ๋ฐ์ค ๋ผ๋ฒจ๋ง ํ๋์ง ํ์ธ
- ๋ฐ์ค ์ ๊ฒ ๋ผ๋ฒจ๋งํ ์ ๋ฌธ๊ฐ ์ด๋ฏธ์ง -> ํ์ต ๋ฐ์ดํฐ๋ก fine-tuning
#2 ZFTurbo's Solution
- Pre-processing: WBF
- Ensemble: YOLOv5, RetinaNet101, RetinaNet512, CenterNet, Faster RCNN
- Investigation mAP
- OOF(Out of folds) -> ๊ฐ class๋ณ AP
- AP ๋ฎ์ class ์กฐ์ฌ
- ํด๋น class ๋ผ๋ฒจ๋ง ์ ๋ฌธ๊ฐ๋ณ ์ด๋ป๊ฒ ๋ผ๋ฒจ๋ง ํ๋์ง EDA
- AP ๋ฎ์ ์ ๋ฌธ๊ฐ - ์ค์ ๊ฐ์ฒด๋ณด๋ค ๋ ํฐ box
- ์์ ์ ๋ฌธ๊ฐ ๋ผ๋ฒจ๋ง ๋ฐ์ค ํฌ๊ธฐ ์ค์
- ํน์ ์ ๋ฌธ๊ฐ box -> ๋งค์ฐ ํฐ resolution => ์์๋ธ
- CV strategy
- Class: ํ ์ด๋ฏธ์ง ์ฌ๋ฌ ๊ฐ์ class
- ํ ์ด๋ฏธ์ง ๋น object ๊ฐ์
- ๊ฐ์ฒด ํฌ๊ธฐ
Summary
- ๋ชจ๋ธ ๋ค์์ฑ
: Resolution, Model(YOLO, EffDet,...), Library, Framework, Seed, ...
- Heavy augmentation ํผ๋ฆฌ์
- CV strategy -> shakeup ๋ฐฉ์ง
- ์ฒด๊ณ์ ์ธ ์คํ
- Team up -> ์๋ก ๋ค๋ฅธ baseline ๊ฐ๋ ๊ฒฝ์ฐ ์์๋ธ์ ์ข์