2022. 1. 7. 01:35ㆍ공부한 내용/머신러닝 이론
0. 최적화 문제 해결하는 방법들
-Gradient descent method
-Newtom method
-Gauss-newton
-Levenberg-marquardt
-BFGS
-Conjugate gradient
...
1. Gradient Descent 정의
-gradient: 각각의 변수에 대해 함수를 편미분한 값으로 이루어지는 벡터
-learning rate: 단계 별 사이즈(길이)를 조정하는 변수
*Gradient Descent 슈도 코드
① 시작점(파라미터) w(t) 무작위로 선택
② 중단하는 조건을 만족할 때까지 다음의 식을 반복
w(t+1) = w(t) + r(dE/dw) ,E: Error function, r: learning rate, w: parameter
※중단 조건
-w(t+1)-w(t)의 절댓값이 매우 작을 때
-f(w)가 거의 움직이지 않을 때
-반복횟수 사전에 제한
※파라미터가 두개 이상 이라면 각각의 파라미터에 대해 병렬적으로 경사하강법 실행
2. Gradient Descent 종류
1) Batch Gradient Descent
: 전체 데이터를 학습 데이터로 이용
-전체 데이터를 이용하므로 학습 속도가 느림
-상대적으로 local optima에 빠지기 쉬움
2) Stocastic Gradient Descent
: 데이터 하나씩만 이용하면서 업데이트
3) Mini batch Gradient Descent
: 임의의 수로 데이터 표본 추출한 후 그를 학습 데이터로 이용하여 매번 업데이트
(업데이트 시 매번 표본추출을 거침)
-작은 배치 사이즈는 학습 속도가 빠름
-또한 과적합과 local optima를 방지할 수 있음
'공부한 내용 > 머신러닝 이론' 카테고리의 다른 글
Evaluation Metrics (0) | 2022.01.08 |
---|---|
과적합 문제 해결, Generalize our Models (0) | 2022.01.08 |
회귀 모델(Regression Models) (0) | 2022.01.07 |
머신러닝 Optimization Problem 해결법 2가지 (0) | 2022.01.07 |
지도학습, 비지도학습, 강화학습 (0) | 2022.01.07 |