해당 포스팅은 네이버 부스트캠프 P-stage를 위해 개인 학습 내용을 정리했습니다.
1. 목표
- B3, B0 모델 학습하고 성능확인
- Resnet, B3, B0 앙상블하기
2. 진행 내용
1) B3, B0 모델 학습하고 성능 확인하기
Resnet50
- train_file = processed0(증강 후 50000만장)
- resize = (224, 224)
- transforms = CenterCrop(384, 384), Resize(224, 224), ColorJitter(brightness=0.3, contrast=0.3), RandomHorizontalFlip(p=0.5), Normalize
- batch_size = 32
- lr = 1e-4, lr_scheduler = StepLR( Adam, 3, gamma=0.5)
- Epochs 20
- 결과
- Acc : 66.7143%, F1-score : 0.6175
EfficientB0
- train_file = processed1(증강 후 50000만장)
- resize = (224, 224)
- transforms = CenterCrop(384, 384), Resize(224, 224), ColorJitter(brightness=0.3, contrast=0.3), RandomHorizontalFlip(p=0.5), Normalize
- batch_size = 32
- lr = 1e-4, lr_scheduler = StepLR( Adam, 2, gamma=0.5)
- Epochs 10
- 결과
- Acc : 75.8571%, F1-score : 0.7044
EfficientB3
- train_file = processed0(증강 후 50000만장)
- resize = (300, 300)
- transforms = CenterCrop(384, 384), Resize(224, 224), ColorJitter(brightness=0.1, contrast=0.1), RandomHorizontalFlip(p=0.5), Normalize
- batch_size = 32
- lr = 1e-4, lr_scheduler = StepLR( Adam, 2, gamma=0.5)
- Epochs 4
- 결과
- Acc : 78.4921%, F1-score : 0.7285
2) 앙상블하기
EfficientNet-B3(processed0), EfficientNet-B0(processed1), resnet50(processed2)를 앙상블 한 결과는 기존의 72.85%보다 높은 73.20%를 달성할 수 있었습니다.
추가적으로 processed3, processed4에 대해서 EfficientNet-B0로 학습시켜서 5개 앙상블 시켰더니 73.95%를 달성했습니다.
3. 회고
처음에는 안오를 것 같았던 점수들이 조금씩 자리를 잡아가기 시작했던 것 같습니다. 이번에는 기록을 정확하게 하지 못했지만, 정리를 잘하는 것이 중요한 것 같습니다. 다음 P-stage에서는 다양한 것들을 적용해볼 수 있었으면 좋겠습니다. 그리고 1번 학습시킬 때, 여러 가지를 동시에 바꾸기보다는 1개씩 바꾸는 것이 가장 좋은 것 같습니다. Notion을 활용해서 실험관리할 수 있는 페이지를 만들어보면 좋을 것 같다는 생각입니다. 첫째 주에 적응하느라 버린 시간이 아깝지만 그래도 하루만에 9%가량 올릴 수 있어서 재미있었던 하루였습니다. 앙상블은 항상 옳다고 생각이 드는데, 다양한 형태의 모델들을 앙상블하고 싶었지만 하지 못해서 아쉬웠습니다.