- 주제 : Sketch 이미지 데이터 분류 Sketch기반 이미지를 분류하여 어떤 객체를 나타내는지 예측하는 대회
김한별 | 손지형 | 유지환 | 장희진 | 정승민 | 조현준 |
---|---|---|---|---|---|
EDA / Data processing | EDA / Data processing | Modeling / Ensemble | Modeling / Ensemble | Modeling / 코드 모듈화 / wandb 셋팅 / Ensemble | EDA / Data processing |
Sketch 이미지에 대한 classficiation 대회입니다. 데이터는 총 500개의 클래스로 이루어져있습니다.
해당 대회에서는 사용되는 데이터셋의 원본의 경우 총 50,889개의 데이터셋으로 구성되어있지만, 해당 대회에서는 15,021개의 train 데이터와 10,014개의 private & public 평가 데이터로 나누어 구성되어있습니다.
해당 대회의 특징으로는 실제 이미지가 아닌 스케치 이미지의 분류로, 보다 간결한 선으로 해당 객체를 분류할 수 있어야 한다는 점 입니다.
Model | val_acc | val_loss | Parameters | ImageNet_Score | Image per sec (V100, Batch=1) |
---|---|---|---|---|---|
DenseNet121 | 88.03% | 0.259 | 8M | 74.91% | 4~5 ms |
ResNet | 29.09% | 2.45 | 25.6M | 76.15% | 6~7 ms |
ViT Small | 64.28% | 0.664 | 22M | 81.5% | 9~11 ms |
EfficientNetV2RWS | 78.67% | 0.391 | 13.6M | 82.1% | 5~6 ms |
EfficientNet B4 | 92.92% | 1.15 | 19M | 82.9% | 7~8 ms |
CoAtNet3 | 96.54% | 1.16 | 168M | 84.5% | 30~40 ms |
ResNet50 | 88.02% | 0.478 | 25.6M | 76.15% | 6~7 ms |
MaxViTBase | 88.71% | 1.13 | 119M | 85.17% | 35~45 ms |
Best Data Augmentation : 1. 단순한 Flip 형태의 증강(좌우, 상하, 상하좌우), 2. Rotate 증강(15도 이내) 3. Color Inver ( 색상반전 )
모델 : Coatnet | efficientnetB4 | resnet101
Optimizer : Adam | SGD | SAM | AdamW
Scheduler : StepLR | OneCycleLR
생성형 모델 : Stable Diffusion ( Image + Prompt ) (Link)
GPU : TESLA V100
RAM : 32GB
Storage : 100GB
Poetry 설치
curl -sSL https://install.python-poetry.org | python3 -
환경 변수 반영
export PATH="$HOME/.local/bin:$PATH"
관련 라이브러리 설치
poetry install
Poetry 가상환경 실행
poetry shell
Train 실행 방법
python train.py --config /path/to/your_train_config.yaml --use_wandb
Test 실행 방법
python test.py --config /path/to/your_test_config.yaml
Ensemble 실행 방법
python ensemble.py --config /path/to/your/ensemble_config.yaml
EfficienNet B4와 CoAtNet3의 val acc에서 90%를 넘는 높은 성능을 보였으며, Test 데이터에 대해서 EfficienNetB4 : 88% | CoAtNet3 : 90.1% 정확도를 보여주었습니다. 이미지 증강의 경우 RGB 색상 Nomalization, Resize(224,224)를 기본 증강으로 사용하였고, Flip, Rotation, Invert, 생성형 이미지를 사용하용하는 것이 가장 높은 성능을 보여주었습니다. 최종적으로 CoAtNet3 + EfficienNetB4 + ResNet + MaxViT ensemble을 통해서 private score : 92.2%를 얻을수 있었습니다.
[1] SAM (Link)
[2] clovaai/CutMix-PyTorch (Link)