선형 회귀을 다루기 전에 먼저 회귀 모델이 무엇인가를 알아야 한다.
회귀모델은 변수들 사이의 관계를 모델링하는 방법으로 **독립변수(설명변수)**와 종속변수(반응변수) 사이의 관계를 찾아내어 예측하거나 이해하는 것이다.
독립변수(Independent Variable)
독립변수는 실험이나 모델에서 조작하거나 변화시키는 변수로, 다른 변수에 영향을 주는 변수이다. 즉, 독립변수의 변화가 종속변수의 결과에 영향을 미친다. 예를 들어, 식물의 성장률을 예측하는 모델에서 물의 양이 독립변수가 될 수 있다. $p$개의 독립변수를 사용한다면 벡터 표현을 사용하여, 주로 $X = (X_1,...,X_p) \in \mathbb{R}^p$로 표기한다.
종속변수(Dependent Variable)
종속변수는 연구 또는 실험에서 측정되는 결과로, 독립변수의 영향을 받는 변수이다. 다시 말해, 이 변수는 독립변수에 의해 변화되는 변수이다. 위 예시에서 식물의 성장률은 물의 양에 의해 영향을 받으므로 종속변수이다. 주로 $Y \in \mathbb{R}$로 표기한다.
회귀모델(Regression model)
관측된 데이터셋 $\{(x_1,y_1),...,(x_N,y_N)\}$을 이용하여 모델을 만들어 새로운 독립변수가 입력되면 그에 대한 종속변수를 예측하는것이 회귀모델의 목표이다. 주로 통계학에서는 $X$에 대한 함수 $f(X)$를 모델로 사용하여 손실함수 $L(Y,f(X))$를 정의해, 이를 최소화하는 $f(X)$를 찾는 것이 목표이다. 회귀분석에서는 주로 손실함수로 $Y$와 $f(X)$간의 차의 제곱합을 이용한다.
따라서 이를 수식으로 나타내면, 다음을 만족하는 함수 $f$를 찾는것이다.
$$ \begin{align*} \argmin_f EPE(f) &= \argmin_f \mathbb{E}_{X,Y} (Y-f(X)^2) \\ &= \argmin_f \mathbb{E}X\mathbb{E}{Y|X}(Y-f(X)^2|X=x) \end{align*} $$
이는 $X$의 각 점마다 최솟값을 찾는 함수를 생각한다면, 조건부 기댓값임을 쉽게 보일 수 있다. 즉, $f(x) = \mathbb{E}(Y|X=x)$이다.
선형회귀(Linear regression)
선형회귀 모델은 이러한 조건부 기댓값 $f(x)$가 선형일 것이라 가정한다. 즉, $f(x) \approx x^T\beta$일 것이라 가정하고, 이때의 최적의 $\beta$를 찾는 것이다. 즉, $\beta^* = \argmin_{\beta}\mathbb{E}(Y-X^T\beta)^2$를 찾는다. 이는 미분값이 0인 지점이 최솟값이다.
$$ \begin{align*} \frac{\partial}{\partial \beta}\mathbb{E}(Y-X^T\beta)^2 &= -2\mathbb{E}(XY) + 2\beta\mathbb{E}(XX^T) = 0 \\ \beta^* &= [\mathbb{E}(XX^T)]^{-1}\mathbb{E}(XY) \end{align*} $$
즉 이론적으로 $[\mathbb{E}(XX^T)]^{-1}\mathbb{E}(XY)$ 를 구하면 최적의 파라미터를 구할 수 있다. 하지만 우리는 유한한 관측값의 데이터셋을 이용하여 모델링을 진행해야하므로, 이는 바로 유도할 수 없고, 모델링을 진행할 데이터 셋을 활용해 기댓값을 근사하여 구해야 한다.
$N$개의 관측 데이터셋이 주어졌다면, 이 각각의 관측값들을 행별로 합치면, 독립변수들은 행렬로 종속변수들은 벡터로 $\mathbf{X} \in \mathbb{R}^{N \times p}, \mathbf{y} \in \mathbb{R}^N$와 같이 표현할 수 있다. 관측데이터만으로 위의 손실함수인 차의 제곱합을 표현한다면 다음과 같이 쓸 수 있다.