Sir Francis Galton이 자연현상을 측정하기 위해 통계적인 방법을 활용하며 선형회귀를 고안하였음
(위의 도표는 최초의 선형회귀에 대한 그래프)

콩의 부모와 자식간의 상대적 크기에 대한 데이터를 살펴보던 중 특이한 점을 발견하였음
부모가 크면 클 수록 자식의 크기 또한 커지는 경향을 발견함.
그렇다면 그 세대 내에서 그 자식세대는 다른 자식세대에 비해 얼마나 클 것인가?
자식세대의 크기 차이 비율은 부모세대의 크기 차이 비율보다는 상대적으로 낮게 나타났음.
가령 부모의 크기가 평균보다 1.5표준편차만큼 크다면, 자식세대는 1.5표준편차보다는 작게 큼.
결국 평균으로 회귀를 하는 모습을 보였고 이러한 특성으로 인해 Linear Regression 이라는 명칭으로 불리게 됨
그리고 컴퓨팅 파워가 발전하면서 이런 현상이 큰 데이터셋에도 잘 적용됨을 알게됨

위의 식은 일반화된 회귀모델을 수식으로 표현한 것으로 피처(x)들과 가중치(w)를 곱한 것들의 합(y)으로 나타난다.
이 식을 우리가 가진 데이터 셋의 모든 행에 적용함으로서 예측값을 만들어낼 수 있음.
이 식의 형태는 선형회귀 뿐만 아니라 딥러닝의 신경망 네트워크 등에 있어서도 매우 중요함.

그러면 예측된 값 좋은지 나쁜지 어떻게 알 수 있을까?
→ 손실함수(Loss function)을 적용해서 알 수 있다.

회귀문제에서 주로 사용되는 손실함수는 MSE이다.
위의 식은 L2 Norm이라는 것을 계산하는 식으로 실제 값(y)에서 예측된 값(Xw)의 차이를 기반으로 손실을 계산한다.

머신러닝 모델을 최적화시킬 때, 손실함수가 계산한 손실값이 최소화되는 지점을 찾아내야 한다.
이를 위해 가중치를 조정해가며 모델의 손실값이 최소화되는 지점을 발견해야 함.

그러면 가중치 값을 어떻게 조절해야 손실값을 최소화할 수 있는가?
선형회귀에서는 위와 같은 식이 존재함.
하지만 이는 실용적이지 못함. 중복성 데이터에 대한 고려가 없고, 시간도 오래 걸림.

위의 방법 대신, 경사하강법(Gradient Descent)을 적용할 수 있는데,
다음과 같은 이점있음

  1. 비교적 낮은 시간과 공간 복잡도
  2. 일반화가 더 잘됨
  3. 대부분의 문제에도 활용이 가능함

위의 그래프는 세 개 가중치 파라미터에 대한 3차원 형태의 손실값 공간으로
산과 계곡처럼 굴곡진 형태로 표현이 됨.

경사하강법에서는 위의 평면 어디에서 시작을 하던지 내려가는 경사를 따라가며, 제일 낮은 지점을 찾아간다.
그 지점이 손실이 최소화되는 지점(Global Minimum)임.

경사하강으로 얻어진 정보(방향/경사도)를 이용해서, 한 번에 하강할 보폭의 크기를 결정해야하는데,
그 정도를 학습률(learning rate)이라고 한다.

+ Recent posts