맨위로가기

학습률

"오늘의AI위키"는 AI 기술로 일관성 있고 체계적인 최신 지식을 제공하는 혁신 플랫폼입니다.
"오늘의AI위키"의 AI를 통해 더욱 풍부하고 폭넓은 지식 경험을 누리세요.

1. 개요

학습률은 기계 학습 모델의 학습 과정에서 사용되는 하이퍼파라미터로, 모델의 가중치 업데이트 정도를 결정한다. 학습률 스케줄링은 학습률을 에포크 또는 반복 횟수에 따라 변경하는 기법으로, 감쇠, 모멘텀 등의 매개변수를 활용한다. 학습률 스케줄링에는 시간 기반, 단계 기반, 지수 기반 방식이 있으며, 감쇠는 학습을 안정화시키고 진동을 방지하며, 모멘텀은 학습 속도를 높이고 지역 최소점을 회피하는 역할을 한다. 적응형 학습률 알고리즘은 학습 세션마다 수동으로 학습률을 설정해야 하는 문제를 해결하기 위해 제안되었으며, AdaGrad, Adadelta, RMSProp, Adam 등이 있다.

2. 학습률 스케줄링

초기 학습률은 시스템 기본값으로 두거나 다양한 기법을 사용하여 선택할 수 있다.[8] 학습률 스케줄은 학습 과정에서 학습률을 변경하며, 대개 에포크/반복 횟수 사이에 변경된다.[4] 이는 주로 '감쇠'와 '모멘텀'의 두 가지 매개변수를 사용하여 수행된다.
모멘텀은 언덕을 굴러 내려가는 공과 유사하게 작동한다. 즉, 오차 비용 기울기가 오랫동안 같은 방향으로 향할 때 학습을 가속화(학습률 증가)하고, 작은 요철을 '넘어감'으로써 지역 최소점을 회피하도록 돕는다. 모멘텀은 공의 질량과 유사한 하이퍼파라미터로 제어되며, 너무 높으면 최소점을 지나치고 너무 낮으면 효과가 없다. 모멘텀을 고려한 공식은 Keras와 같은 딥러닝 라이브러리에 내장되어 있다.[4]

학습률 스케줄에는 시간 기반, 단계 기반, 지수 기반등 여러 종류가 있다.[4]

2. 1. 시간 기반 스케줄링

시간 기반 학습 스케줄은 이전 시간 반복의 학습률에 따라 학습률을 변경한다. 감쇠를 고려한 학습률의 수학적 공식은 다음과 같다.[4]

:\eta_{n+1} = \frac{\eta_n }{1+dn}

여기서 \eta는 학습률, d는 감쇠 매개변수, n은 반복 단계이다.

2. 2. 단계 기반 스케줄링

단계 기반 학습 스케줄링은 미리 정의된 단계에 따라 학습률을 변경한다.[4] 감쇠 적용 공식은 다음과 같이 정의된다.

:\eta_{n} = \eta_0d^{\left\lfloor\frac{1+n}{r}\right\rfloor}

여기서 \eta_{n}은 반복 n에서의 학습률, \eta_0는 초기 학습률, d는 각 감소 시 학습률이 얼마나 변경되어야 하는지(0.5는 반으로 줄이는 것에 해당)를 나타내며, r은 '감소율', 즉 학습률을 얼마나 자주 감소시켜야 하는지(10은 10번 반복마다 감소하는 것에 해당)를 나타낸다. 여기서 ''바닥'' 함수(\lfloor\dots\rfloor)는 1보다 작은 모든 값에 대해 입력 값을 0으로 내린다.[4]

2. 3. 지수 기반 스케줄링

지수 기반 학습 스케줄링은 단계 기반과 유사하지만, 단계 대신 감소하는 지수 함수가 사용된다.[4] 감쇠를 고려한 수학적 공식은 다음과 같다.

:\eta_{n} = \eta_0e^{-dn}

여기서 d는 감쇠 매개변수이다.[4]

2. 4. 감쇠 (Decay)

감쇠는 학습을 안정적인 지점으로 유도하고 진동을 방지하는 역할을 한다. 너무 높은 고정 학습률은 학습이 최소값을 기준으로 앞뒤로 튀어 오르는 상황을 만들 수 있으며, 이는 하이퍼파라미터로 제어된다.[4]

시간 기반 학습 스케줄은 이전 시간 반복의 학습률에 따라 학습률을 변경한다. 감쇠를 고려한 학습률의 수학적 공식은 다음과 같다.

:\eta_{n+1} = \frac{\eta_n }{1+dn}

여기서 \eta는 학습률, d는 감쇠 매개변수, n은 반복 단계이다.

단계 기반 학습 스케줄은 몇 가지 미리 정의된 단계에 따라 학습률을 변경한다. 감쇠 적용 공식은 다음과 같이 정의된다.

:\eta_{n} = \eta_0d^{\left\lfloor\frac{1+n}{r}\right\rfloor}

여기서 \eta_{n}은 반복 n에서의 학습률, \eta_0는 초기 학습률, d는 각 감소 시 학습률이 얼마나 변경되어야 하는지(0.5는 반으로 줄이는 것에 해당)를 나타내며, r은 '감소율', 즉 학습률을 얼마나 자주 감소시켜야 하는지(10은 10번 반복마다 감소하는 것에 해당)를 나타낸다. 여기서 ''바닥'' 함수(\lfloor\dots\rfloor)는 1보다 작은 모든 값에 대해 입력 값을 0으로 내린다.

