최소 제곱법과 신뢰구간
본문용수철에 추를 0.5 N씩 더 걸며 늘어난 길이를 다섯 번 재어 그래프에 점을 찍었다. 점들은 거의 한 줄로 늘어섰지만 조금씩 어긋나 있다. 모둠의 다섯 명이 저마다 자를 대고 직선을 그었더니 기울기가 3.8부터 4.2까지 나왔다. 기울기에서 용수철 상수를 구해야 하는데, 누구의 직선을 믿어야 할까? 그리고 그 기울기는 몇째 자리까지 믿을 수 있을까?
1.2.1잔차의 제곱을 가장 작게
점들 사이로 직선 \(y = a + bx\)를 하나 그으면, 각 점은 직선에서 위나 아래로 조금씩 떨어져 있다. 측정값에서 직선의 값을 뺀 \(y_i - (a + bx_i)\)를 잔차라 한다. 잔차를 그냥 더하면 양수와 음수가 지워지므로, 제곱해 더한 값을 직선이 점들에서 벗어난 정도로 삼는다. 이 합이 가장 작아지는 \(a\)와 \(b\)를 고르는 것이 최소 제곱법이다. 같은 점들이 주어지면 누가 계산해도 같은 직선이 나오므로, 손으로 그은 직선처럼 사람마다 달라지지 않는다.
점 \((x_i, y_i)\) \(n\)개의 평균을 \(\bar{x}, \bar{y}\)라 하면 최소 제곱 직선의 기울기와 절편은 \[b = \frac{\sum (x_i - \bar{x})(y_i - \bar{y})}{\sum (x_i - \bar{x})^2}, \qquad a = \bar{y} - b\,\bar{x}\]이다. 잔차의 흩어짐 \(s = \sqrt{\sum r_i^2 / (n-2)}\)로 기울기의 표준 오차를 \(\sigma_b = s / \sqrt{\sum (x_i - \bar{x})^2}\)로 어림한다.
직선은 언제나 평균점 \((\bar{x}, \bar{y})\)를 지난다. 그래서 기울기만 구하면 절편은 저절로 정해진다. 분모 \(\sum (x_i - \bar{x})^2\)은 \(x\)값들이 얼마나 넓게 퍼졌는지를 나타낸다. 시소의 받침점이 평균점이라고 생각하면, 양 끝의 점이 멀리 있을수록 같은 흔들림에도 기울기가 덜 흔들린다.
1.2.2기울기를 얼마나 믿을까
측정을 처음부터 다시 하면 점들이 조금 다르게 찍히고, 기울기도 조금 달라진다. 기울기의 표준 오차는 이 흔들림의 크기를 어림한 값이다. 측정점이 충분히 많으면 다시 잰 기울기의 약 95%가 \(b \pm 2\sigma_b\) 안에 든다. 이 범위를 기울기의 95% 신뢰구간이라 한다. 점이 적으면 \(s\) 자체를 믿기 어려워 범위를 더 넓게 잡는다.
그림 1에서 점의 수를 바꾸어 보자. 점이 3개이면 기울기가 참값 2에서 크게 벗어나기도 하고 범위도 넓다. 점이 30개로 늘면 범위가 눈에 띄게 좁아진다. 식에서 \(\sum (x_i - \bar{x})^2\)이 점의 수에 비례해 커지므로, 불확도는 대략 \(1/\sqrt{n}\)로 준다. 점을 네 배로 늘려야 범위가 절반이 된다. 그래서 점을 무작정 늘리기보다, 같은 수의 점을 \(x\)의 넓은 범위에 고르게 펼치는 것이 더 효과적이다.1
1.2.3예제 풀이
그림 2의 다섯 점에 최소 제곱 직선을 맞추고, 기울기의 표준 오차를 구하여라. 기울기에서 용수철 상수 \(k\)를 N/m 단위로 구하고 그 오차를 적어라.
평균은 \(\bar{x} = 1.5\) N, \(\bar{y} = 6.04\) cm이다. \(x_i - \bar{x}\)는 \(-1, -0.5, 0, 0.5, 1\)이므로 \(\sum (x_i - \bar{x})^2 = 2.5\)이고, \(\sum (x_i - \bar{x})(y_i - \bar{y}) = 10.0\)이다. 기울기는 \(b = 10.0 / 2.5 = 4.00\) cm/N, 절편은 \(a = 6.04 - 4.00 \times 1.5 = 0.04\) cm이다. 잔차의 제곱 합은 \(0.0036 + 0.0196 + 0.0256 + 0.0196 + 0.0036 = 0.072\)이므로 \(s = \sqrt{0.072/3} \approx 0.155\) cm이고, \(\sigma_b = 0.155 / \sqrt{2.5} \approx 0.10\) cm/N이다.
늘어난 길이가 무게에 비례하므로 \(x = F/k\)이고, 기울기는 \(1/k\)이다. 따라서 \(k = 1 / 4.00\) N/cm \(= 0.250\) N/cm \(= 25.0\) N/m이다. 역수를 취해도 상대 오차는 그대로이므로 \(0.10/4.00 = 2.5\)%, 곧 \(k = 25.0 \pm 0.6\) N/m이다. 절편 0.04 cm는 잔차의 크기보다 작아 0과 구별되지 않는다. 그러니 용수철이 처음부터 살짝 늘어나 있었다는 계통 오차는 이 자료에서 보이지 않는다. 모둠원들이 손으로 그은 3.8에서 4.2까지의 기울기는 모두 \(4.00 \pm 0.2\) 안쪽이어서 틀렸다기보다 이 불확도만큼 흔들린 것이다.
아래 탐구 카드에서 측정 횟수와 잡음을 바꾸어 가며 최소 제곱 직선을 맞추고, 기울기의 신뢰구간이 어떻게 변하는지 확인해 보자.
- 최소 제곱법은 1805년 르장드르가 혜성의 궤도를 계산하며 처음 발표했고, 가우스는 자신이 1795년부터 이 방법을 써 왔다고 주장했다. 가우스는 1801년 잃어버린 소행성 세레스의 위치를 이 방법으로 예측해 다시 찾게 했다.
최소 제곱법은 잔차의 제곱 합이 가장 작은 직선을 골라, 같은 자료에서 누구나 같은 기울기와 절편을 얻게 한다. 기울기의 표준 오차는 잔차의 흩어짐을 \(x\)값의 퍼짐으로 나눈 값이고, 약 두 배의 범위가 95% 신뢰구간이 되며 점의 수와 \(x\)의 범위가 클수록 좁아진다. 처음 질문의 다섯 직선은 모두 \(4.00 \pm 0.2\) cm/N 안에 있어, 최소 제곱 직선 하나로 \(k = 25.0 \pm 0.6\) N/m라고 적으면 된다.