§ 8.4~8.6 — 설계 실험·무작위화·관찰 연구

Gelman BDA Ch.8 심화 — potential outcomes의 \(n \times 2\) 행렬, 완전 무작위·Latin square·순차 설계, 공변량 하 randomization의 이득, Figure 8.2 sensitivity, principal stratification과 Sommer-Zeger vitamin A 예제 CACE/IV/ITT

§ 8.1~8.3 이 “수집 모델의 언어 + 가장 단순한 표본조사 응용” 이었다면, § 8.4~8.6 은 그 언어가 실험·무작위화·관찰 연구의 세 층위에서 어떻게 확장되는지를 다룬다. 완전 무작위 실험의 포함 모형 정의와 ignorable 성질, 잠재 결과 \((y_i^A, y_i^B)\)\(n \times 2\) 행렬로 보는 인과 추정, finite-population 과 superpopulation 인과 효과의 구분, 식 (8.17) 의 점근 정규 근사, Latin square 25 plot 예제와 “설계 무시 해도 valid” 미묘함, 순차 설계가 왜 ignorable 이지만 strongly ignorable 은 아닌지, 50 마리 소 실험에서 ‘재무작위화’ 가 unknown ignorable 로 분류되는 이유, 공변량이 주어졌을 때 ABABAB 결정론 설계 대비 무작위화의 세 추가 이득 (모델 점검·사후 예측·cheating 방지), Figure 8.2 의 세 패널이 말하는 balance-sensitivity 관계, propensity score overlap 의 진단 역할, principal stratification 으로 compliance 를 covariate 처럼 다루는 법, Sommer-Zeger Indonesian vitamin A 데이터에서 ITT·CACE·NACE·IV estimate 가 식 (8.18)~(8.19) 로 어떻게 연결되는지, 마지막으로 exclusion restriction 을 완화하는 베이즈 접근까지 — 각 수식 옆에 “왜 ignorability 가 여기서 무너지는가·어떻게 되살리는가” 를 붙여 전개한다.

Statistics
Bayesian
저자

Kwangmin Kim

공개

2026년 04월 23일

1 개요 — 세 절의 공통 질문

§ 8.4~8.6 은 한 가지 질문의 세 변주다.

“관측된 \(y_{\mathrm{obs}}\) 로 인과 효과를 어떻게 얻는가?”

설계 수집 메커니즘 ignorability 획득 경로
8.4 설계 실험 실험자가 처치 배정 무작위화 → 자동
8.5 무작위화 일반론 공변량 조건부 임의 배정 randomization 이 “보험” 역할
8.6 관찰 연구 단위가 처치 선택 공변량 조건부 ignorability 가정 → 감도 분석

§ 8.1~8.3 이 이미 ignorable 한 설계를 다뤘다면, § 8.4~8.6 은 어떻게 ignorability 를 만들거나 합리적으로 가정할 것인가 를 묻는다. Overview (01-8-0)§ 8.1~8.3 심화 (01-8-1) 의 연장선이다.

2 § 8.4 — 설계 실험

2.1 실험의 수학적 정의

통계학 용어로 실험 (experiment)처치 (treatment) 를 단위 (unit) 에 배정 (assignment) 하는 과정이 실험자의 통제 하에 있음 을 뜻한다. 목표:

  1. 관측된 결과를 “다른 처치가 배정되었다면 어땠을까” 라는 가정적 결과로 일반화.
  2. 실험에 포함된 단위를 넘어 더 큰 모집단으로 일반화.

첫 번째 과정이 인과 추론, 두 번째가 외적 타당도. § 8.4 는 두 과정을 모두 베이즈 프레임워크로 끌어들인다.

2.2 Potential Outcomes — \(n \times 2\) 완전 데이터 행렬

\(n\) 개 단위에 두 처치 \(A, B\) 중 하나를 배정하는 상황. 완전 데이터:

\[ (y_i^A, y_i^B), \quad i = 1, \ldots, n \]

\(y_i^A\) 는 “\(i\) 번 단위가 처치 \(A\) 를 받았다면 나올 결과”, \(y_i^B\) 는 처치 \(B\) 일 때 결과. 두 값 모두 실재하는 가상 현실이다. 관측되는 건 정확히 하나 — 배정된 쪽.

완전 데이터를 \(n \times 2\) 행렬로 나열하면:

\[ Y = \begin{pmatrix} y_1^A & y_1^B \\ y_2^A & y_2^B \\ \vdots & \vdots \\ y_n^A & y_n^B \end{pmatrix} \]

실험 = 각 행에서 한 열을 관측, 다른 열은 결측. 이것이 § 8.2 의 \((y, I)\) 언어가 실험에서 실현되는 방식.

직관 — 왜 인과 추론이 “결측 데이터 문제” 인가

관찰 연구의 인과 추론 문헌은 대개 “교란” (confounding) 언어로 시작한다. Rubin 의 잠재 결과 프레임은 다른 각도 — “관측 안 된 \(y_i^B\)\(y_i^A\) 로부터 어떻게 예측할까”.

행렬 \(Y\) 의 50% 가 결측된 상태에서 평균 차이 \(\bar{y}^A - \bar{y}^B\) 를 복원하는 것이 인과 추론의 본질. § 8.2 의 모든 언어 (ignorability, MAR, distinct parameters) 가 그대로 적용된다. 50% 결측 + “어느 쪽이 결측되는지” 가 처치 배정 \(I\) — 이것이 설계 실험의 베이즈적 재구성.

2.3 Stability (SUTVA) — 실험에서의 의미

§ 8.2 의 stability 가정이 실험 문맥에서는 Stable Unit Treatment Value Assumption (SUTVA):

  • 단위 \(i\) 의 잠재 결과 \((y_i^A, y_i^B)\)다른 단위들의 처치 배정에 영향받지 않는다.
  • 구체: \(i\) 에게 \(A\) 를 주어도 \(j (\ne i)\)\(y_j^A, y_j^B\) 가 바뀌지 않는다.

실패 사례 (§ 8.4, p.214):

  • 이웃 농지 비료 침투 → 한 plot 의 \(y\) 가 옆 plot 의 처치에 의존.
  • 전염병 백신 실험 → 한 사람의 접종이 주변 감염률을 낮춤 (herd effect).
  • 소셜 플랫폼 실험 → 친구가 본 광고가 본인 결과에 영향 (network interference).

