본문 바로가기

ML & DL

gradient descent 업데이트 방법 종류

epoch 
데이터셋 한번 다보면 1 epoch

step or iteration 
gradient update를 하는 매 step단위

parameter
학습되는 값

hyper parameter
학습되지 않고 학습 이전에 미리 지정해주는 값

local minima
어떤 방향에 대해서도 경사하강법을 적용할 수 없는 지점 중 가장 깊지 않지만 움직일 수 없는 지점
global minima
어떤 방향에 대해서도 경사하강법을 적용할 수 없는 지점 중 가장 깊은 지점

고차원에서는 local minima가 발생하기 확률적으로 발생하기 힘들다는 논문도 있다. 여러 차원중 조금이라도 내려가는 방향이 있다면 경사 하강법은 진행된다.

saddle point
최저점이 아닌데 미분값이 0이라 움직일 수 없게되는 지점. 해당 지점이 평평하다.

gradient descent 업데이트 방법
full batch gradient descent 
모든 데이터 셋 N개에 대해 loss를 계산하고 평균내어 파라미터를 업데이트 하는 방법
데이터 셋이 너무 크면 메모리 부족
느린 학습 수렴 속도
과적합에 취약

stochastic gradient descent 
데이터 샘플 1개씩 loss를 계산하고 모델을 업데이트 하는 방법
더 빠른 학습 수렴 속도
local minima에 빠질 위험이 있음

mini-batch gradient descent 
데이터 샘플 K개씩 loss를 계산하고 모델을 업데이트 하는 방법
빠른 학습 수렴 속도
local minima에 빠질 위험 적음
global minima를 찾아 가기에더 적절한 stochastic이 있어서 local minima를 탈출 하기에도 좋음

'ML & DL' 카테고리의 다른 글

Langchain으로 LLM에 RAG(검색증강생성)을 적용해 보기  (1) 2024.02.18
Classification  (0) 2023.06.06
인공 신경망  (0) 2023.05.07
선형대수 기본  (0) 2023.04.24
앙상블 기법  (0) 2023.04.19