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

김유진님의 프로필 이미지
김유진

작성한 질문수

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

Loss function 관련하여 질문드립니다.

작성

·

554

0

강사님 안녕하세요. test loss 및 validation loss 관련하여 질문드립니다.

 

train loss와 validation loss 플랏을 보고, 이 모델이 잘 학습이 되었는지 어떻게 판단해야 하는지가 궁금하여 질문드리게 되었습니다.

강의 코드를 활용하여 학습하고자 하는 데이터에 적용해 보았습니다.

같은 데이터여도, 모델을 어떻게 구성하는지에 따라 에폭에 따른 loss 값이 큰 차이를 보였습니다.

 

Case 1) 초기 epoch의 validation loss가 train loss보다 낮은 경우

Case 2 ) validation loss와 train loss의 차이가 큰 경우

Case 3) Validation loss가 감소하는 형태를 띄나, 크게 fluctuation 할 경우

Case 4) Validation loss가 크게 fluctuation하며, 감소하는 형태가 아닌 경우 (증가 -> 감소)

말씀드린 4가지 case 경우 모두, 최종적으로 loss 값 자체는 낮게 나왔습니다.

하지만 제가 이상적이라고 생각한 loss 곡선에는 모두 벗어나는것 같아서, 위 형태들도 학습이 잘 되었다고 판단할 수 있을지 궁금하여 질문드립니다! 감사합니다.

답변 1

0

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

안녕하세요.

먼저 모델 평가 및 개선은 종합적으로 봐야하기 때문에 손실 그래프로만으로 정확한 판단은 힘듭니다. 다만 그래프로만 봤을 때 4개 모두 학습은 잘 된 것으로 보여지고요. 학습 결과는 1,2는 오버피팅이고 3,4번이 좋다고 말할 수 있겠네요.

3,4번에서 발생되는 초반 변동은 초반에 모델 학습에 필요한 데이터가 충분하지 않아서 그럴 수도 있고요. 모델 파라메터 초기값 혹는 학습률의 문제 일 수도 있습니다. 또 다른 이유가 있을 수도 있고요. 따라서 일단 학습데이터 data split 비율을 높인다거나 모델 파라메터의 initialization 기법을 적용하거나 학습률을 좀 줄여보거나 할 수 있을 것 같습니다!

감사합니다.

김유진님의 프로필 이미지
김유진

작성한 질문수

질문하기