SUTVA 가 깨지면 완전 데이터가 \(n \times 2\) 가 아니라 \(n \times 2^n\) 이 된다 — 모든 배정 벡터 조합에 대한 잠재 결과. 이 확장은 일반적으로 비현실적.

2.4 Superpopulation vs Finite-Population 인과 효과

두 종류의 인과 추정.

유형 정의 질문
Superpopulation \(\mathbb{E}[y_i^A - y_i^B \mid \theta] = \mu_A - \mu_B\) 이 모집단에서 평균 처치 효과
Finite-population \(\bar{y}^A - \bar{y}^B = \frac{1}{n}\sum(y_i^A - y_i^B)\) \(n\) 개 단위의 실제 처치 효과

두 수량의 관계: finite-population 은 superpopulation 의 랜덤 실현.

  • \(n \to \infty\) 또는 \(N \to \infty\) 일 때 둘이 일치.
  • 실험 대상이 그 자체로 관심 — 실제 단위의 실제 효과가 관심사 — 이면 finite-population.
  • 유사 상황에 일반화 목적이면 superpopulation.

2.5 Completely Randomized Experiment — 포함 모형

\(n\) 을 짝수, 절반이 \(A\), 절반이 \(B\). 포함 지시자:

\[ I_i = (I_i^A, I_i^B), \quad I_i^A + I_i^B = 1 \]

완전 무작위 배정:

\[ p(I \mid y, \phi) = p(I) = \begin{cases} \binom{n}{n/2}^{-1} & \sum I_i^A = \sum I_i^B = n/2 \\ 0 & \text{otherwise} \end{cases} \]

\(y\) 에 의존 안 함 → strongly ignorable. \(\phi\) 없음 → known. Propensity score \(\pi_i = 1/2\) for all \(i\). SRS 와 쌍둥이 구조.

2.6 관측 데이터 우도와 Superpopulation 사후

Ignorable 설계이므로 \(\theta\) 사후는 \(I\) 무시 가능:

\[ p(\theta \mid y_{\mathrm{obs}}) \propto p(\theta) \, p(y_{\mathrm{obs}} \mid \theta) \]

i.i.d. 혼합 모형 하에서:

\[ p(y_{\mathrm{obs}} \mid \theta) = \prod_{i: I_i^A = 1} p(y_i^A \mid \theta_A) \prod_{i: I_i^B = 1} p(y_i^B \mid \theta_B) \]

주변 분포의 모수 \(\theta_A, \theta_B\) 는 관측 데이터로 직접 추정 가능. \(\theta_A\)\(A\) 집단만의 우도, \(\theta_B\)\(B\) 집단만의 우도로부터.

2.7 Finite-Population 추정의 어려움 — Joint Distribution

Superpopulation 추정 \(\mu_A - \mu_B\)\(\theta_A, \theta_B\) 로부터 계산되지만, finite-population \(\bar{y}^A - \bar{y}^B\) 는 다르다.

\(\bar{y}^B\) 계산에 필요한 \(y_i^B\) (통제군 결측) 를 예측하려면 관측된 \(y_i^A\) 조건부 분포가 필요:

\[ p(y_{\mathrm{mis}}^B \mid \theta, y_{\mathrm{obs}}^A) = p(y_i^B \mid \theta_{AB}, y_i^A) \]

이건 두 잠재 결과의 결합 분포 \(p(y_i^A, y_i^B \mid \theta_{AB})\) 의 모수 \(\theta_{AB}\) 를 요구. 그런데 우도에는 \(\theta_{AB}\) 가 나타나지 않는다 — 한 단위에서 한 값만 관측.

결과적으로:

\[ p(\theta_{AB} \mid y_{\mathrm{obs}}) = \int p(\theta_{AB} \mid \theta_A, \theta_B) \, p(\theta_A, \theta_B \mid y_{\mathrm{obs}}) \, d\theta_A \, d\theta_B \]

\(\theta_{AB}\) 의 사후는 순전히 사전 \(p(\theta_{AB} \mid \theta_A, \theta_B)\) (특히 \(\mathrm{corr}(y_i^A, y_i^B \mid \theta)\) 가정) 에 의존. 데이터로 확증 불가.

직관 — 왜 상관 \(\mathrm{corr}(y_i^A, y_i^B \mid \theta)\) 는 데이터로 안 보이는가

한 단위에서 \(y_i^A\)\(y_i^B\)동시에 관측할 수 없다. 실험에서 \(i\) 번 단위에 \(A\) 를 주면 \(y_i^B\) 는 영원히 결측 — 다른 어떤 단위의 데이터도 이 단위의 잠재 결과 쌍을 복원 못 한다.

이 한계가 인과 추론의 근본 문제 (Fundamental Problem of Causal Inference, Holland 1986). Finite-population 추정은 이 결합 분포에 민감하지만, 다행히 대표본 한계에서는 민감도가 사라진다 — 다음 식 (8.17) 이 그 이유.

2.8 식 (8.17) — 대표본 점근 정규

\(n\) 이 크고 \(N/n\) 이 크면 (무한 모집단 근사):

\[ (\bar{y}^A - \bar{y}^B) \mid y_{\mathrm{obs}} \approx \mathrm{N}\!\left(\bar{y}_{\mathrm{obs}}^A - \bar{y}_{\mathrm{obs}}^B, \; \frac{2}{n}(s_{\mathrm{obs}}^{2A} + s_{\mathrm{obs}}^{2B})\right) \tag{8.17} \]

평균: 관측 표본 평균 차이. 분산: 두 집단의 관측 분산 합\(2/n\) 배. 이것이 고전 두 표본 평균 차이 의 표준오차와 정확히 같다:

\[ \mathrm{Var}[\bar{y}_{\mathrm{obs}}^A - \bar{y}_{\mathrm{obs}}^B] = \frac{s_A^2}{n/2} + \frac{s_B^2}{n/2} = \frac{2}{n}(s_A^2 + s_B^2) \]

베이즈 추론과 빈도주의 추론의 점근 일치. § 4.4 의 일반 결과가 완전 무작위 실험에서 구체화된다.

직관 — 대표본에서 사전 민감도가 사라지는 이유

분산 공식 (8.17) 에는 \(\theta_{AB}\) (두 잠재 결과의 결합) 가 안 나타난다. 왜?

