본문 바로가기

Mathematics

평균제곱오차와 선형예측

#1. 평균제곱오차

$X$라는 입력에 대해 $Y$를 출력하는 알고리즘이 있고, 이 알고리즘이 어떤 원리를 통해 $Y$를 출력하는지는 밝혀지지 않았다고 가정하자. 즉, 입력 $X$와 $Y$의 관계가 알려지지 않았다.

어떤 사람이 $Y=g(X)$라고 출력값을 예측한다고 하자. 이때, 예측의 오차는 $Y-g(X)$로 나타낼 수 있는데, 오차가 작을 수록 이 $g$는 $X$와 $Y$의 관계에 대한 좋은 예측이다. 따라서 자연스럽게 예측의 오차를 최소화하는 문제를 생각하게 된다.

입력값이 여러개이므로 출력값도 여러개이고, 예측값도 여러개일 것이다. 따라서 기댓값을 이용해 여러개의 예측 오차의 ‘평균적인’ 크기를 나타내기로 하자. 다만 ‘부호의 문제’를 피하기 위해, 분산을 정의했을 때와 비슷하게, 오차를 먼저 제곱한 다음 기댓값을 구하자. 이것을 평균제곱오차(Mean Squared Error, MSE; 均方误差)라고 한다.

$$ \mathrm{MSE}:=\mathbb{E}\left[(Y-g(X))^2\right] $$

MSE가 작을 수록 예측 오차의 ‘평균적인’ 크기가 작으므로 좋은 예측이다. 따라서 예측 오차를 최소화하는 문제는 곧 MSE를 최소화하는 문제로 치환된다. 이렇게 MSE를 최소화하는 예측방법을 ‘최소 평균제곱오차’(Minimum MSE, MMSE; 最小均方误差) 방법이라고 한다.

#2. 선형예측

흔히 함수 $g$는 다음과 같이 선형함수로 잡는다. 간단하기 때문이다. 이렇게 두 변량의 관계를 선형관계로 예측하는 것을 선형예측(Linear Prediction; 线性预测)이라고 한다.

$$ g(X)=aX+b $$

이렇게 하면 MSE는 $a$와 $b$의 함수가 된다. 지금부터 할 일은 미분법을 이용하여 MSE를 최소화하는 $a$와 $b$를 찾는 것이다. 우선 MSE를 전개하여 $a$와 $b$에 관한 이차형식으로 정리하자.

$$ \begin{split} \mathrm{MSE}&=\mathbb{E}[(Y-(aX+b))^2] \\ &=\mathbb{E}(X^2)a^2+2\mathbb{E}(X)ab+b^2-2\mathbb{E}(XY)a-2\mathbb{E}(Y)b+\mathbb{E}(Y^2) \\ \end{split} $$

최소가 되는 지점에서 MSE의 편미분은 0이므로, $a$와 $b$를 구할 수 있는 연립방정식을 얻는다. 이 방정식을 풀어 $a$와 $b$를 구하자. 여기서 공분산과 분산의 정의를 이용하여 $a$와 $b$를 간단히 할 수 있다.

$$ \begin{cases}\frac{\partial\mathrm{MSE}}{\partial a}=0\\\frac{\partial\mathrm{MSE}}{\partial b}=0\end{cases}\Rightarrow\begin{cases}a=\frac{\mathrm{Cov}(X,Y)}{\mathrm{Var}(X)}\\b=\mathbb{E}(Y)-\mathbb{E}(X)\frac{\mathrm{Cov}(X,Y)}{\mathrm{Var}(X)}\end{cases} $$

마지막으로, $a$와 $b$를 $g(X)$에 대입하여 정리한다.

$$ \begin{split} &g(X)=\frac{\mathrm{Cov}(X,Y)}{\mathrm{Var}(X)}X+\mathbb{E}(Y)-\mathbb{E}(X)\frac{\mathrm{Cov}(X,Y)}{\mathrm{Var}(X)} \\ &=\mathbb{E}(Y)+\frac{\mathrm{Cov}(X,Y)}{\mathrm{Var}(X)}(X-\mathbb{E}(X)) \\ &=\mu_2+\rho\frac{\sigma_2}{\sigma_1}(X-\mu_1) \\[5ex] &\mathbb{E}(X)=\mu_1,\space\mathbb{E}(Y)=\mu_2,\space\mathrm{Var}(X)=\sigma_1^2,\space\mathrm{Cov}(X,Y)=\rho\sigma_1\sigma_2 \end{split} $$

이렇게 얻은 선형예측 $g(X)=\mu_2+\rho\frac{\sigma_2}{\sigma_1}(X-\mu_1)$을 최적선형예측(Best Linear Prediction, BLP; 最佳线性预测)이라고 한다. 이 $g$는 모든 선형함수 중 $Y$와 $X$의 관계를 ‘가장 잘’나타낸다는 뜻이다. 여기서 ‘가장 잘’나타낸다는 것은 예측의 오차가 제일 작다는 것을 뜻한다.

한편, $a$와 $b$를 다시 MSE에 대입하면, MSE의 최소값을 얻을 수 있다.

$$ \min\mathrm{MSE}=\sigma_2^2(1-\rho^2) $$

$\rho=\pm1\Leftrightarrow\mathrm{MSE}=0$이다. 평균제곱오차가 0이라는 것은 선형예측의 오차가 존재하지 않는다는 뜻이고, $Y$는 $X$와 실제로 선형관계를 이룰 것이다. 한편, 상관계수의 절댓값이 1이면 완벽한 상관관계가 나타나며, 산점도에서는 직선의 형태로 그려졌다. (상관계수 참조.)

