[부스트캠프 AI Tech] 6주차 Warp Up Report -1

Mattaaa·2022년 2월 25일
0

[부스트캠프 AI Tech]

목록 보기
19/23

Warp up Report


1. Data Labeling

2. Modeling




1. DataLabeling

Data Info

Basic Train Data Folder StructureZ

images
├── folder_names
│   ├── incorrect_mask.jpg
│   ├── mask1.jpg
│   ├── mask2.jpg
│   ├── mask3.jpg
│   ├── mask4.jpg
│   ├── mask5.jpg
│   └── normal.jpg
........

└── train.csv

Target Train Data Folder Structure

dataset
├── eval
├── train
│   ├── 0
│   ├── 1
│   ├── 2
│   ├── .
│   ├── .
│   ├── 17
│   │   ├── id_incorrect_mask.jpg
│   │   ├── id_mask1.jpg
│   │   ├── .
│   │   ├── .
│   │   ├── id_normal.jpg
........

└── label.csv

Generate Dataset, DataLoader with ImageFolder




2. Modeling

Resnet152

  • Epoch : 40

  • Dataset : MaskBaseDataset

  • Augmentation : BaseAugmentation

  • Resize : 224 X 224

  • Batch_Size : 128

  • Optimizer : Adam

  • Learning Rate : 1e-04

  • Loss Fuctiopn : Focal Loss

  • LR Decay Step(StepLR) : 20

    Train Accuracy : 99%

    Validation Accracy : 77.5%

    Eval Accuracy : 75%

    F1 Score : 0.6682



Eval Accuracy의 경우, 타 팀과 비슷하게 나왔지만 F1 Score에서 차이가 났다.

Train Data의 Class Imbalance 문제로 인해, 특정 Class를 모델이 제대로 분류하지 못하는 것이 원인 인 것 같다.

또한, 실험 초기 Epoch 수를 낮게 설정 한 후, Validation Accuracy가 요동치기 시작하면 Overffiting이 시작되는 것으로 간주하여 바로 Early Stopping 을 하도록 설계하였었다.

하지만, 이는 오히려 Overffiting이 아닌 Underfitting을 야기하여 전체적으로 정확도가 매우 낮게 나왔었다.

해당 문제는 전체적인 Epoch 수를 늘린 뒤, 일정 Epoch 동안 Validation Accuracy가 증가하지 않으면, Stopping 하는 것으로 변경하여 해결하였다.

0개의 댓글