대표본에서는 \(\bar{y}^A - \bar{y}^B\)\(\mu_A - \mu_B\) 에 수렴. 두 평균의 차이는 \(y_i^A, y_i^B\) 의 상관에 무관 — 평균은 주변 분포의 함수. 따라서 결합 분포의 세부가 지워진다.

작은 \(n\) 이나 \(N \approx n\) 이면? 이야기가 다르다. Finite-population 인과 효과가 개별 단위의 \(y_i^A - y_i^B\) 쌍에 본질적으로 의존 → 사전 민감. 소규모 실험에서 “사전의 역할이 크다” 는 이유.

2.9 Randomized Blocks와 Latin Square

완전 무작위가 strongly ignorable (no covariates) 였다면, 블록·Latin square 은 strongly ignorable given \(x\). 공변량 (블록 지시자, plot 위치) 을 넣으면 ignorable.

Gelman § 8.4 의 Millet Latin Square 예제 (Table 8.4, p.216): 25 plot × 5 처치 (A~E, 간격 2~10 인치). 각 행·각 열에 각 처치가 정확히 한 번 등장. 완전 데이터 \(Y\)\(25 \times 5\), 관측은 행당 하나.

설계가 ignorable 이 되도록 하는 공변량: plot 의 좌표 \(x_{ij}\) (수평·수직 위치). 어떤 ignorable 모형도 \(p(y \mid x, \theta)\) 형태여야 함. 추가 정보 (강의 흐름, 토양 구배) 있으면 포함.

분석은 두 단계:

  1. Superpopulation: \(\log y\) 에 대한 선형 additive 모형 (행 효과 + 열 효과 + 처치 효과 \(\pm\) 처치-위치 interaction).
  2. Finite-population: 25 plot 의 \(x\) 값 조건부로 각 처치의 기대 수확 평균.
직관 — “이 데이터가 실은 완전 무작위였다면?” 의 미묘함

Gelman 의 교육적 문답 (p.216): “Table 8.4 데이터가 실제로 Latin square 가 아니라 완전 무작위 실험인데 우연히 각 행·열이 balanced 된 것이라면, 분석을 바꿔야 하는가?”

답: 아니다. 여전히 \(x\) (plot 위치) 조건부로 분석하는 게 맞다. 이유: 완전 무작위였다면 \(p(y \mid \theta)\) 만으로도 ignorable — \(x\) 를 무시해도 valid. 그러나 \(x\)\(y\) 에 진짜 영향을 주면 (위치별 토양 차이), \(x\) 를 포함하는 모형이 더 정밀.

결론: ignorability 는 “무시해도 되는” 이지 “무시해야 하는” 이 아니다. 추가 공변량은 정보를 늘린다. 단, 추가 공변량이 \(y\) 와 무관 하면 오히려 사후를 flatten (noise 주입) — 무턱대고 다 넣으면 안 됨.

2.10 Sequential Designs — Ignorable but Not Strongly

\(i\) 번째 단위의 처치 확률이 이전 관측 결과 \(y_{1}, \ldots, y_{i-1}\) 에 의존하는 설계 (adaptive trial).

\[ p(I_i \mid y_{1:i-1}, x, \phi) \ne p(I_i \mid x, \phi) \]

\(I\)\(y_{\mathrm{obs}}\) 에 의존하지만 \(y_{\mathrm{mis}}\) 에는 의존 안 함 → MAR 유지, ignorable. 그러나 \(y_{\mathrm{obs}}\) 의존이 있으므로 strongly ignorable 은 아님 (propensity score 언어 제한적 적용).

실무 함의: 적응 실험은 “완전 무작위처럼 분석해도 된다” 가 아니다. 배정 규칙에 사용된 모든 이전 변수를 조건부로 분석해야 함.

2.11 Minimally Adequate Summary vs 확장 분석

§ 8.4 (p.217) 의 미묘한 포인트. Minimally adequate summary — ignorability 를 유지하는 최소 공변량 집합.

그러나 실제로는 추가 공변량 사용이 유익. 예: 100 명 SRS 에서 성별 분포가 모집단 (51% 여 / 49% 남) 과 다르면, 성별을 공변량으로 층화하는 것이 추가 정보를 활용. Minimal analysis 에선 성별 무시해도 valid 하지만 non-minimal 이 더 정밀.

단, 모집단 성별 분포를 모른다면 공변량으로 성별을 쓰는 것이 오히려 부담 — \(p(x)\) 의 모수를 추정해야 함. 이 trade-off 가 “more valid conditionally but possibly more sensitive” 원칙.

2.12 사례 — 50 마리 소 실험 (재무작위화)

§ 8.4 (p.217~218) 의 ignorable & unknown 예제. 50 마리 소에 4 가지 메티오닌 하이드록시 유사체 처치. 3 개 전처치 공변량 (수유 단계, 나이, 초기 체중) 을 기준으로 처치군 간 balance 확인.

절차:

  1. 완전 무작위 배정.
  2. 세 공변량의 처치군 간 분포 점검.
  3. balance 가 “best” 인 배정이 나올 때까지 여러 차례 재무작위화.

이 설계의 분류:

  • Ignorable — 배정이 공변량에만 의존 (\(y\) 에 의존 안 함).
  • Unknown — 재무작위화 결정 규칙이 명시적으로 기술되지 않음.

분석 전략: \(y\) 를 처치 + 3 공변량의 함수로 모델링. \(\phi\) (배정 모수) 가 \(\theta\) 와 distinct 하다고 가정.

직관 — “재무작위화” 가 왜 unknown 인가

완전 무작위 → balanced 할 기대값은 맞지만, 작은 \(n\) 에선 우연히 unbalanced 될 수 있다. 재무작위화는 “우연” 을 제거한다. 그런데 “몇 번 시도했나, 어떤 balance 기준인가” 를 공식적으로 기록하지 않으면 \(\phi\) 가 사실상 “unknown”.

이 설계는 ignorability 는 살아 있지만 명시적 확률 모형을 적기 어렵다. 베이즈 분석자의 실용적 대응: 공변량 \(x\) 를 충분히 포함해서 \(p(I \mid x) = p(I \mid x, y)\) 가 근사적으로 성립하도록 설계 정보를 활용. 완전한 정당화는 공변량 풍부도에 의존.

2.13 Ignorability 와 정밀성은 다른 문제

§ 8.4 핵심 교훈:

