시작
1. 앞의 모델 기본구조 및 개념 동일
2. flowers102 모델에 적용해서 실행
3. 데이터 갯수 : train 1020, test 6149개 ??????????
* label별로 찍어봤을때 정확하게 102개의 클래스가 10개씩 갖고있음. few-shot learning 용인가
ChatGPT 답변
결론
Flowers102 데이터셋의 Train 데이터보다 Test 데이터가 많은 이유는:
1. 데이터셋이 성능 평가를 주목적으로 설계되었기 때문.
2. 적은 Train 데이터로도 모델이 학습을 잘 수행하고 일반화할 수 있는지를 실험하기 위해.
4. 일단 튜닝하니까 돌아는간다. 값도 일단 나오긴함! train이 워낙 작다보니 epoch 늘려도 될듯
기본모델(base) epoch 30
1. train 91.8%, test 73.5%
2. 해석 : train이 적어서 그런가 Learning Curve가 늘쭉날쭉함. 최대 96%까지 올라갔다가 다시 92%까지 내려옴..
가끔 100%도 나옴
일단 cifar10에서 했던것중에 잘 안됐던거 해보기
layer wise learning rate(fc만 0.01, 나머지 0.0001 / decay 사용) (mod1)
1. train 93.4%, test 84.7%
2. 해석 : 유의미한 결과. train 2%, test가 11%나 상승함
Learning Scheduler(CosineAnnealingLR) (mod2)
1. train 93.2%, test 86.5%
2. 해석 : test 2% 상승. 사실 lr 관련된 조작이어서 mod1과 같은 효과를 거둘 것 같아 기대를 안했는데 다시 상승함.
이런 결과면 cifar10에도 다시 해볼만 할 것 같은데..
Pretrained 해제시
1. train 23.9%, test 18.8%
2. 해석 : train 데이터도 적고 learning curve도 굉장히 안좋음
일단 어느정도 성과를 거뒀으니 이제 다음 공부로!

'코드' 카테고리의 다른 글
| Channel-wise dropout 코드 구현 (9) | 2024.12.29 |
|---|---|
| Pre-trained Resnet with CIFAR-10(Transfer Learning) 2탄 (6) | 2024.12.28 |
| Pre-trained Resnet with CIFAR-10(Transfer Learning) (10) | 2024.12.28 |
| pytorch datasets (11) | 2024.12.10 |
| MNIST 홀짝분류 코드 구현 및 분석(pytorch) (3) | 2024.12.04 |