차 맛보기 실험과 무작위 배정 검정

Fisher’s exact test 와 Randomization test — 검정 분포를 직접 만든다

Maxwell Ch.2 의 두 핵심 사례인 Lady Tasting Tea 와 Randomization Test 를 정리한다. \(\binom{8}{4} = 70\) 의 조합론적 유도부터 Bayley twin 자료의 \(2^{10}\) 재배정 분포 구성, 그리고 현대 IT A/B 테스트 의 permutation 분석으로 이어지는 무작위 배정 추론의 원형을 다룬다.

Experimentation
Fundamentals
저자

Kwangmin Kim

공개

2026년 05월 08일

1 도입 — 검정 분포를 어디서 가져올 것인가

가설검정의 결론은 항상 “관측된 통계량보다 더 극단적인 결과가 우연만으로 얼마나 자주 나오는가” 라는 확률에 의존한다. 이 확률은 검정 통계량의 분포 에서 나온다. 그런데 그 분포는 어디에서 오는가? 두 가지 출처가 있다.

  1. 분포 가정 — 모집단이 정규라고 가정하고, t·F 표를 참조한다.
  2. 무작위 배정 — 실제 실험에서 라벨이 어떻게 무작위로 배정될 수 있었는지 직접 열거한다.

Maxwell Ch.2 는 후자가 원형 이라고 본다. 분포 가정은 후자에 대한 근사로 정당화된다. 이 글은 두 가지 사례 — Fisher 의 차 맛보기 실험과 쌍둥이 Bayley 자료의 무작위 배정 검정 — 를 통해 그 원형을 보여 준다 (Maxwell & Delaney, 2004, Ch.2).

정의: Fisher’s exact test

이항·다항형 표 (예: \(2 \times 2\) 분할표) 에서, 주변합 (marginal totals) 을 고정한 채 가능한 모든 분할의 확률을 조합론적으로 직접 계산하여 유의성을 평가하는 검정이다 (Fisher, 1935/1971, Ch.II).

  • 표본 크기에 관계없이 정확한 (exact) p 값을 준다
  • 분포 가정 (정규성·이항 근사) 을 요구하지 않는다
  • 계산은 단순한 조합론 (\(\binom{n}{r}\)) 으로 환원된다
정의: Randomization test (Permutation test)

연속 측정 자료에서, 귀무가설 (“처치 효과 없음”) 하에 각 관측값의 라벨이 무작위로 바뀔 수 있다 는 사실로부터 검정 통계량의 분포를 직접 구성하는 검정이다 (Edgington, 1995).

  • 분포 가정 없이 정확한 p 값을 준다
  • 짝을 이룬 자료에서는 부호 (+/-) 의 가능한 모든 배열 (\(2^n\)) 을 열거한다
  • 독립 표본에서는 라벨 (treatment vs control) 의 모든 재배치 (\(\binom{n}{n_1}\)) 를 열거한다

2 Lady Tasting Tea — 조합론으로 검정 만들기

Fisher 의 1935 년 The Design of Experiments 첫 장은 영국 부인의 주장으로 시작한다.

“한 부인이 우유와 차가 섞인 찻잔을 맛보면, 우유를 먼저 부었는지 차를 먼저 부었는지를 구별할 수 있다고 주장한다. 이 주장을 검정할 실험을 어떻게 설계할 것인가?” (Fisher, 1935/1971, p. 11)

2.1 실험 설계

부인에게 8 잔의 차를 제공한다. 4 잔은 우유 먼저 (milk first, MF), 4 잔은 차 먼저 (tea first, TF) 이다. 부인은 이 8 잔을 두 그룹으로 나누어, 4 잔은 MF 라고 4 잔은 TF 라고 분류한다. 부인이 8 잔의 분류를 모두 맞추면 우연인지 변별 능력 때문인지 어떻게 판단하는가?

핵심은 다음 확률을 계산하는 것이다.

\[ \Pr(\text{모두 맞춤} \mid \text{변별 능력 없음}) = \frac{\text{정답인 분할 수}}{\text{가능한 분할 수}} \]

2.2 가능한 분할의 수