고정 모형·데이터에서 \(\theta\) 사후는 모든 ignorable 설계에서 동일.

그러나 더 좋은 설계는 더 정보량 높은 데이터를 산출. 소 실험의 경우 — 단순 재무작위화보다 명시적 randomized block 이 더 precise 한 추론을 주었을 것. Ignorability 는 “최소 요건”, 정밀성은 “설계 선택의 자유도”.

3 § 8.5 — 무작위화의 역할

3.1 왜 무작위화인가 — 첫 번째 대답

§ 8.5 의 핵심 질문: 설계가 ignorable 이기만 하면 같은 사후가 나오는데, 왜 무작위화가 필요한가?

첫 답: 공변량이 전혀 없을 때 ignorable 하려면 결국 무작위화밖에 없다.

\(p(I_1, \ldots, I_n \mid \phi)\)permutation invariant (\(i\) 인덱스 바꿔도 같음) 여야 ignorable (단위 간 구별 정보 없음). Permutation invariant 한 비자명 분포는 랜덤 배정. “랜덤” 이 자연스러운 귀결.

3.2 정밀성의 두 번째 대답

두 이형 랜덤 배정 비교: 10 명에 2 처치 주는 두 방법.

  • 방법 A: 각 subject 에 독립 동전 던지기 (\(I_i \sim \mathrm{Bernoulli}(1/2)\)).
  • 방법 B: 랜덤하게 절반 \(A\), 절반 \(B\) 배정.

두 방법 모두 ignorable. 그러나 방법 B 가 일반적으로 정밀성 높음 — 두 집단 크기가 정확히 같아 분산 더 작음. 방법 A 는 가끔 7-3 으로 쏠려 고분산 추정.

Ignorability 는 최소 요건, 정밀성은 추가 요구. 두 기준이 분리됨.

3.3 공변량이 있을 때 — Randomization vs 결정론적 Ignorable

Gelman 의 fertilizer 예제 (§ 8.5, p.218): 12 개 인접 plot 에 비료 \(A, B\) 를 6 개씩. 두 설계 비교:

  • Randomized: 6 plot 에 \(A\), 6 에 \(B\) 를 무작위 배정.
  • Systematic: \(A B A B A B B A B A B A\) (결정론적 교차).

\(x_i\) = plot 위치라 하자. 두 설계 모두 \(x\) 조건부로 ignorable. 실제 분석은 둘 다 \(p(y \mid x, \theta)\) 로 하되, 예를 들어 “위치 선형 추세” 를 포함해 공변량 효과를 처리.

그럼 왜 무작위화를 선호하는가?

3.3.1 이유 1 — “\(x\) 무시해도 valid”

무작위 설계 하에선 \(x\) 를 아예 사용하지 않은 분석도 valid (ignorable 이 \(x\) 조건부 아니어도 성립). 즉 최소 분석 \(p(y \mid \theta)\) 도 쓸 수 있고, 확장 분석 \(p(y \mid x, \theta)\) 는 더 정밀. 두 분석의 일관성을 비교할 수 있다 — 일관성 깨지면 모형 가정 재검토.

결정론 설계 하에선 \(x\) 를 써야만 ignorable 이 유지되므로 이 모델 진단 도구가 없다.

3.3.2 이유 2 — 사후 예측 점검의 유연성

\(y^{\mathrm{rep}}\) 시뮬레이션 시, 무작위 설계는 미래 replication 에 다른 배정을 줄 수 있다. \(y^{\mathrm{rep}}\) 의 분포가 설계 변동을 반영. 결정론 설계는 항상 같은 배정 → \(y^{\mathrm{rep}}\) 가 좁음.

3.3.3 이유 3 — “Cheating” 방지

모든 결정론 설계는 관측 안 된 변수 와 체계적으로 상관될 위험. 예: 옥외 실험에서 \(ABABAB\) 배정이 우연히 “햇볕-그늘” 패턴과 일치하면, 햇볕을 \(A\) 가, 그늘을 \(B\) 가 독점 → 교란 변수와 처치가 구별 불가능. 무작위화는 이 가능성을 기대값에서 차단.

직관 — “Randomization 은 보험이다”

Ignorability 만 보면 결정론 설계와 무작위 설계가 같다. 그러나 실제 세계에는 모델이 포착 못 한 공변량이 항상 있다. 무작위화는 그 알려지지 않은 공변량에 대해서도 기대값 기준 balance 를 보장.

비유: 알려진 위험은 보험 증서로, 알려지지 않은 위험은 분산 투자로 대응. 무작위화는 “알려지지 않은 위험에 대한 분산 투자”.

3.4 Cheating 의 세 베이즈 경로

§ 8.5 (p.219~220) 의 세 위험 경로.

3.4.1 경로 1 — 미기록 공변량에 의존

처치 배정이 기록되지 않은 공변량 (예: 햇볕/그늘) 에 의존하면 nonignorable. 선택 효과를 명시 모형화해야 하는데, 일반적으로 모델 민감도 극도로 높음.

3.4.2 경로 2 — 기록 공변량에 의존하지만 collinearity

처치 지시자와 공변량이 완전 collinear 하면 (모든 햇볕 plot 에 \(A\), 모든 그늘 plot 에 \(B\)), 관측 우도가 둘을 구별 불가 — 처치 효과와 공변량 효과가 identifiable 하지 않음.

3.4.3 경로 3 — Distinct Parameters 위반

명시적으로 무작위라도 \(\phi\)\(\theta\) 의 사전이 얽히면 nonignorable. 예: “효과가 클 거라 믿으면 완전 무작위, 작을 거라 믿으면 randomized block 을 선택” — \(\phi\) (설계) 가 \(\theta\) (효과) 에 관한 사전 신념에 의존.

실무에선 데이터가 사전을 압도하면 이 의존이 희석되지만, 소표본에선 민감.

3.5 Nonrandomized Ignorable 설계의 민감도

Gelman 의 street corner 예제 (§ 8.5, p.220): 도시 성인 여론 조사. 11 am~noon 에 지나가는 사람 모두 인터뷰.

두 가지 모델링:

3.5.1 모델 1 — Nonignorable

\(I_i = 1\) iff \(i\) 가 그 시간대 통과. 통과 여부가 개인 행동 패턴 \(y\) (의견) 에 의존한다 가정. 포함 모형 \(p(I \mid y, \phi)\) 명시 필요.

3.5.2 모델 2 — Ignorable

