평균의 표본분포¶
개요¶
사람 25명을 뽑아 키의 평균을 냈더니 168.2가 나왔다. 다시 25명을 뽑으면 168.2가 나오지 않는다. 그렇다고 아무 값이나 나오는 것도 아니다. 이 두 문장 사이의 좁은 틈, 곧 "\(\bar X\)가 어디를 중심으로 얼마나 흩어져 나오는가"를 기술한 것이 표본평균의 표본분포다.
통계학의 표본분포 가운데 가장 중요한 것이 이것이다. \(\mu\)에 대한 신뢰구간도, \(t\) 검정도, 응용통계학의 상당 부분도 모두 이 한 분포 위에 서 있다. 다행히 답이 간결하다. 중심은 정확히 \(\mu\)이고, 폭은 \(\sigma/\sqrt n\)이며, 모양은 대개 정규다. 앞의 둘은 조건 없이 참인데 마지막 하나에만 조건이 붙는다. 그 조건이 무엇이며 언제 없어도 되는지를 따지는 것이 이 쪽의 일이다.
폭에 해당하는 \(\sigma/\sqrt n\)은 따로 이름이 있다. 표준오차다. 여론조사 기사 끝에 붙는 "오차범위 \(\pm 3.1\%\)포인트"의 3.1이 바로 이 값에서 나오고, 조사 대상을 네 배로 늘려도 오차가 절반밖에 줄지 않는 까닭도 분모의 \(\sqrt n\) 하나로 설명된다. 뒤에서 이 공식이 실무에서 무엇을 뜻하는지까지 따진다.
중심과 폭은 정확하고 모양만 근사다¶
\(X_1, X_2, \dots, X_n\)을 평균 \(\mu\), 분산 \(\sigma^2 < \infty\)인 모집단에서 뽑은 i.i.d. 표본이라 하고, 그 산술평균을 표본평균이라 하자.
기댓값부터 본다. 기댓값은 합에 대해 선형이므로 \(\mu\)를 \(n\)번 더해 \(n\)으로 나눈 것이 그대로 남는다.
표본평균은 모평균의 불편추정량이다. 한 번 계산한 평균이 \(\mu\)와 같다는 뜻이 아니라, 되풀이해 얻은 값들이 \(\mu\)를 과대추정하지도 과소추정하지도 않는다는 뜻이다.
분산은 사정이 다르다. \(\bar X\)는 \(X_i\)들의 합을 \(n\)으로 나눈 것이므로 상수를 분산 밖으로 빼면 \(1/n^2\)이 나오고, 관측값이 독립이므로 분산들이 그냥 더해진다.
제곱근을 취하면 표준오차다.
\(n\)이 커질수록 표준오차가 작아진다. 표본이 클수록 \(\mu\)를 더 정밀하게 추정한다는 말을 수식으로 적은 것이 이 한 줄이다.
독립성이 쓰인 자리가 가운데 등식 하나뿐이라는 점을 기억해 두는 것이 좋다. 관측값들이 서로 상관되어 있으면 바로 그 자리에서 공분산 항이 살아나 공식이 무너지며, 연습문제 7에서 그 경우를 따진다. 반대로 정규성은 어디에도 쓰이지 않았으므로 평균과 분산에 관한 이 두 결과는 모집단 모양을 가리지 않는다.
여기까지는 모집단의 모양과 아무 상관이 없다. 분산이 유한하기만 하면 조건 없이 참이다. 조건이 붙는 것은 모양뿐이고, 그 조건을 대 주는 것이 중심극한정리다. \(n\)이 충분히 크면
이므로 근사적으로 다음이 성립한다.
\(\sigma^2 < \infty\)이기만 하면 모집단의 모양과 무관하게 성립한다는 것이 이 정리의 힘이다. 다만 "충분히 크면"이라는 단서가 모집단마다 다르게 읽힌다. 모집단이 정규라면 이야기가 아예 달라져서 모든 \(n\)에 대해 근사가 아니라 정확하고, 반대로 치우쳤거나 꼬리가 두꺼운 모집단에서는 같은 정확도를 얻는 데 훨씬 큰 \(n\)이 필요하다.
네 가지 경우¶
실제로 쓰는 것은 \(\bar X\) 자체가 아니라 표준화한 꼴이다. 그런데 표준화하려면 분모가 있어야 하고, 그 분모가 \(\sigma/\sqrt n\)인지 \(S/\sqrt n\)인지에 따라, 또 모집단이 정규인지 아닌지에 따라 경우가 넷으로 갈린다.
모집단이 정규이고 \(\sigma\)를 아는 경우가 가장 좋다.
이 결과는 정확하며 \(n\)에 아무 조건이 없다. 독립인 정규확률변수의 선형결합이 다시 정규라는 성질에서 곧바로 나오므로 중심극한정리를 부를 일이 없다.
모집단은 정규인데 \(\sigma\)를 모른다면 표본표준편차 \(S\)로 바꿔 쓸 수밖에 없다. 그 순간 분모가 상수가 아니라 확률변수가 되고, 분자와 분모가 함께 흔들린다. 그래서 분포가 정규를 벗어난다.
주목할 것은 이것도 여전히 정확하다는 점이다. 근사로 내려앉은 것이 아니라 정확한 분포가 정규에서 \(t_{n-1}\)로 바뀌었을 뿐이다. \(t\) 분포의 꼬리가 정규보다 두꺼운 까닭이 바로 분모의 흔들림에 있다. 모르는 \(\sigma\)를 아는 \(S\)로 바꾸는 대가를 치르는 자리가 여기이며, 5.2절의 \(t\) 분포가 존재하는 이유가 정확히 이것이다.
모집단이 정규가 아니면 두 경우 모두 "정확히"가 "근사적으로"로 바뀐다. \(\sigma\)를 알면 \((\bar X-\mu)/(\sigma/\sqrt n)\)이 근사적으로 \(N(0,1)\)이고, \(\sigma\)를 모르면 \((\bar X-\mu)/(S/\sqrt n)\)이 근사적으로 \(N(0,1)\) 또는 \(t_{n-1}\)이다. 둘 다 "\(n\)이 커야 한다"는 단서가 붙는데, 근사가 두 군데에서 들어오기 때문이다. \(\bar X\)의 모양이 정규에 가까워지는 데 \(n\)이 필요하고, \(S\)가 \(\sigma\)를 제대로 대신하는 데 또 \(n\)이 필요하다. 마지막 경우에 두 분포를 나란히 적은 것은 어느 쪽을 써도 어차피 근사이고, \(n\)이 크면 둘의 차이가 사라지기 때문이다.
표준오차: 개별 관측값이 아니라 통계량의 퍼짐¶
정의 1. 표본평균의 표준오차¶
평균이 \(\mu\), 표준편차가 \(\sigma\)인 모집단에서 뽑은 확률표본 \(X_1, \ldots, X_n\)에 대해 \(\bar{X}\)의 표준오차는 다음과 같다.
실무에서는 \(\sigma\)를 대개 모르므로 표본표준편차 \(s\)로 바꿔 넣으며, 그렇게 얻은 값을 추정 표준오차라 한다.
이 한 공식 안에 5.3절에서 본 구별이 그대로 들어 있다. \(\sigma\)는 모집단에서 개별 관측값이 퍼진 정도이고, 그것을 \(\sqrt n\)으로 나눈 \(\sigma/\sqrt{n}\)는 표본을 되풀이해 뽑을 때 \(\bar{X}\)가 퍼지는 정도다. \(n > 1\)이기만 하면 뒤의 것이 앞의 것보다 언제나 작고, \(n\)이 커질수록 더 작아진다.
표준오차 계산¶
문제. 모집단이 \(\mu = 100\), \(\sigma = 4\)이다. \(n = 25\)일 때 \(\text{SE}(\bar{X})\)를 구하라.
풀이
크기 25인 표본을 반복해서 뽑으면 표본평균들이 100 주위에 모이며 전형적인 편차는 0.8이다.
표본을 네 배로 늘려야 오차가 절반이 된다¶
공식에서 \(n\)이 제곱근 안에 들어 있다는 사실 하나가 실무의 거의 모든 것을 정한다. 표본을 두 배로 늘려도 표준오차는 \(\sqrt{2} \approx 1.41\)배밖에 줄지 않는다. 절반으로 줄이려면 네 배가 필요하고, 10분의 1로 줄이려면 관측값이 100배 필요하다.
| \(n\) | \(\text{SE}(\bar{X}) = \sigma/\sqrt{n}\) | \(n=1\) 대비 |
|---|---|---|
| 1 | \(\sigma\) | 100% |
| 4 | \(\sigma/2\) | 50% |
| 25 | \(\sigma/5\) | 20% |
| 100 | \(\sigma/10\) | 10% |
| 10,000 | \(\sigma/100\) | 1% |
표를 위에서 아래로 훑으면 \(n\)이 백 배 커지는 동안 표준오차는 열 배 작아졌을 뿐이다. 늘리는 쪽은 곱셈인데 줄어드는 쪽은 그 제곱근이다.
수확 체감
\(1/\sqrt{n}\) 관계는 관측값을 하나 더할 때마다 정밀도 향상이 점점 작아짐을 뜻한다. \(n = 100\)에서 \(n = 400\)으로 (비용을 4배로) 늘려도 표준오차는 절반이 될 뿐이다.
그래서 실무에서는 표본크기를 먼저 정해 놓고 정밀도를 확인하는 것이 아니라, 필요한 정밀도를 먼저 정하고 거꾸로 \(n\)을 푼다. 연습문제 5가 바로 그 계산이다. 여론조사의 표본수, 임상시험의 피험자 수, 품질검사의 표본 개수가 모두 이렇게 정해진다.
보기¶
아래 여섯 보기는 위의 네 경우가 실제 문제에서 어떻게 갈리는지를 보여 준다. 셋째 보기는 표본이 다섯뿐인데도 답이 정확하고, 다섯째 보기는 같은 크기의 표본으로 아무것도 말하지 못한다. 차이를 만드는 것은 표본크기가 아니라 모집단의 모양을 아는지 여부다.
보기 1. 사과 무게. 사과 무게가 \(N(150, 20^2)\)이다. \(n = 25\)일 때 \(P(\bar{X} > 155)\)를 구하라.
풀이
from scipy import stats
print(f"P(X_bar > 155) = {stats.norm.sf(1.25):.4f}")
출력:
P(X_bar > 155) = 0.1056
보기 2. 수면 시간. 평균 수면 시간이 7시간이고 \(\sigma = 1.5\)이다. \(n = 49\)일 때 \(P(6.8 < \bar{X} < 7.2)\)를 구하라.
풀이
from scipy import stats
print(f"P(6.8 < X_bar < 7.2) = {stats.norm.cdf(0.93) - stats.norm.cdf(-0.93):.4f}")
출력:
P(6.8 < X_bar < 7.2) = 0.6476
보기 3. 체중 (소표본, 정규모집단). 체중이 \(N(70, 10^2)\)이다. \(n = 5\)일 때 \(P(\bar{X} > 72)\)를 구하라.
풀이
모집단이 정규이므로 \(n = 5\)에서도 결과가 정확하다:
from scipy import stats
print(f"P(X_bar > 72) = {stats.norm.sf(0.447):.4f}")
출력:
P(X_bar > 72) = 0.3274
보기 4. 물 부족. 평균 물 소비량이 2 L이고 \(\sigma = 0.7\) L이다. 50명이 물 110 L를 가지고 여행할 때 물이 떨어질 확률을 구하라.
풀이
물이 떨어진다는 것은 \(\bar{X} > 110/50 = 2.2\)를 뜻한다:
보기 5. 전구 (정규성 가정 없이). 전구 수명이 \(\mu = 800\), \(\sigma = 100\)이다. \(n = 5\)일 때 정규성을 가정하지 않고 \(P(\bar{X} > 810)\)을 구하라.
풀이
\(n = 5\)이고 정규성 가정이 없으면 중심극한정리를 믿고 적용할 수 없다. 모집단 모양에 관한 추가 정보 없이는 이 확률을 구할 수 없다.
보기 6. 치우친 매출 (대표본). 일간 매출이 오른쪽으로 치우쳐 있고 \(\mu = 2000\), \(\sigma = 500\)이다. \(n = 100\)일 때 \(P(\bar{X} > 2100)\)을 구하라.
풀이
모집단이 치우쳐 있지만 \(n = 100\)이면 중심극한정리를 쓰기에 충분히 크다:
from scipy import stats
print(f"P(X_bar > 2100) = {stats.norm.sf(2):.4f}")
출력:
P(X_bar > 2100) = 0.0228
모의실험¶
공식이 맞는지 확인하는 가장 직접적인 방법은 표집분포를 실제로 만들어 보는 것이다. \(\text{Uniform}(0, 1)\) 모집단에서 크기 5짜리 표본을 1만 번 뽑아 표본평균 1만 개를 모으고, 그 값들의 표준편차를 재면 된다. 균등분포의 \(\sigma\)가 \(1/\sqrt{12}\)이므로 이론값은 \((1/\sqrt{12})/\sqrt{5} \approx 0.1291\)이고, 평균은 참값 0.5 근처에 앉아야 한다.
보기 7. 표본평균의 표준오차 모의실험. \(\text{Uniform}(0,1)\)에서 \(n = 5\)인 표본을 1만 번 뽑아 표본평균 1만 개를 모으고, 그 평균과 표준편차를 재어 공식과 맞춰 본다.
(1) 모의실험이 내놓을 두 숫자를 이론으로 미리 적고, 1만 번밖에 되풀이하지 않았을 때 그 두 숫자가 얼마나 흔들릴 수 있는지도 함께 적으시오.
(2) 모의실험으로 확인하시오. 그림의 점선 두 개(평균 \(\pm\) 표준오차)가 가두는 확률이 얼마인지도 구하시오.
풀이
(1) 이론값. \(\text{Uniform}(0,1)\)은 \(\mu = 1/2\), \(\sigma = 1/\sqrt{12} = 0.288675\)이므로
이다. 이 두 값에는 근사가 없다. 모집단이 균등이든 무엇이든 정확하다.
여기서 한 걸음 더 나가는 것이 요령이다. 모의실험이 내놓는 두 숫자 자체가 확률변수이므로 그것들의 흔들림도 미리 계산할 수 있다. 되풀이 횟수를 \(B = 10{,}000\)이라 하면
이고, 표준편차 추정값의 흔들림은 대략
이다. 그러므로 \(0.5000\)과 \(0.1291\)이 그대로 나올 것을 기대하면 안 된다. 소수 셋째 자리에서 흔들리는 것이 정상이며, 어긋남이 위 두 수의 두세 배 안에 들면 공식이 맞은 것이다.
점선이 가두는 확률도 계산해 둔다. \(n = 5\)에서 \(\bar X\)의 정확한 분포는 어윈-홀 분포를 \(5\)로 나눈 것이므로
를 얻는다. 정규분포라면 \(2\Phi(1) - 1 = 0.6827\)이니 \(0.0103\) 작다. 균등의 \(\bar X\)는 꼬리가 정규보다 짧아(\(n = 5\)에서 초과첨도 \(-0.24\)) 가운데 한 표준편차 안에 든 질량이 오히려 적다.
(2) 모의실험.
import matplotlib.pyplot as plt
import numpy as np
from math import comb, factorial
from scipy import stats
np.random.seed(0)
# 크기 5짜리 균등표본 U(0,1)을 1만 번 뽑아 그때마다 표본평균을 기록한다.
X_bar = []
for _ in range(10_000):
x = np.random.uniform(size=(5,))
X_bar.append(x.mean())
# 1만 개 표본평균의 평균과 표준편차.
# 평균 -> 참 평균 0.5 에 가까워야 한다
# 표준편차 -> 이것이 표준오차다. 이론값은 sigma/sqrt(n) 이며
# U(0,1)의 sigma = 1/sqrt(12) 이므로
# (1/sqrt(12))/sqrt(5) = 0.1291 이 나와야 한다.
average = np.array(X_bar).mean()
standard_error = np.array(X_bar).std()
print(f"Estimated Mean of X_bar: {average:.4f}")
print(f"Standard Error of X_bar: {standard_error:.4f}")
# 이론값과 1만 번 되풀이에서 기대할 요동을 함께 적는다.
n, B = 5, 10_000
mu_true, se_true = 0.5, 1 / np.sqrt(12 * n)
print(f"이론값 mu = {mu_true:.4f}, sigma/sqrt(n) = {se_true:.4f}")
print(f"몬테카를로 오차 평균 {se_true / np.sqrt(B):.4f}, 표준오차 {se_true / np.sqrt(2 * B):.4f}")
print(f"어긋남을 오차 단위로 평균 {abs(average - mu_true) / (se_true / np.sqrt(B)):.2f}배, "
f"표준오차 {abs(standard_error - se_true) / (se_true / np.sqrt(2 * B)):.2f}배")
# 점선 두 개가 가두는 확률. n=5 의 정확한 분포는 어윈-홀을 5로 나눈 것이다.
def cdf_irwin_hall(x, n):
x = np.asarray(x, dtype=float)
total = np.zeros_like(x)
for k in range(n + 1):
total += (-1) ** k * comb(n, k) * np.clip(x - k, 0, None) ** n
return np.clip(total / factorial(n), 0, 1)
p_exact = float(cdf_irwin_hall(n * (mu_true + se_true), n) - cdf_irwin_hall(n * (mu_true - se_true), n))
p_normal = float(stats.norm.cdf(1) - stats.norm.cdf(-1))
p_sim = float(np.mean(np.abs(np.array(X_bar) - average) <= standard_error))
print(f"점선 사이의 확률 정확 {p_exact:.4f}, 정규근사 {p_normal:.4f}, 모의 {p_sim:.4f}")
# 히스토그램에 이론값을 겹쳐 그린다.
fig, ax = plt.subplots(figsize=(12, 3))
ax.set_title("Sampling Distribution of X-bar")
ax.hist(X_bar, bins=100, density=True, alpha=0.3)
ax.vlines(average, ymin=0, ymax=5, color="k", lw=5, label="Mean")
ax.vlines(average + standard_error, ymin=0, ymax=5,
color="k", ls="--", label="Mean +/- SE")
ax.vlines(average - standard_error, ymin=0, ymax=5,
color="k", ls="--")
ax.legend()
plt.show()
출력:
Estimated Mean of X_bar: 0.4981
Standard Error of X_bar: 0.1287
이론값 mu = 0.5000, sigma/sqrt(n) = 0.1291
몬테카를로 오차 평균 0.0013, 표준오차 0.0009
어긋남을 오차 단위로 평균 1.47배, 표준오차 0.42배
점선 사이의 확률 정확 0.6724, 정규근사 0.6827, 모의 0.6685