8 개에서 4 개를 고르는 서로 다른 조합 의 수를 구한다. 단계별로 풀어 본다.

1 단계 — 순서를 고려한 선택: 첫 번째 MF 라벨을 붙일 잔을 고르는 방법은 8 가지다. 두 번째는 남은 7 잔 중에서 고르므로 7 가지. 이런 식으로 4 잔을 고르면 \(8 \times 7 \times 6 \times 5 = 1680\) 가지의 순서 있는 선택이 가능하다.

2 단계 — 순서 중복 제거: 그러나 우리는 “어느 4 잔이 MF 인가” 만 관심이 있지, “그 4 잔을 어떤 순서로 골랐는가” 는 무관하다. 동일한 4 잔이 \(4! = 4 \times 3 \times 2 \times 1 = 24\) 가지 순서로 등장하므로, 1680 을 24 로 나눈다.

\[ \binom{8}{4} = \frac{8 \times 7 \times 6 \times 5}{4 \times 3 \times 2 \times 1} = \frac{1680}{24} = 70 \]

정답인 분할은 단 1 개이므로 모두 맞출 확률은 \(1/70 \approx 0.0143\) 이다. 사전에 정한 유의 수준 \(\alpha = 0.05\) 보다 작으므로, 부인이 모두 맞추면 변별 능력이 없다는 귀무가설을 기각할 근거가 된다.

직관 — 70 이라는 숫자가 검정 분포 그 자체이다

이 70 가지는 부인이 변별 능력이 없을 때 일어날 수 있는 모든 시나리오 이다. 그중 정답인 1 가지에 부인의 응답이 우연히 떨어질 확률이 \(1/70\) 이다.

여기서 검정은 “정규 분포 표를 참조” 같은 추상적 단계 없이, 세는 행위 만으로 완료된다. 자료 구조 (8 잔, 4-4 분할) 자체가 70 개의 칸을 가진 분포를 만들어 내고, 부인의 응답은 그 칸들 중 하나에 떨어진다. Fisher 가 1935 년에 보여 준 통찰의 본질은 이것이다 — 분포는 자료에서 만들어진다. 검정에 추가로 요구되는 가정은 “변별 능력이 없으면 모든 분할이 동등하게 가능하다” 는 단순한 명제 하나뿐이다.

2.3 한 잔 틀린 경우

8 잔 중 1 잔만 틀리는 경우는 어떠한가? 한 MF 잔을 TF 로 잘못 분류하면, 동시에 한 TF 잔을 MF 로 잘못 분류한 셈이 된다 (4-4 분할이라 한쪽이 틀리면 다른 쪽도 틀린다). 따라서 이런 시나리오는 “MF 4 잔 중 어느 1 잔을 빠뜨리는가” \(\times\) “TF 4 잔 중 어느 1 잔을 잘못 넣는가” 로 분해된다.

\[ \binom{4}{3} \cdot \binom{4}{1} = 4 \cdot 4 = 16 \]

가지 방식이 가능하다. 이 결과의 확률은 \(16/70 \approx 0.229\) 이다. “정확히 맞춤” 이상의 누적 확률은 \((1 + 16)/70 \approx 0.243\) 이다. 한 잔 틀려도 우연 가설로 충분히 설명되므로, 변별 능력의 증거가 되지 못한다.

이 결과는 실험 설계 원리 를 시사한다. 8 잔만으로는 “거의 다 맞춤” 을 통계적으로 입증할 수 없다. 부인의 변별 능력이 실제로 약간 있더라도, 8 잔 표본에서는 대부분 7 점 또는 6 점 (8 점 만점 환산) 의 결과가 나올 텐데 이 결과들은 모두 우연으로 설명된다. 즉 표본 크기가 작은 실험은 작은 효과를 잡지 못한다. Maxwell 의 표 2.3 이 뒤에서 보여 줄 1024 가지 부호 배열 시뮬레이션은 이 검정력 (power) 의 한계를 정량화한 것이다. 표본 크기와 검정력의 정량적 관계는 후속 글 A-WOO8-* 에서 다룬다.

2.4 일반화 — 조합 수식

