https://www.facebook.com/groups/PyTorchKR/permalink/1681245292015145/

안녕하세요,

학습을 끝낸 모델을 저장했다가 다시 불러오면 accuracy가 현저히 떨어지는 문제가 발생하는데 도무지 원인을 알 수가 없어 질문드립니다.

현재 pre-trained model을 불러와 own train dataset과 validation dataset으로 학습(fine-tuning)을 끝낸 후, test dataset에 대해 classification을 시도하고 있습니다.

vgg16과 resnet152에 대해서는 validation dataset에서만큼 test dataset에서도 문제없이 accuracy를 얻어냈는데, inception-v3를 사용하면 validation에서는 97-98%를 보이던 모델의 accuracy가 test에서 20% 정도밖에 나오질 않습니다.

혹시나해서 학습이 끝나고 메모리 날리지 않은 상태에서 trained model에 direct로 test dataset을 넣어봤을 때는 accuracy가 잘나오고 있습니다.. 그래서 아마 저장이나 불러오는 과정에서의 문제가 있는 것 같은데, 혹시 inception-v3에서는 따로 저장해줘야 하는 요소가 더 있는건가요?

* 학습이 끝난 model과 optimizer 모두 state_dict로 저장했고, 나중에 불러올 때는 처음에 학습할 때 세팅한 model frame을 만들고 FC layer에서 최종 출력되는 class도 변경하고서 load_state_dict를 적용했습니다.

Posted by uniqueone
,