머신러닝 최적화 알고리즘(Optimization Algorithm) 유형 및 장단점
여러 자료들을 찾아보고 있는데, 전공 분야가 AI 가 아니다 보니 이해하는 것도 어렵네요.
향후 공부를 위해 참고할만한 유관 자료들을 우선 포스팅하며, 틈틈이 업데이트해 보겠습니다.
틀린 부분도 있을 수 있으니 선별해서 보셨으면 합니다.
핵심 키워드 : GD, SGD, Momentum, AdaGrad, Adam, Gradient, Learning rate
경사하강법 : 비용 함수를 최소화하는 매개 변수를 찾기 위해 사용되는 알고리즘
Epoch : 모든 훈련 데이터셋을 학습하는 횟수
Batch Size : 훈련 데이터셋 중 몇 개의 데이터를 묶어서 가중치 값을 경신할 것인지에 대한 정보
Iterations : 한 Epoch를 진행하기 위해, 몇 번의 가중치 갱신이 이루어지는지에 대한 정보
배치 경사하강법 (Batch Gradient Descent, BGD) : 배치 사이즈가 훈련세트 사이즈와 동일한 경사하강법
확률적 경사하강법 (Stochastic Gradient Descent, SGD) : 배치 사이즈가 1개인 경사하강법
미니 배치 확률적 경사하강법 (Mini-Batch Stochastic Gradient Descent, MSGD) :
배치 경사하강법과 확률적 경사하강법의 절충안으로,
전체 훈련세트를 1~M 사이의 적절한 batch size로 나누어 학습하는 것
머신러닝 최적화 알고리즘 개념
머신러닝 모델 학습 과정에서 모델의 오차를 최소화하거나,
정확도를 최대화하기 위해 파라미터를 조정하여 모델 성능 최적화 하는 알고리즘
머신러닝 최적화 알고리즘 유형 분류 I
Gradient 조절하는 알고리즘, Learning rate 조절하는 알고리즘으로 분류
머신러닝 최적화 알고리즘 유형 분류 II
머신러닝 최적화 알고리즘 유형의 장단점
유형 | 장점 | 단점 |
경사하강법 (GD, SGD) |
- 가중치를 Update 하는 옵티마이저 - 구현 간단, 확장성 높음 |
- 오버 슈팅 문제, 지역 최소점 문제 발생 - 지역 최소값 수렴 가증 |
모멘텀 최적화 (Momentum) |
- 지역 최소값 문제 해결 - 이동계수, 파라미터 통해 Update - Gradient 조절 |
- 관성으로 인해 최적값 지나칠 수 있음 - 설정에 따라 결과값 상이하게 도출 |
아다그리드 (Adagrad) |
- 파라미터 개별 기준 적용 가능 - 최적화 파라미터 변화 최소화 - Learning Rate 조절 |
- 학습 오래 진행시에 학습 불가 - 학습률 진행됨에 따라 학습률 줄어듬 |
아담(Adam) | - 하이퍼파라미터 튜닝 없이도 최적화 - RMSpros + Momentum |
- 일부 데이터 성능이 안좋을 수 있음 - 초기 w 업데이트 속도 느림 |
- SGD는 현재 시간의 gradient만 이용해서 weight를 update 하는 반면,
Momentum은 이전 시간의 gradient 까지도 고려하여 weight를 update 함.
- Momentum 기반의 SGD update rule은, 이전 시간에 A라는 방향으로 움직이고 있었던 물체를
B라는 방향으로 움직이도록 변경하여도,
일정 부분은 A라는 방향으로 계속 움직이려고 하는 힘이 작용하는 것을 나타냄
이게 관성과 관련된 내용 같네요. (↑)
- AdaGrad(Adaptive Gradient)는 weight 업데이트 시,
고정된 Learning Rate가 아니라 각각의 Weight마다 적합한 Learning Rate를 자동으로 설정한다.
세부 내용을 자세히 한번 읽어보시길 권고드립니다. (↓)
참고 자료
KPC 해설지
최적화, Optimizer - 데이터 사이언스 사용 설명서 (tistory.com)
[딥러닝]Optimization Algorithm (최적화 알고리즘) (velog.io)
딥러닝) optimizer ( SGD , Momentum , AdaGrad , RMSProp, Adam ) (tistory.com)
[DL] Momentum, NAG, AdaGrad, RMSProp, Adam (tistory.com)
[DL] 경사 하강법(Gradient Descent) (tistory.com)
'정보관리기술사 > ★ 130회 기출문제 풀이 ★' 카테고리의 다른 글
(130 관리 1-10) 정보시스템마스터플랜(ISMP)의 기본 구성 내용(단계별 활동, 세부내용, 산출물) (4) | 2023.07.21 |
---|---|
(130 관리 1-8) VXLAN(Virtual eXtensible LAN) (0) | 2023.07.19 |
(130 관리 1-7) 6G 이동통신 (0) | 2023.07.18 |
(130 관리 1-6) 블록 암호화 알고리즘 (0) | 2023.07.16 |
(130 관리 1-5) 드론의 보안위협과 대응방안 (0) | 2023.05.26 |
댓글