Thanx to NIA
이 글에서는 모델을 경량화하는데 쓰이는 alpha가 전이학습 정확도에 어떤 영향을 끼치는지 볼 것이다. 테스트 환경은 이전 글과 동일하게 nVidia H100 CUDA12.4, TF2.15, Python 3.10, RAM 192Gb, GPU RAM 80Gb이다. MobileNetV2에 대해 미리 알고 보면 좋다. 전 글에서는 멤버십에서만 링크를 볼 수 있어, 서두에 배치한다.
이쯤에서 멤버십 영역일 거라 생각한다. 에포크 7에서부터 30%를 겨우 넘겼다고 하면, Alpha를 0.35에서 1.0으로 바꾸었을 때 로그는 다음과 같다. batch size는 128이다.
Epoch 1/50
1461/1461 ━━━━━━━━━━━━━━━━━━━━ 91s 56ms/step - accuracy: 0.2065 - loss: 3.1045
Epoch 2/50
1461/1461 ━━━━━━━━━━━━━━━━━━━━ 77s 53ms/step - accuracy: 0.3143 - loss: 2.5397
Epoch 3/50
1461/1461 ━━━━━━━━━━━━━━━━━━━━ 77s 52ms/step - accuracy: 0.3305 - loss: 2.4663
이미 batch를 바꿔가며 고민했고, 128 batch 미만으로 나오지 않았던 31%를 바로 달성했다.
한 번의 실험으로 바로 가설을 세울 수 있다.
Alpha는 학습 정확도와 상관관계가 있다.
최종 학습률 관련 로그는 다음과 같다.
Epoch 4/50
1461/1461 ━━━━━━━━━━━━━━━━━━━━ 77s 52ms/step - accuracy: 0.3391 - loss: 2.4324
지금 바로 작가의 멤버십 구독자가 되어
멤버십 특별 연재 콘텐츠를 모두 만나 보세요.
오직 멤버십 구독자만 볼 수 있는,
이 작가의 특별 연재 콘텐츠