SW/인공지능

Hyper Parameters : 개념, 종류, 팁

얇은생각 2019. 10. 23. 07:30
반응형

이번 포스팅에서는 하이퍼 파라미터에 대해 알아보겠습니다. 하이퍼 파라미터는 모델을 학습할 떄, 외적인 요소로 학습에 영향을 미치는 파라미터들입니다. 대표적으로 어떤 것들이 있고, 어떠한 것인지 매우 간략하게 알아보았습니다.

 

 

learning rate : 런닝 레이트

learning rate 설정

보통 런닝 레이트를 학습률이라고 이해하면 됩니다. 위 함수들은 대표적인 최적화 함수들입니다. 따라서, 최적화를 진행할 떄, 어느정도로 학습을 하여 진행을 할지 정하는 값들입니다. 너무 크면, 최적화할 곳을 지나가버리는 단점이 있습니다. 하지만, 너무 작아도, 최적화할 곳을 찾지 못하고, 머무르는 현상이 있을 수 있습니다. 따라서, 여러 대표값들을 적용해 학습을 진행해야 합니다.

 

 

overfitting : 오버피팅

오버피팅 사례

트레이닝을 할 떄, 조심해야 하는 부분입니다. validation 검증을 할 떄, 기본 데이터는 잘 예측하지만, 검증 데이터를 잘 예측하지 못하는 경우가 대표적인 오버피팅의 사례입니다. 오른쪽 그림이 바로 그 예라고 할 수 있습니다. 왼쪽의 그림도 마찬가지입니다. 너무 딱 맞게 오버피팅이 되어버리면, 실제 데이터에는 유연하게 동작하지 못하게 됩니다.

 

 

drop out : 드롭 아웃

드롭 아웃 예제

 

드롭 아웃 그림

오버 피팅을 방지하는 대표적인 기법입니다. 일정 확률로 뉴런들을 버리는 기법입니다. 이렇게 뉴런들을 버리게 되면, 오버피팅 되어버린 뉴런들을 느슨하게 만들어, 오버피팅을 조금이라도 방지해주는 방식입니다.

 

 

online learning & batch learning : 온라인 러닝, 배치 러닝

온라인 러닝, 배치러닝

온라인 러닝은 1 에포크 동안 단 1번 업데이트하는 방식입니다. 전통적인 방식으로 이해하면 좋습니다. 배치 러닝은 1 에포크 동안 배치 단위로 업데이트를 하는 것입니다. 케라스는 32가 디폴트 값입니다. 온라인 러닝의 단점은 많은 메모리를 소모하는 경향이 있습니다. 배치러닝은 속도는 조금 느리더라도, 학습을 효율적으로 할 수 있습니다. 현재는 온라인 러닝보다 배치러닝을 주로 활용하고 있습니다.

반응형