확률적 경사하강법은 대표적이고 인간에게 아담과 같은 존재인 경사 하강법(Gradient Descent, GD)에게서 파생된 최적화 알고리즘(Optimizer, 옵티마이저)이다. 일단 본 포스팅에 앞서 경사 하강법에는 Mini Batch Gradient Descent도 있지만 보통 mini batch를 SGD를 포함시켜서 mini batch의 특징도 SGD로 설명 하였다. 경사 하강법의 단점과 확률적 경사하강법의 원리 그러나 GD에게는 치명적인 단점이 있는데 바로 한스텝 내딛을 때마다 전체 데이터를 이용하는 단점이 있다. 이를 등산으로 비교하자면, 내가 한걸음 옮길 때마다 지도랑 나침반보고 갈길 정한다는 것과 같다. 대충 들어도 엄청 비효율적인것 같지만 반면에 성능자체는 꽤 괜찮게 나올 수 있다는 것도 대..
기계 학습은 매개변수인 W(weight, 가중치)와 B(bias, 편향)을 찾기 위해서 반복 작업을 하는 것으로 해석할 수 있다. 최적화 알고리즘(optimizer)는 이 매개변수를 찾기 위한 최적화된 알고리즘을 제공하는 것인데 가장 기본적인 것으로는 Gradient Descent가 있다. 이름에서 풍기는 것처럼 기울기를 구한 후, 기울기가 낮은 쪽으로 계속 이동시켜서 극값에 이를 때까지 반복한다. 좀 쉽게 이해를 하자면, 우리가 산을 등산한다고 가정을 해보자. 꼭대기로 이동을 한다면 인간은 어떻게 움직일 것인가? 바로 경사가 높아지는 쪽으로 계속 움직여서 정상에 도착을 할 것이다. 반대로 하산한다면, 경사가 낮아지는 쪽으로 움직일 것이다. 이 간단한 원리가 바로 Gradient Descent이다. 위와..