경사 하강법 Gradient descent method

HJ Koo·2022년 1월 11일
0

AI

목록 보기
8/10

[경사 하강법]은 손실 함수를 최소화 하기 위해 그래프를 따라 점점 아래로 내려간다.

H(x)=Wx+bH(x) = Wx + b

가설에서 알아내야 하는 것은 W와 b이다. 컴퓨터는 값을 변경하면서 cost값을 본다.
따라서 컴퓨터는 W와 b값을 바꾸가면서 cost 값이 떨어졌는지, 안 떨어졌는지를 본다.
cost 값이 떨어지면 옳바른 방향으로 가고 있는 것이고 cost 값이 안 떨어지면 반대 방향으로 가고 있는 것이다.

cost 값을 함수 그래프로 표현하면, 점이 iteration을 돈다고 한다.
cost가 반복학습을 통해 점이 점점 아래로 떨어져 최소값에 도달하는 것이 경사하강법이다.

이 때, 점이 한칸씩 전진하는 단위를 Learning rate라고 부른다. 학습을 하는 비율, 점 사이의 거리이다.
Learning rate가 크고 작은 것을 통해 학습 시간이 올마나 걸라는지 결정이 된다. 하지만 Learning rate 크다고 좋은 것은 아니다. 학습을 잘하기 위해서는 적절한 Learning rate 찾는 것이 필요하다.

Learning rate가 크면 최소점까지는 빨리 갈 수 있겠지만 반복 학습을 하기 때문에 값이 크니 진동을 하다가 최소점을 못 찾고 결국 팅겨나가는 경우가 있다. 그러면 값을 무한대를 출력하게 된다.
이런 상황을Overshooting이라고 부른다.

실제로 손실 함수를 그릴 수도 상상할 수도 없다.

굉장히 복잡할 것이고 2차원도 아닐 것이다. 간단하게 표현하면 아래와 같다.

profile
날마다 꾸준히 성장하는 Software Engineer

0개의 댓글