\(x_i = 1\) iff 통과 — 완전 관측 공변량. \(p(I \mid x) = x\) (통과하면 100% 포함). 분석: \(p(y \mid x = 1)\) 만 가능, \(p(y \mid x = 0)\) 는 데이터 0 개.

두 접근 모두 \(n/N\) 이 1 에 가깝지 않으면 결론이 사전 분포에 극도로 민감. 관찰 연구와 본질적으로 같은 상황 — 공변량 \(x\) 가 없으면 처치 배정이 미확인 변수에 의존.

Strongly ignorable 설계의 장점: 공변량 \(x\) 조건부로 같은 \(x\) 값을 가진 두 단위는 같은 포함 확률:

\[ p(I_i \mid x_i) = p(I_j \mid x_j) \quad \text{if } x_i = x_j \]

이는 \(x\) 에 포함되지 않은 모든 변수에 대해 암묵적 무작위화.

4 § 8.6 — 관찰 연구

4.1 실험 vs 관찰

§ 8.6 의 정의: 관찰 연구는 처치가 실험자 통제 밖. 데이터는 “처치 + 결과” 쌍으로 실험과 같아 보이지만, 처치 배정 메커니즘은 단위 자체의 선택 (또는 알려지지 않은 과정).

SAT 코칭 연구 (Ch.5.5): 학교에서 학생에게 코칭 배정 → 실험. 만약 학생이 스스로 코칭 등록 결정했다면 → 관찰 연구.

측면 실험 관찰 연구
처치 배정 실험자 통제 단위 자발적 선택
Balance 기대값 기준 자동 대개 unbalanced
Ignorability 무작위화로 보장 공변량 조건부로 가정
감도 분석 부차적 필수

4.2 좋은 관찰 연구의 다섯 요건

Gelman (§ 8.6, p.221) 의 리스트:

  1. 배경 balance — 처치군 간 사전 차이를 잘 통제.
  2. 충분한 독립 단위 — 좁은 사후 구간을 위해 크기 확보.
  3. 결과 무관 설계 — 분석 결과를 미리 보고 설계 수정 금지.
  4. 결측 최소화 — 이탈·드롭아웃을 최소화하거나 명시 모형화.
  5. 설계 정보 활용 — 층화·짝짓기에 쓰인 정보를 분석에 반영.

대부분 관찰 연구가 이들 중 1~2 개 이상 실패. 특히 요건 1 (사전 차이) 이 핵심 — 체계적 pre-treatment 차이가 결과 해석을 오염.

4.3 Figure 8.2 — Balance 와 모델 민감도의 직결

§ 8.6 의 Figure 8.2 (p.221) 는 세 패널로 balance 가 모델 민감도에 미치는 영향을 보인다.

  • 패널 (a) — Balanced. 처치·통제 두 군의 \(x\) 분포 거의 동일. 선형 회귀로 추정한 처치 효과가 모델 형태에 둔감. 무작위 실험에서 흔한 패턴.
  • 패널 (b) — Unbalanced + 선형 fit. 통제군 \(x\) 작음, 처치군 \(x\) 큼. 선형 회귀는 양의 처치 효과 추정.
  • 패널 (c) — 같은 unbalanced 데이터 + 약한 비선형 fit. 처치 효과 0 에 가깝게 추정.
직관 — Balance 없이는 “함수 형태” 가 결론을 결정한다

Balanced 데이터 (a) 에선 처치군·통제군이 같은 \(x\) 구간에서 겹친다. 모델이 두 군의 평균을 비교하면 됨 — 추세를 extrapolate 할 필요 없다.

Unbalanced 데이터 (b, c) 는 두 군의 \(x\) 분포가 거의 겹치지 않음. 처치 효과 추정은 반드시 “\(x\) 에서 추세를 외삽” 해야 함 — 관측 안 된 영역으로. 그런데 외삽은 함수 형태에 극도로 민감. 선형이면 한 결론, 약간만 굽어도 반대 결론.

Balance = 외삽 회피 = 모델 독립성. 설계의 힘이 함수형 사전의 역할을 대체한다.

4.4 Propensity Score 의 진단 역할

Figure 8.2 의 unbalance 는 propensity score 분포의 비겹침 (non-overlap) 으로 정량화된다.

\[ \pi(x) = \Pr(I = 1 \mid X = x) \]

를 로지스틱 회귀로 추정. 처치군과 통제군에서 \(\hat{\pi}\) 의 분포를 비교:

  • 두 분포가 겹치면 → 공통 support. 공변량 조정 의미 있음.
  • 두 분포가 분리되면 → non-overlap. 공변량 조정으로 해결 안 됨. 실무 전략: non-overlap 영역 제거 후 분석 (restricted sample).

Propensity score 가 강력한 이유: 다변량 \(x\) 를 스칼라로 요약. 고차원 covariate 에서도 overlap 진단 가능.

4.5 관찰 연구의 두 일반적 난점

§ 8.6 (p.222) 의 실무 경고.

4.5.1 난점 1 — Unbalance

처치군·통제군 간 공변량 분포가 크게 다르면, Figure 8.2 의 (b), (c) 상황 — 결론이 함수형 가정에 민감. 이 경우 데이터가 “실질적으로 정보 없음” 이 될 수 있다.

4.5.2 난점 2 — 미관측 Confounder

처치 배정이 측정되지 않은 변수 (학생의 “당일 기분”, 의사의 “환자별 직관”) 에 의존. 아무리 관측 공변량을 넣어도 ignorability 회복 불가. MNAR 상황. 선택 모형의 가정에 민감.

4.6 Matching·Stratification·Regression 조정

관찰 연구 분석의 표준 도구:

방법 원리 베이즈 해석
Matching 비슷한 \(x\) 를 가진 처치-통제 쌍 형성 Local \(p(y \mid x, \theta)\) 추정 후 평균
Stratification \(x\) 를 구간별로 나눠 각 구간 내 비교 Finite-population 가중 평균
Regression \(y\)\(x\) 회귀 추가 \(p(y \mid x, T, \theta)\) 의 회귀 조정
Propensity score matching \(\hat{\pi}(x)\) 가 비슷한 쌍 Overlap 보장 후 local 비교

공통 아이디어: \(x\) 에 조건부 분석 → \(x\) 분포로 평균. § 8.3 의 stratified sampling 분석과 동일 구조.