지수 기반 학습 스케줄은 단계 기반과 유사하지만, 단계 대신 감소하는 지수 함수가 사용된다. 감쇠를 고려한 수학적 공식은 다음과 같다.

:\eta_{n} = \eta_0e^{-dn}

여기서 d는 감쇠 매개변수이다.[4]

2. 5. 모멘텀 (Momentum)

모멘텀은 언덕을 굴러 내려가는 공과 유사하다. 공이 언덕의 가장 낮은 지점(최소 오차에 해당)에 도달하기를 원한다. 모멘텀은 오차 비용 기울기가 오랫동안 같은 방향으로 향할 때 학습을 가속화(학습률 증가)하고, 작은 요철을 '넘어감'으로써 지역 최소점을 회피한다.[4] 모멘텀은 공의 질량과 유사한 하이퍼파라미터로 제어되며, 수동으로 선택해야 한다. 너무 높으면 공이 찾고 싶은 최소점을 넘어갈 것이고, 너무 낮으면 목적을 달성하지 못할 것이다. 모멘텀을 고려한 공식은 감쇠보다 복잡하지만, Keras와 같은 딥러닝 라이브러리에 가장 많이 내장되어 있다.

3. 적응형 학습률

학습률 스케줄의 문제는 학습 세션마다 수동으로 선택해야 하고 문제나 사용된 모델에 따라 크게 달라질 수 있는 하이퍼파라미터에 모두 의존한다는 것이다. 이를 해결하기 위해 적응형 경사 하강 알고리즘에는 Adagrad, Adadelta, RMSprop, Adam과 같은 다양한 유형이 있으며, 일반적으로 케라스(Keras)와 같은 딥 러닝 라이브러리에 내장되어 있다.

3. 1. AdaGrad

AdaGrad는 각 매개변수에 대한 학습률을 조정하기 위해 이전 기울기의 제곱 합을 사용한다.[1] Adagrad는 적응형 경사 하강 알고리즘의 한 유형으로, RMSprop, Adam 등과 함께 사용된다.[1] 이러한 알고리즘은 일반적으로 케라스와 같은 딥 러닝 라이브러리에 내장되어 있다.[1]

3. 2. Adadelta

Adadelta는 AdaGrad의 학습률 감소 문제를 개선한 방법이다. 적응형 경사 하강 알고리즘에는 Adagrad, Adadelta, RMSprop, Adam과 같은 다양한 유형이 있으며, 일반적으로 케라스(Keras)와 같은 딥 러닝 라이브러리에 내장되어 있다.

3. 3. RMSProp

RMSProp은 AdaGrad의 학습률 감소 문제를 해결하기 위해 제안된 방법으로, Adadelta와 유사하다. RMSProp은 적응형 경사 하강 알고리즘의 한 종류이며, 케라스(Keras)와 같은 딥 러닝 라이브러리에 내장되어 있는 경우가 많다.

3. 4. Adam

Adam은 RMSProp과 모멘텀을 결합한 방법으로, 현재 가장 널리 사용되는 적응형 학습률 알고리즘 중 하나이다.[1] Adam은 Adagrad, Adadelta, RMSprop와 함께 적응형 경사 하강 알고리즘의 한 유형이며, 케라스(Keras)와 같은 딥 러닝 라이브러리에 내장되어 있는 경우가 일반적이다.[1]

참조

[1] 서적 Machine Learning: A Probabilistic Perspective https://books.google[...] MIT Press
[2] 간행물 Stochastic Approximation with Decreasing Gain: Convergence and Asymptotic Theory Université de Rennes 2000
[3] 서적 Fundamentals of Deep Learning : Designing Next-Generation Machine Intelligence Algorithms O'Reilly
[4] 서적 Deep Learning : A Practitioner's Approach O'Reilly
[5] 논문 An Overview of Gradient Descent Optimization Algorithms 2017
[6] 서적 Introductory Lectures on Convex Optimization: A Basic Course https://books.google[...] Kluwer
[7] 서적 Numerical Methods for Non-linear Optimization Academic Press
[8] 논문 Cyclical Learning Rates for Training Neural Networks 2017-04-04
[9] 서적 Probabilistic Machine Learning: An Introduction https://probml.githu[...] MIT Press 2021
[10] 웹사이트 How to Configure the Learning Rate When Training Deep Learning Neural Networks https://machinelearn[...] 2019-01-22



본 사이트는 AI가 위키백과와 뉴스 기사,정부 간행물,학술 논문등을 바탕으로 정보를 가공하여 제공하는 백과사전형 서비스입니다.
모든 문서는 AI에 의해 자동 생성되며, CC BY-SA 4.0 라이선스에 따라 이용할 수 있습니다.
하지만, 위키백과나 뉴스 기사 자체에 오류, 부정확한 정보, 또는 가짜 뉴스가 포함될 수 있으며, AI는 이러한 내용을 완벽하게 걸러내지 못할 수 있습니다.
따라서 제공되는 정보에 일부 오류나 편향이 있을 수 있으므로, 중요한 정보는 반드시 다른 출처를 통해 교차 검증하시기 바랍니다.

문의하기 : help@durumis.com