경사하강법은 모델과 실제 데이터가 일치하도록 매개변수를 조정하기 위해 사용된다. 그렇다면, 실제 데이터가 모델과 일치하는지 판단하는 기준은 무엇인가? 그것은 비용 함수(Cost Function) 또는 손실 함수(Loss function)로 표현된다.
이 비용 함수를 표현하는 방식은 여러가지가 존재하지만, 회귀의 경우 평균 제곱 오차(Mean Squared Error, MSE)를 많이 사용한다. MSE는 각 데이터와 모델의 예측의 차이를 제곱해서 모두 더하는 방식이다.
경사하강법은 결국 이 비용 함수의 최소값을 찾아내기 위한 알고리즘이다. 비용 함수를 표현한 그래프에서 기울기를 따라 내려가 저점을 찾아내는 방식으로 이해하면 된다. 여기서 또 하나의 중요한 매개변수가 있다. 학습률(learning rate)이라 하는데, 경사를 얼마나 빠르게 내려갈지 결정한다. 이 학습률이 너무 작으면 학습 효율이 떨어지고, 너무 높으면 최소값에 도달하지 못하고 진동하거나 발산하는 문제가 생길 수 있다.
또한 경사하강법은 지역 최소값 문제(Local Minimum Problem)가 발생할 가능성을 내포하고 있다. 초기 매개변수에 따라 목표한 전역 최소값(global minimum)을 찾지 못하고 지역 최소값(local minimum)을 가지고 있는 구덩이에 빠질 수 있다.