크기 \(n\) 의 집합에서 \(r\) 개를 고르는 조합의 수는

\[ \binom{n}{r} = \frac{n!}{r! (n-r)!} \]

이 수식이 Fisher’s exact test 의 계산 토대이며, 이후 모든 분할표 (contingency table) 분석의 원형이 된다 (Bishop, Fienberg, & Holland, 1975).

2.5 Fisher’s exact test 의 다른 사례 — 1934 Criminal Twins

Fisher 가 1934 년 Royal Statistical Society 첫 발표에서 인용한 자료가 흥미로운 응용 사례다.

30 명의 남성 범죄자들을 식별하고 각각의 동성 쌍둥이 형제를 추적했다. 쌍둥이는 일란성 (monozygotic) 또는 이란성 (dizygotic) 으로 분류했고, 각 형제의 범죄 전력을 조사했다 (Fisher, 1934).

자료는 다음과 같다.

일란성 이란성
형제도 유죄 10 2 12
형제 무죄 3 15 18
13 17 30

질문: 일란성과 이란성 간 형제 유죄율 차이 (10/13 = 77 % vs 2/17 = 12 %) 가 우연만으로 설명될 수 있는가?

Fisher’s exact test 는 주변합 (13, 17, 12, 18) 을 고정한 채 모든 가능한 표를 열거하여 관측된 표만큼 극단적인 표의 비율을 계산한다. 이 사례에서 p 값은 약 \(10^{-5}\) 수준이라, 유전 요인이 범죄 행동에 영향을 줄 가능성이 강하게 시사된다 (단, 인과 해석은 환경 요인 통제가 부족해 신중해야 한다).

이 사례가 보여 주는 것은 Fisher’s exact test 가 작은 표본극단적 비율 에서 특히 유용하다는 점이다. 이항 근사 또는 카이제곱 근사는 표본이 작을 때 부정확해지지만, exact test 는 표본 크기에 무관하게 정확하다.

직관 — 왜 1 / 70 인가

부인이 우유 먼저인지 차 먼저인지 전혀 구별하지 못한다고 가정 하자. 그렇다면 부인의 답은 8 잔 중 어떤 4 잔을 MF 로 고를지에 대한 임의 선택 일 뿐이다. 가능한 선택지가 70 가지이고 정답이 1 가지이니, 모두 맞출 확률은 \(1/70\) 이다.

여기서 검정 분포는 모집단이 정규 이거나 표본이 크다 는 가정 없이 도출된다. 분포는 8 잔이라는 유한한 자료 구조 자체에서 나온다. 이것이 Fisher 가 통계 추론에 일으킨 혁명이다.

3 Randomization Test — 연속 자료로의 확장

차 맛보기는 이산 (discrete) 분류 자료였다. 실제 실험에서는 점수·시간·매출 같은 연속 측정값을 다룬다. Fisher 는 같은 원리를 어떻게 확장했는가?

3.1 사례 — 쌍둥이 Bayley 검사

Maxwell Ch.2 는 발달심리학 사례를 든다. 2 세 쌍둥이 10 쌍 중 한 명에게 인지 과제 영상을 보여 주고 (treatment), 다른 한 명은 대조군 (control) 으로 둔다. 이후 Bayley Mental Scale 점수 (단위: 개월) 를 측정한다.

Treatment Control 차이 (T − C)
1 28 32 \(-4\)
2 31 25 \(+6\)
3 25 15 \(+10\)
4 23 25 \(-2\)
5 28 16 \(+12\)
6 26 30 \(-4\)
7 36 24 \(+12\)
8 23 13 \(+10\)
9 23 25 \(-2\)
10 24 16 \(+8\)
267 221 +46

10 쌍의 차이 합은 \(+46\) 이다. 이 값이 우연만으로 나올 확률을 어떻게 계산하는가?

3.2 검정 논리

귀무가설 하에서, 처치는 점수에 영향이 없다. 따라서 각 쌍에서 누가 treatment 였고 누가 control 이었는지는 순전히 무작위 배정의 결과 이다. 만약 쌍 1 에서 무작위 결과가 반대였다면 차이는 \(-4\) 가 아닌 \(+4\) 였을 것이다. 절댓값은 동일하지만 부호만 바뀐다.

