수학/딥러닝 이론

[딥러닝] 매개변수 갱신 - Adam, 어느 갱신 방법을 이용할 것인가?

AI 꿈나무 2020. 10. 2. 20:55
반응형

사이토고키의 <밑바닥부터 시작하는 딥러닝>을 공부하고 정리하였습니다.

 


매개변수 갱신 - Adam

 모멘텀은 공이 그릇 바닥을 구르는 듯한 움직임을 보였습니다.

 AdamGrad는 매개벼수의 원소마다 적응적으로 갱신 정도를 조정했습니다.

 두 기법을 융합한 기법이 바로 Adam입니다.

 

 위 두 방법의 이점을 조합했으므로 매개변수 공간을 효율적으로 탐색해줄 것이라고 기대할 수 있습니다.

 하이퍼파라미터의 '편향 보정'이 진행된다는 점도 Adam의 특징입니다.

 

 Adam에 의한 최적화 갱신 경로를 확인해보겠습니다.

 

 

 Adam 갱신 과정도 모멘텀과 비슷한 패턴으로 움직입니다.

 이는 학습의 갱신 강도를 적응적으로 조정해서 얻는 혜택입니다.

 

Adam은 하이퍼파라미터를 3개 설정합니다.

 하나는 지금까지의 학습률, 나머지 두 개는 일차 모멘텀용 계수와 이차 모멘텀용 계수입니다.

 

 이 책은 Adam을 이해하기 쉽도록 직관적으로 설명하여, 완전히 정확하지는 않습니다. 자세한 내용은 원논문을 참고하세요.

 

어느 갱신 방법을 이용할 것인가?

 지금까지 매개변수의 갱신 방법 4개를 살펴봤습니다.

 

 

[딥러닝] 매개변수 갱신 - 확률적 경사 하강법(SGD) 개념과 단점

사이토고키의 <밑바닥부터 시작하는 딥러닝>을 공부하고 정리하였습니다.  신경망 학습의 목적은 손실 함수의 값을 가능한 한 낮추는 매개변수를 찾는 것 입니다. 이는 곧 매개변수의 최적값을

deep-learning-study.tistory.com

 

[딥러닝] 매개변수 갱신 - 모멘텀(Momentum) 기법

사이토고키의 <밑바닥부터 시작하는 딥러닝>을 공부하고 정리해보았습니다. 모멘텀 - Momentum  모멘텀은 '운동량'을 뜻하는 단어로, 물리와 관계가 있습니다. 모멘텀 기법은 수식으로 다음과 같��

deep-learning-study.tistory.com

 

 

[딥러닝] 매개변수 갱신 - AdaGrad 기법

사이토고키의 <밑바닥부터 시작하는 딥러닝>을 공부하고 정리하였습니다. AdaGrad  신경망 학습에서는 학습률 값이 중요합니다.  이 값이 너무 작으면 학습 시간이 너무 길어지고, 반대로 너무 ��

deep-learning-study.tistory.com

 

 네 기법의 결과를 비교해보겠습니다.

 

 

 그림마 보면 AdaGrad가 가장 나은 것 같은데, 그 결과는 풀어야 할 문제가 무엇이냐에 따라 달라지므로 주의해야 합니다. 또, 하이퍼파마미터를 어떻게 설정하느냐에 따라서도 결과가 바뀝니다.

 

 각자의 장단점이 있어 상황을 고려해 여러 가지로 시도해봐야 합니다.

 

MNIST 데이터셋으로 본 갱신 방법 비교

 손글씨 숫자 인식을 대상으로 네 기법을 비교해보겠습니다.

 각 방법의 학습 진도가 얼마나 다른지를 확인하겠습니다.

 

 

 결과를 보면 SGD의 학습 진도가 가장 느립니다. 나머지 세 기법의 진도는 비슷한데, AdaGrad가 조금 더 빠른 것 같습니다.

 주의할 점은 하이퍼파라미터인 학습률과 신경망의 구조(층 깊이 등)에 따라 결과가 달라진다는 것 입니다.

 

반응형