두 숫자 모두 예측한 띠 안에 든다. 모의 평균 \(0.4981\)이 \(0.5\)에서 \(0.0019\) 떨어져 있어 몬테카를로 오차 \(0.0013\)의 \(1.47\)배, 모의 표준오차 \(0.1287\)이 \(0.1291\)에서 \(0.0004\) 떨어져 있어 \(0.0009\)의 \(0.42\)배다. "가깝다"가 아니라 "오차의 \(1.5\)배와 \(0.4\)배"라고 말할 수 있다는 것이 이 보기의 쓸모다. 둘 다 \(2\)배 안쪽이므로 공식과 어긋난다고 볼 근거가 없다.
띠의 폭을 알면 반대 방향으로도 쓸 수 있다. 모의 표준오차를 소수 넷째 자리까지 믿고 싶다면 \(\mathrm{SE}/\sqrt{2B} < 0.00005\), 곧 \(B > 3{,}300{,}000\)번을 되풀이해야 한다. 1만 번으로 셋째 자리까지가 한계다.
점선 두 개. 모의 비율 \(0.6685\)가 정확값 \(0.6724\)에서 \(0.0039\) 떨어져 있고, 비율의 몬테카를로 오차가 \(\sqrt{0.672 \times 0.328/10^4} = 0.0047\)이니 \(0.8\)배다. 반면 정규근사 \(0.6827\)과는 \(0.0142\), 곧 오차의 \(3.0\)배나 떨어져 있다. 1만 번의 모의실험이 "정확한 어윈-홀"과 "정규근사"를 구별해 낼 만큼 촘촘하다는 뜻이고, 그래서 \(n = 5\)에서 \(\bar X\)가 아직 정규가 아니라는 것을 모의실험만으로도 보일 수 있다.
다만 공식 \(\sigma/\sqrt n\) 쪽에는 그런 어긋남이 없다. 중심과 폭은 모집단의 모양과 무관하게 정확하고, 모양만 근사다. 이 쪽이 처음부터 말해 온 구분이 숫자로 갈라져 나온 자리다.
모의실험이 내놓은 0.4981과 0.1287은 이론이 예측한 \(\mu = 0.5\)와 \(\sigma/\sqrt{n} \approx 0.1291\)에 각각 가깝다. 남은 차이는 표집을 1만 번밖에 되풀이하지 않은 탓이며, 횟수를 늘리면 줄어든다. 공식은 맞았다.
더 파고들 세 갈래¶
여기까지가 이 쪽의 본문이고, 더 멀리 가려는 독자를 위해 세 갈래를 적어 둔다.
첫째는 \(\bar X\)가 얼마나 좋은 추정량인가 하는 물음이다. \(\text{Var}(\bar{X}) = \sigma^2/n\)이라는 값이 사실은 더 낮출 수 없는 값이며, 정규성 아래에서 \(\bar X\)는 크라메르-라오 하한을 달성한다. 연습문제 10에서 선형불편추정량 가운데 최소분산임을 직접 보인다.
둘째는 중심극한정리가 통하지 않는 경우다. 분산이 무한한 모집단, 이를테면 코시분포에서는 정리의 전제가 깨지므로 \(\bar{X}\)가 수렴하지 않을 수 있다. 이 쪽의 결론 전부가 \(\sigma^2 < \infty\)라는 한 줄에 매달려 있다는 뜻이다.
셋째는 "\(n\)이 얼마나 커야 하는가"에 답을 주는 베리-에세인 정리다. \(\rho = E[|X - \mu|^3]\)이라 할 때 정규근사의 오차가 \(\sup_z |P(Z_n \leq z) - \mathcal{N}(z)| \leq C \cdot \rho / (\sigma^3 \sqrt{n})\)로 억제된다. 분자에 3차적률이 있다는 것은 모집단이 치우칠수록 같은 정확도에 더 큰 \(n\)이 필요하다는 뜻이며, 이어지는 네 쪽의 모의실험이 보여 줄 것이 바로 그 차이다.
연습문제¶
연습문제 1. 표본평균의 평균과 표준오차. \(\mu = 75\), \(\sigma = 18\)인 모집단에서 \(n = 9\)인 표본을 뽑는다. (a) \(\mathbb{E}[\bar X]\), (b) \(\mathrm{SE}(\bar X)\)를 계산하라.
풀이
(a) \(\mathbb{E}[\bar X] = \mu = 75\). 표본평균은 \(n\)과 무관하게 불편이다.
(b) \(\mathrm{SE}(\bar X) = \sigma/\sqrt n = 18/3 = 6\). \(n\)을 네 배인 36으로 늘리면 표준오차가 절반인 3이 된다.
연습문제 2. 사과 무게가 \(\mu = 150\) g, \(\sigma = 20\) g인 정규분포를 따른다. \(n = 25\)인 표본에 대해 \(P(\bar X > 155)\)를 계산하라.
풀이
\(\mathrm{SE} = 20/\sqrt{25} = 4\). \(Z = (155 - 150)/4 = 1.25\).
\(P(\bar X > 155) = 1 - \Phi(1.25) = 0.1056\)으로 약 10.6%이다.
참고: 모집단의 정규성이 주어졌으므로 \(\bar X\)는 어떤 \(n\)에 대해서도 정확히 정규분포이다. 중심극한정리가 필요 없다.
연습문제 3. 정규성 없는 전구. 수명이 \(\mu = 800\)시간, \(\sigma = 100\)시간이고 분포는 알려져 있지 않다. \(n = 5\)인 표본에 대해 \(P(\bar X > 810)\)에 관해 무엇을 말할 수 있는가?
풀이
\(\mathrm{SE} = 100/\sqrt 5 \approx 44.7\). 그대로 계산하면 \(Z = 10/44.7 \approx 0.224\)이므로 \(P \approx 0.41\)이다.
그러나: \(n = 5\)는 중심극한정리를 쓰기에 너무 작고 모집단의 모양도 알려져 있지 않다. \(\bar X\)의 표본분포는 심하게 치우쳤거나(예: 수명이 지수분포일 때) 꼬리가 두꺼울 수 있다. 정규근사가 크게 빗나갈 수 있다.
Chebyshev 부등식을 이용한 보수적 한계: \(P(|\bar X - 800| \ge 10) \le \sigma^2/(n \cdot 10^2) = 10000/(5 \cdot 100) = 20\)으로 아무 정보도 주지 못한다.
실용적 결론: 분포 가정이 없거나 \(n\)이 더 크지 않으면 점 추정값을 포기하고 보수적 한계만 보고해야 한다. 실제 전구 수명은 흔히 와이불분포를 따르며, 이를 가정하면 정확한 계산이 가능하다.
연습문제 4. 치우친 모집단 + 큰 \(n\). 일간 매출이 오른쪽으로 치우쳐 있고 \(\mu = \$2000\), \(\sigma = \$500\)이다. \(n = 100\)인 표본에 대해 \(P(\bar X > \$2100)\)을 계산하라.
풀이
\(\mathrm{SE} = 500/10 = 50\). \(Z = (2100 - 2000)/50 = 2\).
\(P(\bar X > 2100) = 1 - \Phi(2) = 0.0228\)로 약 2.3%이다.
왜 타당한가: \(n = 100\)은 크므로 중심극한정리에 의해 모집단 모양과 무관하게 \(\bar X\)가 근사적으로 정규분포이다. 모집단의 왜도 \(\gamma_1\)은 \(\bar X\)에서 \(\gamma_1/\sqrt{100} = \gamma_1/10\)로 줄어들므로, 치우침이 온건한 수준이라면 남는 몫이 무시할 만하다.
주의: 모집단의 치우침이 심하면(예: \(\sigma_{\log} > 1\)인 로그정규) \(n = 100\)에서도 \(\bar X\)에 치우침이 남을 수 있다. Berry-Esseen 한계에 따르면 정규근사의 오차는 \(\sim \mathbb{E}|X|^3/(\sigma^3 \sqrt n)\)이다. 약간 치우친 매출 자료라면 \(n = 100\)으로 충분하지만, 오른쪽으로 심하게 치우친 자료에서는 더 큰 \(n\)이나 붓스트랩이 안전하다.
연습문제 5. 어떤 연구자가 \(\bar{X}\)의 표준오차를 최대 0.5로 만들고자 한다. 모표준편차는 \(\sigma \approx 8\)로 추정된다. 최소 표본크기는 얼마인가?
풀이
다음이 필요하다:
최소 표본크기 \(n = 256\)이 필요하다. \(\square\)
연습문제 6. \(n \ge 1\)에서 \(\text{SE}(\bar{X})\)가 \(n\)의 감소함수이자 볼록함수임을 증명하라. 볼록성은 표본크기를 늘릴 때의 한계 이득에 관해 무엇을 함의하는가?
풀이
\(n > 0\)에서 \(f(n) = \sigma / \sqrt{n} = \sigma \cdot n^{-1/2}\)이라 하자.
1계도함수:
따라서 \(f\)는 순감소한다. 표본이 클수록 언제나 표준오차가 작아진다.
2계도함수:
따라서 \(f\)는 순볼록이다. 볼록성은 \(n\)이 커질수록 표준오차의 감소 속도가 느려짐을 뜻한다. 실용적으로 말하면, 관측값을 하나 더 얻을 때마다 표준오차가 줄어드는 폭이 직전보다 작아진다. 표본크기를 늘리는 데에는 한계 수확 체감이 있다. \(\square\)
연습문제 7. \(\sigma/\sqrt n\) 공식은 관측값이 독립일 때만 성립한다. 관측값들이 서로 상관 \(\rho\)를 갖는다면 \(\operatorname{Var}(\bar X)\)는 무엇이 되는가? \(\rho > 0\)이고 \(n\to\infty\)이면 어떻게 되는가?
풀이
모든 쌍의 상관이 \(\rho\)로 같다고 하자(등상관 구조). 그러면
이므로
이다. \(\rho = 0\)이면 익숙한 \(\sigma^2/n\)으로 돌아온다.
\(\rho > 0\)이고 \(n\to\infty\)이면
이다. 표본을 아무리 늘려도 표준오차가 0으로 가지 않는다. 관측값들이 같은 정보를 되풀이해 담고 있어 새 관측이 새 정보를 주지 못하기 때문이다.
괄호 안의 \(1+(n-1)\rho\)를 설계효과(DEFF)라 하고, \(n/\text{DEFF}\)를 유효 표본크기라 한다. \(\rho=0.05\)이고 \(n=20\)인 군집이 50개면 관측이 1000개지만 유효 표본크기는
으로 절반에 지나지 않는다.
현실에서 이런 상황이 흔하다. 같은 학교 학생들, 같은 환자에게서 반복 측정한 값, 시계열의 이웃한 관측값이 모두 그렇다. 독립을 가정하고 \(\sigma/\sqrt n\)을 쓰면 표준오차를 심하게 과소평가하고, 그 결과 신뢰구간이 좁아지고 있지도 않은 유의성이 나온다. 군집 표준오차, 혼합효과 모형, 일반화추정방정식이 모두 이 문제를 다루는 도구다.
연습문제 8. \(\bar X\)의 표준오차를 \(\sigma\)나 정규성 가정 없이 자료만으로 추정하는 방법을 적고, 보기 7의 모의실험 결과와 견주어라.
풀이
부트스트랩을 쓴다.
rng = np.random.default_rng(0)
x = rng.uniform(0, 1, 5) # 우리가 가진 표본은 이것뿐
boot = [rng.choice(x, size=5, replace=True).mean() for _ in range(10_000)]
print(f"부트스트랩 SE = {np.std(boot, ddof=1):.4f}")
출력:
부트스트랩 SE = 0.1421
원리. 참 모집단에서 반복 표집하는 대신 관측된 표본 자체를 모집단으로 삼아 복원추출한다. 표본이 모집단을 잘 대신한다면 재표집으로 얻은 평균들의 흩어짐이 참 표집분포의 흩어짐에 가깝다.
보기 7과의 관계. 보기 7의 모의실험은 참 모집단 \(\text{Uniform}(0,1)\)에서 1만 번 표집했다. 그것이 가능한 것은 모집단을 알기 때문이며, 현실에서는 불가능하다. 부트스트랩은 같은 일을 표본 하나만 가지고 흉내 낸다.
\(n=5\)에서는 결과가 그리 좋지 않다. 얻은 값 0.1421을 이론값 \(\sigma/\sqrt5 = 0.1291\)과 곧바로 견주면 안 된다. 부트스트랩이 흉내 내는 것은 참 모집단이 아니라 손에 쥔 표본이므로, 비교 대상은 그 표본의 \(s/\sqrt n\)이다. 이 표본은 \(s = 0.357\)이라 \(s/\sqrt5 = 0.1597\)이었다.
그 값과 견주면 부트스트랩 SE가 체계적으로 작다. 복원추출이 \(s^2\)이 아니라 \(\frac{n-1}{n}s^2\)을 재현하기 때문이며, 비율이 \(\sqrt{4/5} = 0.894\)다. 실제로 \(0.894 \times 0.1597 = 0.1428\)로 관측값 0.1421과 맞는다.
이론값 0.1291에서 벗어난 몫의 대부분은 이 편향이 아니라 표본 하나의 운이다. \(n=5\)짜리 표본에서 \(s\) 자체가 크게 흔들리기 때문이며, 다른 시드를 쓰면 이론값보다 작게 나오기도 한다. 두 종류의 오차를 구별해 두어야 한다. 편향은 \(n\)이 크면 사라지고, 표본의 운은 \(n\)이 커야 잦아든다.
부트스트랩을 쓸 이유. 평균이라면 \(s/\sqrt n\)이라는 공식이 있으니 굳이 필요 없다. 부트스트랩이 빛나는 것은 공식이 없는 통계량이다. 중앙값, 절사평균, 사분위수 범위, 두 추정값의 비, 상관계수, 회귀에서 파생된 복잡한 양의 표준오차를 모두 같은 절차로 얻을 수 있다.
연습문제 9. 표본평균이 아닌 다른 중심 추정량의 표준오차를 견주어 보자. 정규모집단에서 표본중앙값의 점근 표준오차가 \(\sigma\sqrt{\pi/(2n)}\)임을 보이고, 어느 쪽을 언제 써야 하는지 정리하라.
풀이
표본중앙값 \(\tilde X\)의 점근분포는
이다(\(m\)은 모중앙값, \(f\)는 밀도). 정규분포에서는 \(m=\mu\)이고
이므로
이다. \(\square\)
비교. \(\operatorname{SE}(\bar X) = \sigma/\sqrt n\)이므로
로, 중앙값의 분산이 평균의 1.57배다. 정규모집단에서 중앙값을 쓰면 표본의 36%를 버리는 셈이다. 표본 100개로 중앙값을 내는 것이 표본 64개로 평균을 내는 것과 같다.
그래도 중앙값을 쓸 때.
| 상황 | 권장 |
|---|---|
| 모집단이 정규에 가깝고 이상치가 없다 | \(\bar X\) |
| 이상치나 오염이 의심된다 | \(\tilde X\) 또는 절사평균 |
| 꼬리가 두껍다(\(t_3\), 코시 등) | \(\tilde X\)가 더 효율적이다 |
| 분포가 치우쳐 "전형적인 값"을 말하고 싶다 | \(\tilde X\)(다른 양을 추정하는 것임에 유의) |
꼬리가 두꺼우면 순서가 뒤집힌다는 점이 중요하다. \(t_3\) 모집단에서는 중앙값의 점근효율이 평균의 1.6배이고, 코시에서는 평균이 아예 수렴하지 않는 반면 중앙값은 제대로 작동한다.
타협안으로 절사평균이 있다. 양끝 10~20%를 버리고 평균을 내면 정규분포에서 효율을 거의 잃지 않으면서(95% 이상) 이상치에 대한 저항성을 얻는다. 후버 M-추정량도 같은 절충이다.
연습문제 10. \(\bar X\)가 \(\mu\)의 선형불편추정량 가운데 최소분산임을 보여라. 즉 \(\sum_i a_i = 1\)인 모든 \(\{a_i\}\)에 대해 \(\operatorname{Var}(\sum_i a_iX_i) \ge \operatorname{Var}(\bar X)\)임을 증명하라. 이 결과에 정규성이 필요한가?
풀이
\(\hat\mu = \sum_i a_iX_i\)라 하면 불편성은 \(E[\hat\mu] = \mu\sum_i a_i = \mu\), 즉 \(\sum_i a_i = 1\)과 같다. 독립이므로
이다. 따라서 \(\sum a_i = 1\) 아래에서 \(\sum a_i^2\)을 최소로 하면 된다.
코시-슈바르츠로. \((\sum_i a_i\cdot1)^2 \le (\sum_i a_i^2)(\sum_i 1^2)\)이므로
이고 등호는 \(a_i\)가 모두 같을 때, 즉 \(a_i = 1/n\)일 때만 성립한다. 그때 \(\operatorname{Var} = \sigma^2/n\)이다. \(\square\)
다른 증명. \(a_i = 1/n + d_i\)로 두면 \(\sum d_i = 0\)이고
으로 곧바로 나온다.
정규성은 필요 없다. 쓴 것은 \(E[X_i]=\mu\), \(\operatorname{Var}(X_i)=\sigma^2\), 그리고 무상관성(공분산 0)뿐이다. 독립일 필요조차 없고 무상관이면 충분하다. 이 점에서 가우스-마르코프 정리와 같은 성격이며, 실제로 이 결과는 가우스-마르코프의 가장 단순한 경우다.
범위의 한계. "선형"과 "불편"이라는 두 제약을 걸었다는 점이 중요하다.
- 제약을 풀면 더 나은 추정량이 있을 수 있다. 꼬리가 두꺼운 모집단에서 절사평균이나 중앙값이 \(\bar X\)보다 분산이 작다(비선형이라 이 정리를 비껴간다).
- 불편성을 포기하면 평균제곱오차가 더 작은 추정량이 있다. 3차원 이상에서 여러 평균을 동시에 추정할 때 제임스-스타인 추정량이 \(\bar X\)를 일률적으로 이긴다는 사실이 유명하다.
- 모집단이 정규라면 \(\bar X\)는 선형이 아닌 추정량까지 통틀어 최소분산불편추정량이다(완비충분통계량의 함수이므로). 정규성은 결론을 "선형" 제약 없이 확장하는 데 쓰인다.
정리하며¶
표본평균의 표본분포는 세 가지로 요약된다. 중심은 \(E[\bar{X}] = \mu\)이고, 폭은 \(\text{Var}(\bar{X}) = \sigma^2/n\)에서 나온 \(\text{SE}(\bar{X}) = \sigma/\sqrt{n}\)이며, 모양은 정규다. 앞의 둘은 모집단이 무엇이든 조건 없이 참이고, 마지막 하나만 조건이 붙는다. 모집단이 정규이면 모든 \(n\)에서 정확하고, 그렇지 않으면 \(n\)이 커야 중심극한정리로 근사된다.
한 문장으로 줄이면 \(n\)이 클수록 표준오차가 작고 그만큼 추정이 정밀하다는 것이지만, 이 쪽에서 정작 새로 배운 것은 그 뒤에 붙는 단서들이다. \(\sigma\)를 알면 분포가 정규이고 모르면 \(t_{n-1}\)이다. 모집단이 정규이면 결과가 정확하고 아니면 근사다. 이 두 갈래가 곱해져 네 경우가 나왔고, 앞으로 만날 거의 모든 추론 절차가 그중 한 칸에 속한다.
표준오차 쪽에서 기억할 것은 분모의 \(\sqrt n\) 하나다. 표본을 네 배로 늘려야 오차가 절반이 되므로 정밀도는 비싸게 산다. 그래서 실무에서는 필요한 정밀도를 먼저 정하고 거꾸로 \(n\)을 푼다. 그리고 이 공식이 기대는 유일한 가정이 독립성이라는 점도 함께 기억할 일이다. 정규성은 폭에 아무 상관이 없지만 독립성이 깨지면 공식 자체가 무너진다.
이어지는 쪽들에서 이 결과를 확인한다. 네 모집단(균등·지수·정규·베르누이)에서 표본분포를 직접 모의실험하며, 중심극한정리가 모집단 모양을 가리지 않는다는 것과 치우칠수록 수렴이 느리다는 것을 눈으로 보게 된다. 평균 하나가 아니라 두 집단의 평균 차이를 묻는 경우는 5.7절에서 따로 다룬다.
그래서 이 분포로 무엇을 하는가¶
여기까지가 \(\bar X\)의 표본분포다. 중심은 언제나 \(\mu\), 폭은 언제나 \(\sigma/\sqrt n\), 모양만 조건에 따라 정확하거나 근사다. 그리고 그 조건은 표본을 키우면 느슨해진다. 중심극한정리가 뒤를 받쳐 주기 때문이며, 5장에서 \(\bar X\)가 가장 다루기 편한 통계량인 까닭이 이것이다.
이 분포를 근거로 \(\mu\)를 추론하는 일은 뒤에 있다. 평균의 신뢰구간은 8.2절에서, 평균에 대한 \(t\) 검정은 9.2절에서 다룬다. 둘 다 위의 네 경우 가운데 어느 칸에 있는지를 먼저 정하고 그에 맞는 기준분포를 골라 쓰는 것이 전부다.
거꾸로 말하면 그 칸을 잘못 고르면 구간의 포함률도 검정의 오류율도 약속한 값을 지키지 못한다. 가장 흔한 실수가 \(\sigma\)를 모르면서 \(z\)를 쓰는 것인데, 그러면 분모의 흔들림을 세지 않은 셈이라 구간이 실제보다 좁아진다.