10 쌍 각각에 대해 부호가 \(+\) 일지 \(-\) 일지의 이진 결정이 무작위로 일어났으므로, 가능한 부호 배열의 수는

\[ 2^{10} = 1024 \]

이다. 이 1024 가지 배열에 대해 차이 합을 계산한 분포가 바로 검정 분포 이다. 관측된 합 \(+46\) 이 이 분포의 어느 위치에 있는지가 p 값을 준다.

직관 — 동전 10 개 던지기와 같은 구조

10 쌍의 차이를 다음과 같이 떠올린다.

  • 각 쌍의 절댓값 은 두 쌍둥이 사이의 내재적 차이 다 (예: 쌍 1 은 4 점 차이, 쌍 5 는 12 점 차이). 이 절댓값은 처치 효과가 있든 없든 동일했을 것이다.
  • 부호 는 무작위 배정 결과다 (treatment 가 더 높으면 +, control 이 더 높으면 −). 처치 효과가 0 이라면 부호는 동전 던지기와 같다.

따라서 검정의 본질은 “10 개의 동전을 던졌을 때, 각 동전에 정해진 가중치 (\(|d_i|\)) 를 곱해서 더하면, 그 합이 +46 만큼 한쪽으로 기울 확률이 얼마인가” 를 묻는 것과 같다. \(2^{10} = 1024\) 는 동전 배열의 모든 경우의 수다.

만약 처치 효과가 있다면, 동전이 공평하지 않다 — 양수 쪽으로 더 자주 떨어진다. 따라서 관측된 합이 분포의 극단에 있다는 것은 동전이 공평하지 않다는 (즉 처치 효과가 있다는) 증거가 된다.

3.3 분포 구성

실제로 1024 가지를 일일이 계산할 필요는 없다. 절댓값 \(|d_i| \in \{2, 2, 4, 4, 6, 8, 10, 10, 12, 12\}\) 의 합은 70 이고, 부호 한 개를 음수로 바꾸면 합이 \(2|d_i|\) 만큼 감소한다. 합 \(\geq 46\) 이 되려면 부호가 음수인 항의 절댓값 총합이 \((70 - 46)/2 = 12\) 이하여야 한다.

체계적으로 세면 다음 표가 된다.

음수 개수 가능한 조합 수 \(\geq 46\) 인 조합 수
0 1 1
1 10 10
2 45 18
3 120 10
4 210 1
5 이상 638 0
1024 40

따라서

\[ p_{\text{one-sided}} = \frac{40}{1024} \approx 0.039 \]

\(\alpha = 0.05\) 단측 기준에서 귀무가설을 기각한다. 양측 검정으로 바꾸면 \(p \approx 0.078\) 이 되어 기각하지 못한다. 검정의 방향성은 사전에 명시해야 한다.

3.4 t 검정과의 비교

같은 자료에 대해 paired t 검정을 적용하면 \(t = 2.14\), \(df = 9\), \(p \approx 0.031\) 이 된다. Randomization 검정의 \(0.039\) 와 차이가 약 \(0.008\) 에 불과하다. 이 근사가 우연이 아니라는 점이 Pitman (1937) 과 Wald & Wolfowitz (1944) 의 정리이다.

검정 p 값 가정
Randomization (정확) 0.039 무작위 배정만
Paired t 검정 0.031 차이가 정규 분포

직관적으로 두 p 값의 작은 차이 (\(0.008\)) 는 근사 오차 이다. t 검정이 사용하는 t 분포는 부드러운 종 모양이지만, 실제 randomization 분포는 1024 점으로 이루어진 이산 막대 그래프이다. 이산 분포를 연속 곡선으로 매끈하게 펴면 약간의 어긋남이 생긴다. 표본이 커질수록 이산 분포의 점들이 촘촘해져 t 곡선과 정확히 일치하는 방향으로 수렴한다 (다음 글 A-MAX2-3 의 표 참조).

직관 — 부호 섞기는 왜 정당한가

