Linear Regression

멋쟁이토마토·2023년 11월 13일
0

Machine Learning

목록 보기
1/4
post-thumbnail

Review - Linear Regression

model

  • 일반적으로 parameter β를 추정하기 위한 학습데이터 집합 (x1x_1, y1y_1), ... ,(xNx_N, yNy_N)를 가짐
  • 선형 회귀 모델은 inputs이 X1X_1, ... ,XpX_p일 때 E(XY)E(X|Y)의 함수를 추정하는 것

Estimation

추정 방법은 RSS를 최소로 만드는 β를 구하는 것
( XXN(p+1)N * (p+1) matrix, β = (β0β_0, ... , βpβ_p)T)^T, yyNN vector )
📌 X가 p+1인 이유는 intercept까지 포함되기 때문
📌 p는 #feature, N은 #observation


❓만약 XX가 선형 독립이 아니라서 XX가 full rank가 아니라면
XTXX^TX가 singular이 되고, least squares coefficients β^\widehat{β}가 명확하게 정의되지 않을 수 있음.
➡ 특이값 분해(Singular Value Decomposition, SVD) 등의 기술 사용

Inference

📌 β^j\widehat{β}_jσ^2\widehat{σ}^2은 통계적으로 독립

To test H0H_0 : βj=0β_j = 0 (j=0,...,p(j = 0, ... , p)

zj=β^jσ^vj+1z_j = \frac{\widehat{β}_j}{\widehat{σ}\sqrt{v_{j+1}}} 사용 (vjv_j는 (XTXX^TX)1)^{-1}jj번쨰 diagonal element)

Under H0H_0, vjv_j ~ tNp1t_{N-p-1}

(1α)(1-\alpha) x 100% CI of βjβ_j : β^j±\widehat{β}_j\pmtα/2,Np1se(β^j)t_{\alpha/2,N-p-1}se(\widehat{β}_j)



To test H0H_0 : βp0+1=...=βp1=0β_{p_0+1} = ... = β_{p_1} = 0

use F=(RSS0RSS1)/(p1p0)RSS1/(Np11)F = \frac{(RSS_0 - RSS_1) / (p_1 - p_0)}{RSS_1/(N-p_1-1)}

RSS1RSS_1p1+1p_1+1개의 파라미터를 갖는 큰 모델의 RSS이고, RSS0RSS_0p0+1p_0+1개의 파라미터를 갖는 작은 모델의 RSS임.
Under H0H_0, FF ~ Fp1p0,Np11F_{p_1-p_0,N-p_1-1}

✔ F distribution은 x2x^2 2개의 ratio로 이루어짐
x2x^2 > 0 ➡ F distribution도 항상 > 0 ➡ RSS0RSS1>0RSS_0 - RSS_1 > 0


❓왜 항상 RSS0RSS_0RSS1RSS_1보다 클까

RSS0RSS_0은 simple model, RSS1RSS_1은 complex model로 RSS1RSS_1에서 일부 parameter를 0으로 둔 것이 RSS0RSS_0이 됨.
➡ simple model의 RSS > complex model의 RSS


The Gauss-Markov Theorem

parameter β에 대한 least squares estimate(최소 제곱 추정치)는 모든 linear unbiased estimates 중에서 분산이 가장 작은 값임

biased estimator에 더 작은 MSE(Mean Squared Error)가 존재할 수 있음
➡ 약간의 bias를 감수하고 variance의 큰 감소시키는 효과를 가질 수 있음
➡ least squares coefficients의 일부를 줄이거나 0로 설정하여 biased estiamte로 만들 수 있음. (variable selection & ridge regression)

💡 쉽게 말하면, bias가 없는 estimator(unbiased estimator) 중에 variance가 가장 작은 것을 찾는 것이 Gauss-Markov Theorem인데, bias가 있는 것 중(biased estimator)에 variance가 굉장히 작아서 총 MSE가 bias가 없는 것보다 더 작은 식이 있을 수 있음

➡ 우리는 작은 MSE를 찾는 것이 목표이기 때문에, bias가 있지만 variance가 작아서 총 MSE 값을 더 작게 가질 수 있다면, biased estimator를 선택할 수 있음.

Comparison of Linear regression with KNN

KNN은 Regression과 Classification 두 가지로 쓰이는데, 이 부분에서는 Regression 측면에서만 보도록 하겠음

KNN regression


N0N_0 : x0x_0와 가까운 KK개의 training observation

c.f. KNN Classifier

NNx1x_1x2x_2yy
1A
.........B
.........O
100......A

간단하게 예시를 들자면, xix_i와 가까운 k개의 데이터를 찾는 것
1K\frac{1}{K}iN0\displaystyle\sum_{i\subset N_0}I(yi=A)I(y_i = A) ➡ A형과 비교 ➡ A형인 observation 수 / k
와 같이 B형, O형, AB형 모두 구한 뒤, 가장 큰 확률이 나오는 class로 분류

왼쪽 그림이 K=1일 때이고, 오른쪽 그림이 K=9일 때 + 주황색 dots는 observations
왼쪽 그림은 wiggly하고 오른쪽 그림은 smooth한데, K가 작으면 값들의 분포가 크고 K가 크면 값들의 분포가 크지 않아서 smooth 해짐

📌 wigglyvarvar🔺, bias2bias^2🔻
📌 smoothvarvar🔻, bias2bias^2🔺

  • true form이 linear할 경우

OLS는 K값의 변화에 따라 변화하지 않고, KNN은 K값의 변화에 따라 달라짐.
➡ 위 그래프에서는 OLS의 MSE가 더 낮으므로 OLS가 더 좋음.

  • true form이 linear하지 않을 경우

➡ 위 그래프에서는 KNN의 MSE가 OLS의 MSE보다 더 낮으므로 KNN이 더 좋음.

  • Curse of dimensionality in KNN

➡ dimension이 증가할수록 KNN의 성능🔻



reference - Introduction to Statistical Learning

profile
better than yesterday !

1개의 댓글

comment-user-thumbnail
2023년 11월 13일

감사합니다. 이런 정보를 나눠주셔서 좋아요.

답글 달기