인프런 커뮤니티 질문&답변

벽타는너구리님의 프로필 이미지
벽타는너구리

작성한 질문수

[파이토치] 실전 인공지능으로 이어지는 딥러닝 - 기초부터 논문 구현까지

교차 검증(Cross-Validation)

4-3강 cross-validation에서의 best model 선정 기준

해결된 질문

작성

·

322

·

수정됨

0

강사님, 안녕하세요! 항상 좋은 강의 잘 보고 있습니다 :D

4-3강 교차 검증(Cross-Validation)에서 best model을 어떻게 선정하는 것인지 조금 헷갈려 질문 드립니다.

예를 들어, 본 강의에서는 3개 fold에 대해 cross-validation을 수행하고, 모델의 최종 성능은 <3개 fold의 validation loss의 평균>으로 계산되는 것으로 이해했는데요.

1) 그렇다면 hyperparameter tuning 등을 통해 이 <평균 validation loss>가 가장 낮아지는 모델을 찾아야 하는 것이 맞나요? 다시 말해, 여러 번 cross-validation을 수행함으로써 가장 낮은 <평균 validation loss>를 가지는 모델을 best model로 선정하는 것이 맞는지 궁금합니다.

2) 만약 맞다면, 앞선 강의들에서는 "epoch 마다" loss가 최소화되는지 확인하고 모델 save를 수행했었는데, 이제는 "CV를 수행할 때 마다" loss가 최소화되는지 확인하고 모델 save를 수행하면 되는 것이 맞나요?

3) 마지막으로, 이미 학습된 결과를 바탕으로 best model을 선정했는데 왜 best model에 한 번 더 전체 trainset으로 학습을 진행해줘야 하는지 궁금합니다.

답변 1

0

딥러닝호형님의 프로필 이미지
딥러닝호형
지식공유자

안녕하세요.

좋은 질문입니다!

  1. 이해하신 부분이 맞습니다. 평균값을 기준으로 베스트 모델을 정합니다.

  2. 에폭마다 loss를 확인하는 것은 학습 중 최적이라고 여겨지는 모델을 저장하기 위한 것입니다. 그런데 여기서 저장이라는 것은 단지 평균값을 산출하기 위한 기록일 뿐입니다. 모든 모델 평가는 평균값으로 보시면 됩니다.

  3. 교차검증은 모델 학습이 아닙니다. 말그대로 모델 설계 단계에서 테스트셋을 사용하지 않고 모델을 검증하는 것입니다. 따라서 교차 검증을 통해 모델을 선택하고 학습데이터로 선택 된 모델을 학습해서 테스트셋으로 최종 평가를 하게 됩니다!!

감사합니다.

 

벽타는너구리님의 프로필 이미지
벽타는너구리

작성한 질문수

질문하기