귀무가설 하에서 처치가 점수에 영향이 전혀 없다면, 각 쌍의 두 점수는 어느 쪽이 treatment 든 동일 했을 것이다. 차이의 절댓값은 두 사람의 내재적 차이일 뿐이다. 부호는 무작위 배정 동전 뒤집기의 결과일 뿐이다.

따라서 우리는 관측된 절댓값 을 그대로 두고, 모든 가능한 부호 배열 에 대해 합을 계산한다. 이 분포가 바로 “처치 효과 없음 + 무작위 배정” 시나리오에서 발생할 수 있는 합의 분포이다. 관측된 \(+46\) 이 이 분포의 상위 \(4 \%\) 에 위치하므로, 우연만으로는 설명되기 어렵다고 결론낸다.

이 논리에서 모집단에 대한 어떤 가정도 사용되지 않았음을 주목한다. 자료 자체가 검정 분포를 만든다.

4 코드 예시 — Python 으로 두 검정 직접 구현

import numpy as np
from itertools import product
from scipy.stats import fisher_exact, ttest_rel

# Lady Tasting Tea — Fisher's exact (one-sided)
table = [[4, 0],   # 정답 MF | 정답 TF
         [0, 4]]
_, p_fisher = fisher_exact(table, alternative='greater')
print(f"Fisher's exact one-sided p = {p_fisher:.4f}")  # 0.0143

# Bayley twin 데이터 — randomization test
diffs = np.array([-4, 6, 10, -2, 12, -4, 12, 10, -2, 8])
observed = diffs.sum()  # +46

# 가능한 모든 2^10 부호 배열에 대해 합 계산
all_signs = np.array(list(product([1, -1], repeat=len(diffs))))
all_sums = (all_signs * np.abs(diffs)).sum(axis=1)
p_rand_one = (all_sums >= observed).mean()
p_rand_two = (np.abs(all_sums) >= observed).mean()

# 비교: paired t 검정
t_stat, p_t = ttest_rel(diffs, np.zeros_like(diffs))
p_t_one = p_t / 2 if t_stat > 0 else 1 - p_t / 2

print(f"Randomization one-sided p = {p_rand_one:.4f}")  # 0.0391
print(f"Randomization two-sided p = {p_rand_two:.4f}")  # 0.0781
print(f"Paired t one-sided      p = {p_t_one:.4f}")     # 0.0309

5 Darwin 의 식물 실험 — Fisher 의 또 다른 randomization 사례

Charles Darwin 이 1876 년 The Effects of Cross- and Self-Fertilisation in the Vegetable Kingdom 에서 보고한 자료를 Fisher 가 1935 년 책에서 randomization 검정 사례로 인용했다 (Maxwell Ch.2 의 운동 11번).

5.1 실험 설계

Darwin 은 같은 부모로부터 나온 옥수수 (zea mays) 모종을 자가 수정 (self-fertilized) 과 교배 수정 (cross-fertilized) 두 그룹으로 나누어 같은 화분에 심었다. 환경을 최대한 통제한 후 11 년에 걸쳐 식물 키를 측정했다.

15 쌍 중 13 쌍에서 교배 수정 식물이 더 컸다. 자가 수정이 더 큰 경우는 2 쌍에 불과했다.

5.2 검정 논리

귀무가설: 교배 수정과 자가 수정은 키에 차이가 없다. 이 경우 각 쌍의 부호 (어느 쪽이 더 큰가) 는 동전 던지기와 같다. 15 번의 동전 던지기에서 13 번 이상 한쪽이 나올 확률은

\[ \Pr(\text{한쪽이 13~15 번}) = \frac{\binom{15}{13} + \binom{15}{14} + \binom{15}{15}}{2^{15}} \cdot 2 \approx 0.0074 \]

(양측 검정에 \(\times 2\)). 5 % 수준에서 귀무가설을 명확히 기각한다.

5.3 함의

Fisher 가 이 사례를 인용한 이유는 단순한 부호 검정 (sign test) 만으로도 강한 결론에 도달할 수 있음을 보여주기 위해서였다. 즉 자료의 정확한 수치값 을 사용하지 않고 부호 만 사용해도 통계적 추론이 가능하다. 이는 비모수 검정 (Wilcoxon signed-rank, sign test) 의 출발점이 됐다.