4.7 Principal Stratification — 중간 결과를 Covariate 처럼

§ 8.6 (p.223) 의 진보된 주제. 처치와 최종 결과 사이에 중간 변수 \(C\) 가 있다. 예:

  • 처치 = 공부 프로그램 등록 권유, 중간 = 실제 참여 여부, 결과 = 시험 점수.
  • 처치 = 금연 캠페인 노출, 중간 = 금연 시도, 결과 = 건강.

\(C\)잠재 결과 \((C(0), C(1))\) — 처치 배정 \(I = 0, 1\) 각각에 대한 \(C\) 값.

관측값: \(C_{\mathrm{obs}, i} = I_i C_i(1) + (1 - I_i) C_i(0)\) — 배정된 쪽의 \(C\) 만.

흔한 오류 — \(C_{\mathrm{obs}}\) 를 Covariate 취급

\(C_{\mathrm{obs}}\) 에 따라 분석을 층화” 는 잘못. \(C_{\mathrm{obs}}\) 는 처치 \(I\) 에 의존 — covariate 가 아니다.

올바른 접근: \((C(0), C(1))\) 쌍을 층화 기준으로 사용. 이 쌍은 \(I\)독립 (unit-level 잠재 결과이므로) → 진정한 covariate 역할 가능.

문제: \((C(0), C(1))\) 는 일반적으로 관측 불가. 이것이 principal stratification 을 “정통 베이즈 문제” 로 만든다 — 잠재 변수로 취급, MCMC 로 사후 추출.

4.8 Sommer-Zeger Indonesian Vitamin A 예제

§ 8.6 (p.223~224) 의 대표 예시. 인도네시아 마을의 비타민 A 보충제 실험. 단점: 처치군에 배정된 사람도 자발적으로 복용 안 할 수 있음. 이것이 noncompliance.

4.8.1 Potential Outcomes 구조

\(C_i(1)\): 처치 배정 시 \(i\) 가 실제 복용하는가 (1 = yes). \(C_i(0)\): 통제 배정 시 \(i\) 가 복용하는가. 이 연구에선 통제군은 비타민 A 접근 자체가 없으므로 \(C_i(0) = 0\) for all \(i\).

principal strata:

  • Complier\(C_i(1) = 1, C_i(0) = 0\). 배정되면 복용, 아니면 복용 안 함.
  • Never-taker\(C_i(1) = 0, C_i(0) = 0\). 배정돼도 복용 안 함.

(Always-taker 와 defier 는 \(C_i(0) = 0\) 제약으로 배제.)

4.8.2 Table 8.5 데이터

범주 \(I_{\mathrm{obs}}\) \(U_{\mathrm{obs}}\) \(Y_{\mathrm{obs}}\) 단위 수
Complier or never-taker 0 0 0 74
Complier or never-taker 0 0 1 11514
Never-taker 1 0 0 34
Never-taker 1 0 1 2385
Complier 1 1 0 12
Complier 1 1 1 9663

\(I_{\mathrm{obs}} = 1\): 처치 배정됨. \(U_{\mathrm{obs}} = 1\): 실제 복용함. \(Y_{\mathrm{obs}} = 1\): 생존.

관찰 가능한 strata: 처치군에서는 복용 여부로 complier/never-taker 구분 가능. 통제군에서는 구분 불가능 (둘 다 \(U = 0\)).

4.9 ITT, CACE, NACE, IV Estimate

4.9.1 Intention-to-Treat (ITT) 효과

배정 자체의 효과 — 복용 여부 무시:

\[ \mathrm{ITT} = \bar{Y}_1 - \bar{Y}_0 \]

\(\bar{Y}_1\) = 처치 배정군 평균 결과, \(\bar{Y}_0\) = 통제 배정군 평균 결과. 무작위화 덕에 직접 추정 가능.

4.9.2 ITT 의 분해 — 식 (8.18)

\[ \bar{Y}_1 - \bar{Y}_0 = p_c \cdot \mathrm{CACE} + (1 - p_c) \cdot \mathrm{NACE} \tag{8.18} \]

  • \(p_c\): complier 비율.
  • \(\mathrm{CACE}\): complier 들의 평균 인과 효과.
  • \(\mathrm{NACE}\): noncomplier 들의 평균 인과 효과 (배정만으로의 효과).

4.9.3 Exclusion Restriction

가정: noncomplier 에겐 배정 자체가 결과에 영향 없음.

\[ \mathrm{NACE} = 0 \]

이 가정은 “약을 안 먹은 사람은 배정만으로 생존율 변화 없음” — 그럴듯함. 그러나 검증 불가 (counterfactual).

4.9.4 IV Estimate — 식 (8.19)

Exclusion restriction 하에서:

\[ \widehat{\mathrm{CACE}} = \frac{\bar{y}_1 - \bar{y}_0}{\hat{p}_c} \tag{8.19} \]

“ITT 를 complier 비율로 나눔”. 경제학의 Instrumental Variables (IV) estimator 의 기본형.

직관: 배정 → 복용의 “효율” 이 \(p_c\). ITT 는 전체 배정군에 걸친 평균. 복용한 사람만 봤을 때 의 효과는 \(p_c\) 배 키워진 것.

직관 — 왜 ITT 를 \(p_c\) 로 나누는가

비유: 약물 효과가 complier 에게만 100% 효율. 처치군 1000 명 중 \(p_c = 0.8\) 이면 800 명이 복용. ITT 효과는 “1000 명 평균” 이고, CACE 는 “800 명 평균”. 결과가 복용자에게만 생긴다면 ITT 는 CACE 의 0.8 배 — 뒤집으면 \(\mathrm{CACE} = \mathrm{ITT} / 0.8\).

무작위 배정 + exclusion restriction 이 이 간단한 나눗셈을 인과적 해석 가능하게 만든다. 무작위화 없으면 complier 와 never-taker 의 외생적 특성이 다를 수 있어 비교 불가. Exclusion restriction 없으면 NACE ≠ 0 을 분해 못 함.

4.10 Vitamin A 예제의 수치

