지금까지, 컴퓨터가 어떻게 가설(직선)을 만들 수 있는지...
그 가설이 얼마나 합리적인지를 판단하는 비용(방법)에 대해서 알아보았습니다.
그럼 컴퓨터는 최소의 비용 즉 오차를 빠르게 찾을 수 있는지에 대해서 알아볼 필요가 있습니다.
이때, 수학 이론의 하나인 경사 하강법이 있습니다.
경사 하강법을 이용한다면 컴퓨터는 최소의 비용을 쉽고 빠르게 찾을 수 있습니다.
(지금부터 설명하는 내용은 수학적 개념이기 때문에 이해가 안되도 상관 없습니다.
경사하강법을 통해 빠르고 쉽게 최소의 비용을 찾는다 정도만 기억하시면 됩니다.)
먼저, 가설(예측값)을 Wx 라고 실제 값을 y 라고 가정 하겠습니다.
그러면 비용을 구하는 공식은,
이기 때문에, 다시 쓰면....
라고 표현 할 수 있게 됩니다. 해당 식은 2차 함수이기 때문에, 다음과 같이 2차 함수 그래프 형태로 나타낼 수 있습니다.
(그래프 상에 x축은 w... y축은 cost 값입니다.)
컴퓨터는 최소의 cost를 찾아야 하니깐, 그래프의 최소점!!
가장 밑에 지점을 찾으면 되는 것입니다.
만약 임의의 w값을 정해주면,
그래프 선상에 한 점으로 나타낼 수 있습니다.
여기서부터 특정 구간을 정해주어 경사를 타고 쭈욱~ 내려가는 것입니다.
(특정 구간을 머신러닝에서는 learning rate(학습률)라고 표현합니다.)
그럼 임의의 한 점에서부터 특정한 learning rate 간격으로 밑으로 내려가 보도록 하겠습니다.
그러면 이렇게 맨 밑까지 내려올 수 있을 것입니다.
과연 컴퓨터는 가장 밑까지 내려왔는지를 어떻게 판단을 할 수 있을까요?!
바로 여기서 미분의 개념이 들어가는 것입니다.
미분에 대해서 잘 모르신다면, 그냥 그래프 선상의 한 점에서 기울기를 알기 위한 직선이라고 생각하시면 됩니다.
컴퓨터가 특정 구간을 따라 내려올 때 마다, 미분값을 구해주어서 0인지 아닌지를 판단하는 것입니다.
만약 0이 된다면, 컴퓨터는 다 내려왔구나... 라고 판단을 할 수 있겠죠..?!
그럼...! 지금까지의 설명들을 종합하여 정리해보겠습니다!!!
컴퓨터는 임의의 w(weight)를 선택하여 그 때의 비용을 구하고,
특정 구간(learning rate)을 따라 더 낮은 비용을 갖는 w를 구해주는 것을...
여러번 반복 해줍니다. 언제까지? 비용이 0이 될 때까지!!
만약 비용이 0이 된다면, 그 때의 w를 가지고 가설을 만들어 주는것입니다.
즉, 무한한 선을 그리지 않아도 합리적인 선을 빠르게 구해줄 수 있는 것입니다.
.
.
.
(사실 비용이 0이 되는 경우는 없을 것입니다.
왜냐하면... 특정 구간(learning rate)이 0을 지나쳐 버릴 수도 있기 때문인데요..!
제가 0이라고 표현 한것은 0에 가까운 숫자라고 생각하시면 됩니다!ㅎ)
다음 포스팅에서는, 특정 구간(learning rate)에 대해서 자세히 알아보도록 하겠습니다.
'AI > Machine Learning' 카테고리의 다른 글
머신 러닝 - 다중 선형 회귀(Multi Variable Linear Regression) (0) | 2021.01.02 |
---|---|
머신 러닝 - 선형 회귀(4)_학습률(Learning Rate) (0) | 2021.01.02 |
머신 러닝 - 선형 회귀(2)_비용(cost / loss) (0) | 2021.01.02 |
머신 러닝 - 선형 회귀(1)_가설(Hypothesis) (0) | 2021.01.02 |
머신 러닝 - 선형 회귀(Linear Regression) (0) | 2021.01.02 |