본문 바로가기

머신러닝/[기타]

Ordinary Least Squares, OLS

 선형 회귀 관련 글을 읽다 OLS formula- 라는 것을 접했는데, 보통의 최소제곱..? 이라고 해석되는 OLS는, 결국 저희에게 친숙한 최소제곱법(Least square method)을 통한 풀이방식 중 하나인 것 같습니다. y = ax +b 라는 식으로 시작되어 문제를 해결하는 선형 회귀 모델은 실제 행렬을 통해 포현하면, Homogeneous coordinate를 통해, y = Xw와 같은 식으로 표현될테고, 이들의 잔차(Residual)는 y - y^ = y - Xw 로 표현되겠지요. 그럼 이런 잔차들의 제곱합 = Sum(y-Wx)^2을 최소화하는게 저희의 문제, 즉 최소제곱법 문제입니다. 이러한 문제는 경사하강법 또는 뉴턴법 등의 다양한 알고리즘으로 풀 수 있을텐데, 이중 가장 Ordinary한 풀이 방법이라 하여 OLS라 칭하는 것 같습니다. 내용의 골자는, 그냥 잔차 제곱합의 미분식이 0이 되도록 하는 W를 직접 계산하라는 겁니다. 아래와 같이 진행하면됩니다.

 이런 흐름에서 당연히 X'X 행렬이 역행렬을 가져야 말이 되는 해석입니다. 어떤 행렬이 역행렬을 갖는다는 말은, 행렬식(Determinant)가 0이 아니다- 와 같고, 이는 다시 해당 행렬의 각 컬럼들이(또는 로우들이) 모두 선형 독립이다- 와 같으니, 이런 조건을 체크하시고, 만족하면, OLS를 적용할 수 있겠습니다. 제일 마지막 w = blahblah... 를 바로 대입해서 써먹을 수 있다는게 장점이겠지요.

'머신러닝 > [기타]' 카테고리의 다른 글

CNN의 흐름? 역사?  (0) 2020.09.02
Universal Approximation Theorem, UAT  (0) 2020.06.17
Senna's Embedding / Gazetteer feature?  (0) 2020.06.02
Sigmoid, Logit and Softmax  (0) 2020.06.01
비유동적 데이터(Stationary data)  (0) 2020.03.26