Table 8.5 로부터 (처치군: \(I = 1\), 통제군: \(I = 0\)):

  • 처치군 총: \(34 + 2385 + 12 + 9663 = 12094\).
  • 처치군 complier 수: \(12 + 9663 = 9675\)\(\hat{p}_c = 9675 / 12094 \approx 0.800\).
  • 처치군 생존율: \((2385 + 9663) / 12094 \approx 0.996\).
  • 통제군 생존율: \(11514 / (74 + 11514) \approx 0.9936\).
  • ITT: \(0.996 - 0.9936 \approx 0.0026\).
  • CACE: \(0.0026 / 0.800 \approx 0.0033\).

CACE 해석: 실제 복용자에서 사망 확률이 약 0.33% 포인트 감소. 영유아 사망률 맥락에서 실질적 의미 있음.

4.11 Bayesian Compliance — Missing Data 재구성

IV estimator 는 method-of-moments — 정확한 사후를 주지 않는다. 베이즈 접근:

  • 통제군 각 단위의 compliance 상태를 결측 변수로 취급.
  • \((I_i, U_i, Y_i)\) 데이터와 compliance prior 를 결합한 우도로 MCMC.
  • Exclusion restriction 을 강제 제약 이 아닌 사전 정보 (완화 가능) 로 취급.

장점:

  • CACE 와 NACE 를 동시에 추정 가능 (exclusion restriction 약화).
  • 불확실성을 사후 분포 전체로 전파.
  • 여러 층의 결측 (중도 탈락, 두 종류 non-compliance) 을 통합 처리.

Influenza shot encouragement 연구가 대표 확장 예 — 처치·통제 양쪽에 noncomplier 존재, 전통 IV 는 부적절.

5 세 절을 관통하는 직관 모음

5.1 Ignorability 의 스펙트럼

§ 8.4~8.6 은 ignorability 의 획득 방식이 어떻게 분화하는지 보여준다.

설계 Ignorability 달성 수치적 민감도
완전 무작위 (§ 8.4) 자동 (no covariates) 최저
Randomized block (§ 8.4) 자동 (given covariates) 낮음
Latin square (§ 8.4) 자동 (given coordinates) 낮음
Sequential (§ 8.4) 자동 (given history) 낮음 but not strongly
Non-random ignorable (§ 8.5) 가정 + 공변량 포함 중간
Observational (§ 8.6) 가정 + balance + overlap 높음 (감도 분석 필수)

“자동 → 가정” 으로 내려갈수록 모델 민감도와 정당화 부담이 증가.

5.2 Potential Outcomes 는 Missing Data 다

§ 8.4 의 \((y_i^A, y_i^B)\) 행렬은 50% 결측 MCAR (완전 무작위 실험의 경우). § 8.6 의 \((C_i(0), C_i(1))\)100% latent — 개별 단위에선 둘 중 아무것도 관측 안 됨, 집단 수준에서만 분포가 식별 가능.

이 관점이 § 8.2 의 ignorable 수식을 §§ 8.4~8.6 에 통일적으로 적용 가능하게 한다.

5.3 무작위화의 네 이득

§ 8.5 정리: 무작위화는 단순 ignorable 달성을 넘는 네 가지 이득.

이득 내용
1 Permutation invariance → ignorable (공변량 없을 때 유일한 경로)
2 집단 크기 고정 → 정밀성 향상
3 미관측 공변량에 대한 기대값 balance
4 사후 예측 점검의 유연성 + cheating 방지

관찰 연구는 이들 전부 포기. 그래서 공변량 풍부도와 감도 분석이 대체재로 들어온다.

5.4 ITT vs CACE — 무엇이 실무의 답인가

질문 답변 추정량
“이 정책을 도입하면 평균적으로 뭐가 바뀌는가?” ITT (정책 결정에 유용)
“이 약을 실제로 먹으면 몸에 뭐가 일어나는가?” CACE (생리적 효과)
“복용 안 한 사람에게도 배정 자체가 영향 있는가?” NACE (플라시보·라벨 효과)

세 양이 다른 질문에 답한다. § 8.6 의 principal stratification 은 질문을 구분해 답할 수 있게 하는 언어.

6 코드 — Latin Square와 Compliance 시뮬레이션

6.1 1. Latin Square 의 ignorable 분석

Gelman Table 8.4 의 millet spacing 데이터를 토대로 한 간단 합성 예.

import numpy as np
import pymc as pm
import arviz as az

rng = np.random.default_rng(84)

# 5x5 Latin square — 각 행·열에 A~E 한 번씩
# 행·열 효과 + 처치 효과로 수확량 생성
n_rows, n_cols = 5, 5
row_eff = np.array([0.1, -0.2, 0.3, -0.1, 0.2])
col_eff = np.array([0.0, 0.1, -0.1, 0.2, -0.2])
trt_eff = np.array([0.0, 0.3, -0.1, 0.2, 0.1])  # A,B,C,D,E

# Latin square 배열 (표준 형태)
square = np.array([
    [0, 1, 2, 3, 4],
    [1, 2, 3, 4, 0],
    [2, 3, 4, 0, 1],
    [3, 4, 0, 1, 2],
    [4, 0, 1, 2, 3],
])

# 관측 수확
y = np.zeros((n_rows, n_cols))
for i in range(n_rows):
    for j in range(n_cols):
        y[i, j] = 10 + row_eff[i] + col_eff[j] + trt_eff[square[i, j]] + rng.normal(0, 0.3)

# long format
rows = np.repeat(np.arange(n_rows), n_cols)
cols = np.tile(np.arange(n_cols), n_rows)
trts = square.flatten()
yields = y.flatten()

with pm.Model() as latin_model:
    mu = pm.Normal("mu", 10, 5)
    a_row = pm.Normal("a_row", 0, 1, shape=n_rows)
    a_col = pm.Normal("a_col", 0, 1, shape=n_cols)
    a_trt = pm.Normal("a_trt", 0, 1, shape=5)
    sigma = pm.HalfNormal("sigma", 1)

    mean = mu + a_row[rows] + a_col[cols] + a_trt[trts]
    pm.Normal("y", mu=mean, sigma=sigma, observed=yields)

    idata = pm.sample(2000, tune=1000, random_seed=84)

print(az.summary(idata, var_names=["a_trt"], round_to=3))

처치 효과 a_trt 의 사후가 참값 trt_eff 를 회복하면 Latin square 의 ignorable given \(x\) 원리가 작동한 것. 행·열 효과를 공변량으로 포함했기 때문에 ignorable 이 유지됨.

6.2 2. Vitamin A CACE 의 IV vs Bayes 비교

import numpy as np

