• 카테고리

    질문 & 답변
  • 세부 분야

    딥러닝 · 머신러닝

  • 해결 여부

    미해결

적절한 batch_size와 epochs ?

19.10.20 07:54 작성 조회수 937

0

강의를 듣던 중 적절한 batch_size와 epoch 수가 어떻게 될까 궁금해졌습니다.

그리고 ,

큰 데이타는 메모리에 한번에 데이타를 못올리니까 나누어서 올린다는 생각만했는데

일부만 돌려서 weight와 bias를 구하고

다음 batch_size를 이용할 때 여기서 얻은 weight와 bias를 이용해서

weight와 bias가 갱신되는 것 같은데 어떻게 이것이 진행되는지 궁금합니다.

답변 1

답변을 작성해보세요.

0

안녕하세요?

batch_size와 epoch은 단지 데이터 로드에만 관여되는 것이 아니라 학습전략과도 밀접한 관련이 있습니다.

여기에 대한 설명은 '케라스 시작하기'단원 '케라스 학습 fit이해하기'강의 3분 쯤 되는 곳에서 설명해뒀습니다.

마치 학습지나 Voca책을 공부할때 몇 번 책을 보느냐가 epoch이면 몇 단원 공부하고 답을 맞춰보느냐가 batch_size냐와 같습니다. 같아보이지만 전혀 다른 효과를 얻을 수 있겠지요. 그 이유는 강의를 들으시면 쉽게 이해하실 수 있을 것입니다.

뒤에 설명할 Overshooting이슈와도 맞물려서 batch_size와 epoch은 최적값을 '잘' 찾아야된다고만 말씀드릴 수 있습니다. 그래서 데이터셋 전략에서 Validation Set을 따로 두고 최적 학습값을 찾아갑니다.

다행이 케라스는 이런 값들을 편하게 찾아줄 수 있는 EarlyStoping같은 기법들을 제공해주고 있는데 그 내용도 강의 내용  뒤에 다루었으니 한번 쭉 내용을 보시면 도움이 될것 같습니다.

감사합니다.