수학:오차_분석

표준 오차

$n$번의 반복 실험을 통해 관찰된 값들 $x_1, x_2, \ldots, x_n$이 있을 때, 보고하는 값은 평균 $$\overline{x} = \frac{1}{n} \sum_{i=1}^n x_i$$ 와 표준오차(standard error) $$\sigma_m \approx \sqrt{\frac{\sum_{i=1}^n (x_i-\overline{x})^2}{n(n-1)}}$$ 이다. 표준오차는 분산 $\sigma$와 비교했을 때 $\sigma_m = \sigma / \sqrt{n}$의 관계게 있다.

분산과 표준오차는 다른 목적을 가지고 있다: 분산은 한정된 수의 샘플을 통해 거대한 모집단의 특성을 추정하고자 할 때 계산하는 양이다. 그래서 많은 경우 $n$이 커지면 어떤 유한한 값, 즉 모집단이 가지고 있는 퍼짐의 정도에 수렴한다.

반면 표준오차는 재현가능성(reproducibility)에 초점이 맞추어져 있어서, “내가 얻은 평균”이 참값(모집단의 평균)에 얼마나 가까울지를 추측하는 것이다. 내가 $n$번의 반복으로 얻은 평균과, 다른 사람이 또 독립적으로 $n$번 실험하여 얻은 평균이 얼마나 다를지를 알려준다고 할 수도 있다. 이 양은 $n$이 커질수록 점점 작아진다.

선형 회귀 분석

$n$개의 데이터 $(X_i, Y_i)$가 주어져있을 때 $\hat{Y}_i=a+bX_i$를 가정하여 $Q \equiv \sum(Y_i-\hat{Y_i})^2$을 최소화하는 것이 목표이다.

평균 제곱근 오차(root-mean-squared error)를 $$s_{\small Y \cdot X} \equiv \sqrt{\frac{\sum_{i=1}^n (Y_i - \hat{Y}_i)^2}{n-2}}$$ 로 정의하자. $$\overline{X} \equiv \frac{1}{n} \sum_{i=1}^n X_i$$ $$\overline{Y} \equiv \frac{1}{n} \sum_{i=1}^n Y_i$$ 로 정의하면 계수 $a$와 $b$는 $$a = \overline{Y} - b \overline{X}$$ $$b = \frac{Cov(X,Y)}{Var(X)} = \frac{\sum_{i=1}^n (X_i-\overline{X})(Y_i-\overline{Y})}{\sum_{i=1}^n (X_i-\overline{X})^2}$$ 로 결정된다. 나아가 $$SS_x \equiv \sum_{i=1}^n (X_i-\overline{X})^2$$ $$SS_y \equiv \sum_{i=1}^n (Y_i-\overline{Y})^2$$ $$SS_{xy} \equiv \sum_{i=1}^n (X_i-\overline{X})(Y_i-\overline{Y})$$ 라고 놓으면 기울기 $b$의 표준오차는 $$s_b = \sqrt{\frac{SS_y/SS_x - b^2}{n-2}} = \frac{s_{\small Y \cdot X}}{\sqrt{SS_x}},$$ 그리고 $a$의 표준오차는 $$s_a = s_{\small Y \cdot X} \sqrt{\frac{1}{n} + \frac{\overline{X}^2}{SS_x}}$$ 이다.

좀더 정밀하게는 $t$ 분포를 사용해서, $100(1-\alpha)\%$ 신뢰구간을 볼 경우 $t(n-2;\alpha/2)$를 곱하여 보고한다.

$i$ $X_i$ $Y_i$
1 4 9
2 8 20
3 9 22
4 8 15
5 8 17
6 12 30
7 6 18
8 10 25
9 6 10
10 9 20

계산해보면 $a = -2.270$, $b = 2.609$이며 $SS_x = \sum (X_i - \overline{X})^2 = 46$, 평균 제곱근 오차는 $s_{\small Y \cdot X} = 2.631$이다. $b$의 표준오차는 $\sigma_b = s_{\small Y \cdot X}/\sqrt{SS_x} = 0.388$, $a$의 표준오차는 $s_a = s_{\small Y \cdot X} \sqrt{\left( \frac{1}{10} + \frac{\overline{X}^2}{SS_x} \right)} = 3.212$이다.

이 예에서 자유도 $n-2=8$이므로 95% 신뢰구간을 보고하려면 $t(8;0.025)=2.306$을 표준오차에 곱해서 $b = 2.609 \pm 0.895$, $a = -2.270 \pm 7.402$로 적는다.

종종 $(0,0)$을 지나는 것이 너무나 자명한 경우 이 사실을 이용할 수 있다. 이 때 기울기는 $$b = \frac{\sum X_i Y_i}{\sum X_i^2}$$ 으로 추정하고 그 표준오차는 다음과 같다: $$s_b = \sqrt{\frac{\sum (Y_i - b X_i)^2}{n-1}} \frac{\sqrt{\sum X_i^2}}{\sum X_i^2}.$$

참고문헌

  • Boas, Mathematical Methods in the Physical Sciences (Wiley, Hoboken, NJ, 2006).
  • 박성현, 김성수, 강명욱, 회귀분석입문 (한국방송통신대학교출판부, 서울, 2008).
  • 수학/오차_분석.txt
  • Last modified: 2023/09/05 15:46
  • by 127.0.0.1