# Table 8.5 요약 통계 (실제 Sommer-Zeger)
n_control = 74 + 11514
n_treat_nevertaker = 34 + 2385
n_treat_complier = 12 + 9663
n_treat = n_treat_nevertaker + n_treat_complier

y_control_survive = 11514
y_treat_nevertaker_survive = 2385
y_treat_complier_survive = 9663

# ITT
p_survive_treat = (y_treat_nevertaker_survive + y_treat_complier_survive) / n_treat
p_survive_control = y_control_survive / n_control
ITT = p_survive_treat - p_survive_control

# Complier 비율
p_c = n_treat_complier / n_treat

# IV estimate for CACE
CACE_iv = ITT / p_c

print(f"처치군 생존율:       {p_survive_treat:.5f}")
print(f"통제군 생존율:       {p_survive_control:.5f}")
print(f"ITT:                 {ITT:.5f}")
print(f"Complier 비율:       {p_c:.3f}")
print(f"CACE (IV estimate):  {CACE_iv:.5f}")

출력 해석: ITT (배정 기준) 는 약 0.003, CACE (실제 복용자 기준) 는 약 0.003 / 0.8 ≈ 0.0037. 정책 결정 에는 ITT (배정하면 평균 어떻게 되는가), 생리적 효과 에는 CACE 가 답.

6.3 3. 베이즈 CACE — PyMC 로 compliance 를 latent 로

import numpy as np
import pymc as pm
import arviz as az

# 동일 데이터
n_c_0 = 74 + 11514        # control 배정, complier or never-taker (구분 안 됨)
n_c_0_dead = 74
n_t_never = 34 + 2385
n_t_never_dead = 34
n_t_comp = 12 + 9663
n_t_comp_dead = 12

with pm.Model() as cace_model:
    # compliance 비율 (모집단 전체)
    p_comp = pm.Beta("p_comp", 2, 2)

    # 사망률
    p_death_never = pm.Beta("p_death_never", 1, 1)   # never-taker 사망률 (두 배정 공통 — exclusion)
    p_death_comp_trt = pm.Beta("p_death_comp_trt", 1, 1)  # complier 처치 시
    p_death_comp_ctl = pm.Beta("p_death_comp_ctl", 1, 1)  # complier 통제 시

    # 통제군: complier 또는 never-taker 섞여 있음
    # 사망 = p_comp * p_death_comp_ctl + (1 - p_comp) * p_death_never
    p_ctl_dead = p_comp * p_death_comp_ctl + (1 - p_comp) * p_death_never
    pm.Binomial("ctl_dead", n=n_c_0, p=p_ctl_dead, observed=n_c_0_dead)

    # 처치군 never-taker: p_death_never (exclusion restriction)
    pm.Binomial("trt_never_dead", n=n_t_never, p=p_death_never, observed=n_t_never_dead)

    # 처치군 complier: p_death_comp_trt
    pm.Binomial("trt_comp_dead", n=n_t_comp, p=p_death_comp_trt, observed=n_t_comp_dead)

    # 처치군 complier 비율
    pm.Binomial("trt_is_comp", n=n_t_never + n_t_comp, p=p_comp, observed=n_t_comp)

    CACE = pm.Deterministic("CACE", p_death_comp_ctl - p_death_comp_trt)

    idata_cace = pm.sample(2000, tune=1000, random_seed=84)

print(az.summary(idata_cace, var_names=["CACE", "p_comp",
                                         "p_death_never",
                                         "p_death_comp_ctl", "p_death_comp_trt"],
                 round_to=5))

베이즈 추정은 IV 와 달리 사후 분포 전체를 제공. Exclusion restriction 을 p_death_never 공유 제약으로 모형화 — 처치군 never-taker 와 통제군 never-taker 의 사망률이 같다는 가정. 가정을 완화하려면 두 모수를 분리하고 약정보 사전으로 조정.

7 실전 체크리스트

§ 8.4~8.6 의 교훈을 실무 절차로:

  1. 완전 데이터 정의 먼저 — 잠재 결과 \((y_i^A, y_i^B)\) 또는 \((C_i(0), C_i(1))\) 를 명시. 관측은 이 중 어느 부분인가?
  2. SUTVA 점검 — spillover, 네트워크 효과 가능성. 실패하면 구조 재설계.
  3. 배정 메커니즘 문서화 — 무작위면 규칙 기록, 결정론이면 공변량 의존성 명시.
  4. 공변량 balance 점검 — Figure 8.2 의 (a) 가 나오도록 설계. Propensity score overlap 시각화.
  5. Overlap 부족 영역 제거 — 관찰 연구에서 외삽을 피한다.
  6. Compliance 변수 구분 — 중간 결과가 있으면 \(C_{\mathrm{obs}}\) 를 covariate 취급 금지. Principal stratification 언어 사용.
  7. ITT 와 CACE 를 다 보고 — 정책 결정 질문과 생리적 효과 질문을 구분.
  8. Exclusion restriction 명시 — noncompliance 모형에서 이 가정을 분명히. 가능하면 완화한 베이즈 모형과 비교.
  9. 모델 감도 분석 — 관찰 연구에선 필수. 선형 vs 비선형, 변수 추가/제거, propensity score vs 회귀.
  10. 사후 예측 점검 — 무작위 설계의 이득 중 하나. \(y^{\mathrm{rep}}\) 이 실제 수집 구조를 반영하는지 확인.

8 관련 주제

선행 지식

Ch.8 세부 절 (후속 작성 예정)

  • 01-8-3-* — § 8.7~8.8 (검열·절단·나머지 연습문제)

후속 주제

  • Ch.9 Decision Analysis — 인과 효과의 효용 변환
  • Ch.18 Missing Data — multiple imputation 과 principal stratification 의 계산
  • Ch.22 Finite Mixture Models — compliance 의 혼합 모형 표현

관련 개념

  • Holland (1986), Statistics and causal inference — “근본 문제” 언어의 원저
  • Rubin (1978), Bayesian inference for causal effects — 잠재 결과 프레임의 베이즈적 정식화
  • Imbens & Angrist (1994) — LATE 와 IV 의 현대적 정식화
  • Frangakis & Rubin (2002) — principal stratification 원저
  • Sommer & Zeger (1991) — 본문 vitamin A 예제의 원전
  • Angrist, Imbens, Rubin (1996) — IV 와 principal stratification 의 통합적 관점

Subscribe

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