또한 Galton 이 자료를 순위 재배열 로 분석한 시도에 대해 Fisher 는 비판했다. Galton 은 화분 내 짝짓기 정보를 잃는 방식으로 자료를 재배열했는데, 이는 블록 정보 (같은 화분 내 비교) 를 무시하는 것이라 검정력이 떨어진다. Fisher 의 비판이 블록 설계paired analysis 의 중요성을 부각시킨 결정적 순간이었다.

6 응용 — 현대 A/B 테스트의 Permutation 분석

A/B 테스트에서 두 변형 (variant) 의 매출 평균을 비교한다고 하자. 매출은 흔히 강한 우편향 (lognormal-like) 분포라 정규 가정이 약하다. 이때 가능한 분석 경로는 세 가지이다.

방법 가정 계산 사용 시점
Welch t 검정 정규 (CLT 의존) 매우 가벼움 \(n\) 큼·중간 분포 비대칭
Permutation 검정 무작위 배정만 무거움 (Monte Carlo) \(n\) 작음·강한 비대칭
Bootstrap CI 표본이 모집단 대표 중간 효과 크기 구간 추정

대규모 A/B 테스트 (\(n > 10^5\)) 에서는 CLT 가 강하게 작동하므로 Welch t 가 안전하다. 그러나 segmented analysis (특정 사용자 군의 분석) 에서 표본이 작을 때, permutation 검정은 분포 가정 없이 정확한 p 값을 준다. Kohavi, Tang, & Xu (2020, Ch.17) 도 robustness check 로 permutation 검정의 사용을 권장한다.

또한 randomization 검정의 논리는 A/A 테스트 의 통계적 정당성과도 직결된다. A/A 테스트는 처치 효과가 0 인 상황에서 검정의 false positive 분포를 경험적으로 측정하는 절차인데, 이는 무작위 배정 자체가 검정 분포를 만든다는 Fisher 의 통찰의 직접적 적용이다.

7 Permutation 검정의 현대적 변형

Fisher 의 1935 년 randomization test 는 현대에 와서 여러 변형으로 발전했다.

7.1 Monte Carlo Permutation

표본이 커서 모든 부호 배열을 열거할 수 없을 때 (예: \(n = 30\) 이면 \(2^{30} \approx 10^9\) 회), 무작위로 \(B\) 회의 배열만 추출한다. 일반적으로 \(B = 10000\) 이면 p 값 추정 표준 오차가 약 \(\sqrt{p(1-p)/B} \approx 0.005\) (\(p = 0.05\) 기준) 로 충분히 작다.

import numpy as np

def mc_permutation_test(diffs, n_perm=10000, two_sided=True):
    """차이 점수에 대한 Monte Carlo permutation test"""
    obs = diffs.sum()
    abs_diffs = np.abs(diffs)
    n = len(diffs)
    extreme = 0
    for _ in range(n_perm):
        signs = np.random.choice([-1, 1], size=n)
        perm_sum = (signs * abs_diffs).sum()
        if two_sided:
            if abs(perm_sum) >= abs(obs):
                extreme += 1
        else:
            if perm_sum >= obs:
                extreme += 1
    return extreme / n_perm

7.2 Stratified Permutation

층화 무작위 배정 자료에서는 층 (stratum) 내에서만 라벨을 섞는다. 이는 층 사이의 자연스러운 차이를 검정 분포에서 제거하여 검정력을 높인다.

7.3 Block Permutation (시계열 자료)

시계열 자료에서는 단순 permutation 이 시간 의존성을 깨뜨린다. 대안은 블록 단위로 라벨을 섞는 것이다. 블록 크기는 자기상관 구조에 따라 정한다 (Politis & Romano, 1994).

7.4 Paired vs Unpaired

Bayley twin 사례는 paired 구조라 부호만 섞는다 (\(2^n\)). 만약 두 그룹이 paired 가 아닌 독립 표본 이라면, \(n_1 + n_2\) 개의 관측값을 두 그룹으로 재배치한다 (\(\binom{n_1 + n_2}{n_1}\) 가지). 두 절차는 검정의 가설이 약간 다르다.