$\rho=0\Leftrightarrow a=0$이다. $a=0$이라는 것은, $Y$는 $X$와 아무런 상관이 없는 상수라는 뜻이다. 산점도에서는 수평선의 형태로 그려질 것이다. 한편, 상관계수가 0이라는 것은 비상관을 뜻한다.

이러한 사실들을 통해 다시 한번 상관계수의 의미를 음미할 수 있다.

#3. 최적예측

지금까지의 논의를 토대로, ‘선형함수 중’ 예측의 오차가 작은 함수가 $g(X)=\mu_2+\rho\frac{\sigma_2}{\sigma_1}(X-\mu_1)$이라는 결론을 낼 수 있다. 그렇다면 ‘모든 함수 중’ 예측의 오차가 작은 것은 무엇일까? 선형함수일까? 아니면 $g(X)=aX^2+bX+C$와 같은 비선형 함수일까?

이 문제를 해결하기 위해 다시 한번 목표를 명확히해보자.

$$ \mathrm{MSE}:=\mathbb{E}[(Y-g(X))^2]를\enspace최소화한다! $$

한편, 분산에 대해 논의할 때, $\mathbb{E}[(X-x)^2]$을 최소화하는 $x$는 바로 $\mathbb{E}(X)$였다. (이를 통해 기댓값이 분산의 ‘기준’이 될 수 있음을 정당화했다.)

$$ \mathbb{E}[(X-x)^2]를\enspace최소화\Leftrightarrow x=\mathbb{E}(X) $$

이 아이디어를 차용해서 문제에 접근해보자. $\mathbb{E}[(Y-g(X))^2]$를 최소화하려면 $g(X)=\mathbb{E}(Y)$여야한다. 좀더 정확히 표현하면, 지금 $X=x$라는 입력, 즉 조건이 주어졌으므로, 이 조건 하의 $\mathbb{E}[(Y-g(X))^2]$를 최소화하는 것이 $g(X)=\mathbb{E}(Y)$이다.

$$ \mathbb{E}[(Y-g(X))^2\mid X=x]를\enspace 최소화\Leftrightarrow g(x)=\mathbb{E}(Y\mid X=x) $$

결국 ‘모든 함수 중’ 예측의 오차를 최소화하는 함수는 조건부 기댓값이다. 다시 말해 $X=x$라는 입력에 대해, $Y$를 가장 잘 예측할 수 있는 함수, 즉 최적예측은 $\mathbb{E}(Y\mid X=x)$이다.

note: 조건부 기댓값 $\mathbb{E}(Y\mid X=x)$가 $x$에 관한 함수라는 사실을 다시 한번 강조한다.

만약 이 최적예측 $\mathbb{E}(Y\mid X=x)$이 선형함수라면, 최적선형예측이 되고, $\mathbb{E}(Y\mid X=x)=aX+b$와 같이 나타낼 수 있을 것이며, $a$와 $b$는 앞서 구한 값과 같아야 한다. 이 사실을 확인해보자. (지난 글에서 열심히 공부한 전체 기댓값의 법칙과 ‘Pulling out Known Factors’를 잘 활용하자. 평균과 기댓값 참조.)

$$ \begin{split} &\mathbb{E}(Y)=\mathbb{E}[\mathbb{E}(Y\mid X=x)]=\mathbb{E}[aX+b]=a\mathbb{E}(X)+b \\ &\therefore \mu_2=a\mu_1+b\cdots(1) \\ &\mathbb{E}(XY)=\mathbb{E}[\mathbb{E}(XY\mid X=x)]=\mathbb{E}[X\cdot\mathbb{E}(Y\mid X=x)]=\mathbb{E}[X(aX+b)]=a\mathbb{E}(X^2)+b\mathbb{E}(X) \\ &\therefore \rho\sigma_1\sigma_2+\mu_1\mu_2=a(\sigma_1^2+\mu_1^2)+b\mu_1\cdots(2) \\[5ex] &(1)\land(2)\Rightarrow a=\frac{\rho\sigma_2}{\sigma_1},\space b=\mu_2-\mu_1\frac{\rho\sigma_2}{\sigma_1} \end{split} $$

이상의 논의를 정리하면,

$\space$


(1) 최적선형예측: $g(X)=\mu_2+\rho\frac{\sigma_2}{\sigma_1}(X-\mu_1)$

(2) 최적예측: $g(X)=\mathbb{E}(Y\mid X)$

(3) 최적예측이 반드시 선형함수는 아니지만, 선형함수로 가정하면 최적선형예측이다.


$\space$

$x$가 주어질 때, $y$의 최적예측을 흔히 $\hat{y}(x):=\mathbb{E}(Y\mid X=x)$와 같이 나타내고, $\hat{y}(x)$를 $x$에 관한 $y$의 회귀(Regression; 回归)라고 한다. ‘회귀’란, 평균으로 되돌아간다는 뜻이다. 회귀 $\hat{y}(x)$가 선형함수일 경우, 선형회귀(Linear Regression; 线性回归)라고 부른다. 주어진 데이터에 대해 회귀를 찾고, 회귀의 적합성을 논의하는 것을 회귀분석(Regression Analysis; 回归分析)이라고 한다. (추후 작성 예정.)

'Mathematics' 카테고리의 다른 글

거의 어디서나  (0) 2023.01.17
이차형식  (0) 2023.01.16
이변량 정규분포  (0) 2023.01.09
상관계수  (0) 2023.01.02
공분산  (0) 2023.01.01