구조 Permutation 형태 검정 가설
Paired 부호 섞기 (\(2^n\)) “차이 점수의 분포가 0 중심 대칭”
Unpaired 그룹 라벨 재배치 (\(\binom{n_1+n_2}{n_1}\)) “두 그룹이 같은 모집단에서 추출”

7.5 실무 라이브러리

Python 에서 permutation 검정을 수행하는 라이브러리는 다음이 있다.

  • scipy.stats.permutation_test (1.8+) — 일반적 permutation 검정
  • mlxtend.evaluate.permutation_test — 두 그룹 비교에 특화
  • statsmodels.stats.weightstats.permutation_test — 분산분석 호환

이 도구들로 t 검정 결과를 robustness check 하는 것이 현대 권장 관행이다 (Kohavi, Tang, & Xu, 2020).

8 Randomization vs Bootstrap — 비슷해 보이지만 다른 절차

Randomization 검정과 부트스트랩은 둘 다 “자료에서 분포를 만든다” 는 점에서 비슷하지만, 목적과 가정 이 다르다.

항목 Randomization Bootstrap
핵심 절차 라벨/부호 재배치 (resampling without replacement) 표본에서 복원 추출 (resampling with replacement)
가설 “두 분포 동일 (귀무가설)” “표본이 모집단을 대표”
출력 p 값 (검정용) 신뢰 구간·표준 오차 (추정용)
가정 무작위 배정 표본의 모집단 대표성
사용 시점 가설 검정 추정 + 불확실성 정량화

이 둘은 대체재 가 아니라 보완재 다. Randomization 으로 효과의 유의성을 검정하고, bootstrap 으로 효과 크기의 신뢰 구간을 보고하는 것이 현대 권장 관행이다 (Davison & Hinkley, 1997).

부트스트랩의 디테일은 후속 글 A-BUI7-* 와 A-WOO14-* 시리즈에서 자세히 다룬다.

9 한계와 후속

Randomization 검정의 한계는 두 가지이다.

  1. 계산 비용: \(n = 30\) 만 되어도 \(2^{30} \approx 10^9\) 이라 정확 계산이 어렵다. 이때 Monte Carlo permutation (예: 10000 회 무작위 부호 배열) 으로 근사한다.
  2. 가설의 좁음: Randomization 검정은 “두 그룹이 동일한 분포에서 추출되었는가” 를 검정하지, 모집단 평균에 대한 모수 추정 (예: 신뢰 구간) 을 직접 주지 않는다. 모수 추론에는 분포 가정 또는 부트스트랩이 필요하다.

이 두 한계가 z·t·F 분포 기반 검정으로의 전환을 동기 부여한다. 다음 글 A-MAX2-3 에서 다룬다.

직관 — 왜 Fisher 시대에는 분포 가정이 표준이 됐는가

1930 년대 통계학자가 randomization 검정을 권장하지 못한 이유는 컴퓨팅 때문이다. 손계산으로 \(2^{10} = 1024\) 개 합을 계산하는 것은 한 시간이면 가능하지만, \(2^{20} = 10^6\) 개는 거의 불가능했다. 따라서 Fisher 는 randomization 의 논리 를 정립한 후, 실용적으로는 정규 이론 검정 (z, t, F) 을 가르쳤다.

2020 년대에는 정반대다. 컴퓨터로 1 초에 \(10^7\) 회 permutation 이 가능하다. 따라서 randomization 검정이 다시 표준 후보가 됐다 (Higgins, 2003). 그러나 t·F 검정은 수식 형태로 신뢰 구간과 효과 크기를 직접 제공 하는 장점이 있어, 두 접근이 공존하는 시대가 되었다.

이 역사적 곡선은 통계 절차의 선택이 수학적 정당성 만이 아니라 기술적 가용성 에도 의존함을 보여 준다.

10 관련 주제

선행 지식

후속 주제 (Phase A)

다른 카테고리 연결

Subscribe

Enjoy this blog? Get notified of new posts by email: