왜 전통 도구가 실패하는가 + Fix 시도의 실패

Hernan Ch.20.3~20.4 — Collider Conditioning 메커니즘 + 회귀·매칭 모두 실패

Hernan & Robins (2020) Ch.20.3~20.4 를 다룬다. \(L_1\) 층화가 collider conditioning 으로 selection bias 도입하는 정확한 메커니즘 (Figure 20.5), \(A_0 \leftrightarrow U_1\) 의 가짜 연관 형성 과정, 더 정교한 도구 (회귀 with cum(A), matching) 도 동일 메커니즘으로 실패하는 이유, 그리고 이 deadlock 이 본질적으로 g-method 를 요구하는 이유를 정리한다.

Experimentation
Causal Inference
저자

Kwangmin Kim

공개

2026년 05월 08일

1 정의

정의: Collider Conditioning Bias

DAG \(A \to L \leftarrow U \to Y\) 에서 collider \(L\) 보정 시: - \(L\)\(A\)\(U\) 의 공통 결과. - \(L\) 보정 → \(A \leftrightarrow U\) 의 가짜 conditional 연관 도입. - \(U \to Y\) 이라면 → \(A \leftrightarrow Y\) 의 가짜 연관 (selection bias).

Sharp null 이라도 비영 추정. Berkson’s bias 의 일반 형태.

TC feedback 시 \(L_k\)\(A_{k-1}\)\(U_k\) 의 결과 → 정확히 이 구조.

직관 — Berkson’s bias 의 시간변동 일반화: 단일 시점 collider 위험 (Berkson, M-bias) 의 시간변동 형태. 시간변동 confounder 가 collider 의 본질. 단일 시점에서 회피 가능 (보정 안 함) 했으나 시간변동에서는 불가피 — confounder 보정 필요한 동시에 collider 함정.

2 20.3 Stratification 의 실패 메커니즘

2.1 Figure 20.5 — Collider 의 정확한 구조

Figure 20.5 (Hernan Ch.20.3)
A_0  →  L_1  ←  U_1
              ↘     ↘
                A_1   →   Y

\(L_1\) 의 위치: - \(A_0 \to L_1\): 처치가 covariate 변경. - \(U_1 \to L_1\): 미관측 변수가 covariate 영향. - \(L_1 \to A_1\): covariate 이 다음 처치 결정. - \(U_1 \to Y\): 미관측 변수가 결과 영향.

\(L_1\)\(A_0\)\(U_1\) 의 공통 결과 (collider).

\(L_1\) 보정 시 path \(A_0 \to L_1 \leftarrow U_1 \to Y\) 활성화 → \(A_0 \leftrightarrow Y\) 가짜 연관.

직관 — Collider 활성화의 시각: Path 가 “닫혀 있는” 상태에서 conditioning 이 path 를 연다. \(A_0 \to L_1 \leftarrow U_1\) 의 collider \(L_1\) 에서 본래 path 가 닫혀 있음. \(L_1\) 보정 → path 활성화. 이 path 가 \(A_0\) 의 결과 평균을 왜곡.

2.2 Stratum 별 메커니즘 — \(L_1=0\) 의 경우

\(L_1=0\) 에서 두 그룹의 차이

\(L_1=0\) (CD4 high) 안에서:

Group A: \(A_0=0, L_1=0\) (4000 명) - 처치 안 받았는데 CD4 high. - 의미: 원래 면역 시스템 좋음 (낮은 \(U_1\)). - \(\mathrm{E}[Y | A_0=0, L_1=0] = 84\).

Group B: \(A_0=1, L_1=0\) (8000 명) - 처치 받고 CD4 high. - 의미: 원래 일부는 좋았고, 일부는 처치 효과로 회복 (다양한 \(U_1\), 평균 더 나쁨). - \(\mathrm{E}[Y | A_0=1, L_1=0] = 76\).

차이 -8 = \(U_1\)baseline 차이 + \(A_0\)직접 효과 (= 0). → 모두 \(U_1\) 차이로 설명.

직관 — “같은 \(L_1\)” 의 두 의미: Group A 의 “CD4 high” 는 baseline 좋음. Group B 의 “CD4 high” 는 baseline 나빴는데 처치로 회복. 같은 측정값이 다른 의학적 의미. Conditioning 으로 의미가 분리됨.

직관 — Berkson’s bias 의 의학적 비유: “병원 입원자 중 두 질병이 함께 있는 비율이 높다” — 입원 (collider) 으로 conditioning. 두 질병이 인구에서 무관해도 입원 환자 중에서는 가짜 연관. 같은 메커니즘이 시간변동 분석에서 작동.

2.3 \(L_1=1\) 의 경우 — 같은 메커니즘

\(L_1=1\) (CD4 low) 의 경우

Group C: \(A_0=0, L_1=1\) (12000 명) - 처치 안 받았는데 CD4 low. - 원래 baseline 안 좋음 (높은 \(U_1\)). - \(\mathrm{E}[Y | A_0=0, L_1=1] = 52\).

Group D: \(A_0=1, L_1=1\) (8000 명) - 처치 받았는데 CD4 low. - 원래 baseline 매우 안 좋음 — 처치도 충분 회복 안 됨 (가장 높은 \(U_1\)). - \(\mathrm{E}[Y | A_0=1, L_1=1] = 44\).

차이 -8 — 같은 \(-8\) collider 편향.

→ 두 stratum 모두 정확히 \(-8\)uniform collider effect.

직관 — 두 stratum 의 일관된 -8: 데이터의 대칭성 — 처치 효과 0 이라는 진짜 구조를 반영. 그러나 추정 도구가 0 대신 -8 을 일관되게 추정. 도구가 체계적으로 편향 — 우연이 아닌 결정적 실패.

2.4 두 편향의 trade-off

Confounding vs Collider 의 trade-off

비보정 (\(L_1\) 무시): - \(L_1\) 이 confounder 라 confounding 편향 -13.3. - \(L_1=1\) 그룹이 \(A_1=1\)더 많이 분포 → \(A_1\)부정 결과 효과 추정.

\(L_1\) 보정: - Confounding 부분 제거. - 그러나 collider conditioning 으로 새 편향 -8 도입. - 두 편향의 부분 상쇄 → 보정 후 작은 잔여 편향.

완벽한 도구 = confounding 제거 + collider 회피. 둘을 동시 달성 불가 (단순 도구로).

직관 — 진퇴양난: 보정 시 collider, 비보정 시 confounding. 부분 보정 (일부 stratum 만) 은 두 편향 혼재. 이 deadlock 이 g-method 의 정확한 발명 동기.

3 20.4 Outcome Regression 도 실패

3.1 회귀의 stratification 이라는 사실

회귀 = 모수적 stratification

회귀 모형 \(\mathrm{E}[Y | \bar{A}, L_1] = \theta_0 + \theta_1 cum(\bar{A}) + \theta_2 L_1\):

  • 각 covariate 값에 모수 형태로 평균 추정.
  • 각 stratum 의 \(\mathrm{E}[Y | A, L_1]\) 의 가중 평균.
  • = stratification 의 부드러운 일반화.

→ 같은 collider conditioning 메커니즘.

→ 같은 실패 결과 (편향 -8 또는 비슷한 값).

직관 — 회귀가 매끄러운 stratification: 회귀 계수가 각 stratum 의 평균을 매끄러운 함수로 표현. 비모수 stratification 과 같은 정보 사용. 모수 형태가 collider 함정을 우회 안 함.

3.2 Hernan 의 회귀 분석 결과

Cumulative Treatment 회귀의 결과

\(cum(\bar{A}) = A_0 + A_1\) 사용: - \(cum(\bar{A}) = 0\) (always 0): 0 처치. - \(cum(\bar{A}) = 1\) (one 처치): 시점 0 OR 시점 1 만. - \(cum(\bar{A}) = 2\) (always 1): 모든 시점 처치.

\(\mathrm{E}[Y | \bar{A}, L_1] = \theta_0 + \theta_1 cum(\bar{A}) + \theta_2 L_1\):

Hernan 의 결과: - \(\theta_1 = -4\) (대략). - “Always treat vs never treat” = \(\theta_1 \times 2 = -8\).

진짜 ATE = 0. 회귀 결과 -8. 편향 -8.

→ Stratification 과 동일 편향 — 메커니즘 동일.

직관 — 더 정교한 회귀의 함정: 더 많은 spline, 더 많은 interaction, 더 큰 모형 — 모두 같은 함정. 함수 형태의 유연성으로 collider conditioning 우회 불가능. Hernan 의 강조.

직관 — Cumulative Dose 의 의미: 의학에서 흔한 모형 (“총 약물량의 효과”). 그러나 시간변동 처치에서는 misleading — 시점별 처치 sequence 가 다른 효과 가질 수 있음.

3.3 다른 도구들도 실패

Matching · PS · Spline 도 동일 실패

\(L_1\)-based Matching: - 같은 \(L_1\) 값의 처치-비처치 짝지움. - = stratification 의 비모수 형태. - 같은 collider 편향.

Propensity Score on \(L_1\): - \(\Pr(A_1 | L_1)\) 의 함수. - \(L_1\) 정보를 PS 에 압축. - 같은 collider 편향.

Spline on \(L_1\): - \(L_1\) 의 비선형 함수 보정. - 더 유연한 형태지만 같은 conditioning. - 같은 편향.

모든 표준 도구가 동일 실패.

직관 — 도구 선택과 무관한 실패: 분석가가 어떤 도구를 시도해도 실패. 더 정교한 spline, 더 큰 데이터, 더 많은 변수 — 도움 안 됨. 본질적 deadlock. 새 frame 의 도구 (g-method) 만이 답.

3.4 Fix 시도의 마지막 — Mediation Analysis 시도

\(L_1\) 을 매개자로 처리” 시도

발상: \(A_0 \to L_1 \to A_1\) 경로가 매개. \(L_1\) 보정으로 direct effect 만 추정?

문제: - 매개 효과 분석 (Ch.23) 은 specific 도구 — 단순 회귀 아님. - \(A_1 \to Y\)처치-처치 경로, 매개 아님. - \(A_0 \to L_1 \to Y\)매개 지만 (sharp null 이라 효과 0), \(L_1\) 자체에 Y 화살표 없음.

→ Mediation framework 도 부적절. 본질적 deadlock.

직관 — Hernan 의 결론: “어떤 보정도 적절하지 않다.” 표준 도구 box 전체가 시간변동 처치 분석에 부적합. 새 도구 필요 — 정확히 g-method 의 도입 동기.

4 도구 fix 시도의 종합

모든 fix 시도의 실패 종합
시도 결과
보정 안 함 confounding 편향 (-13.3)
\(L_1\) 층화 collider 편향 (-8)
더 많은 covariate 보정 같은 메커니즘 — 편향
더 유연한 회귀 (spline) 같은 메커니즘 — 편향
Propensity score on \(L_1\) 같은 메커니즘 — 편향
Matching on \(L_1\) 같은 메커니즘 — 편향
Cumulative dose 회귀 같은 메커니즘 — 편향
Mediation analysis 부적절 — 매개 구조 다름
Random forest, ML 같은 메커니즘 — 편향

표준 도구 box 전체 실패. G-method 가 본질적으로 다른 frame.

직관 — Box 전체의 실패가 의미하는 것: 데이터 + 표준 도구로는 원리적 으로 풀 수 없음. 더 큰 데이터, 더 많은 변수도 도움 안 됨. 인식적 패러다임 전환 필요 — 이것이 Robins (1986) 의 기여.

5 G-method 가 다른 이유 — Preview

G-method 의 본질적 차이 (Ch.21 미리보기)

전통 도구: 한 번의 분석으로 모든 효과 추정. \(L_1\) 보정 → 모든 처치 효과 동시 추정. → Collider 함정.

G-method: 시점별 분리 분석. - G-formula: 시점별 결과 모형 + 시뮬레이션. - IPW MSM: 시점별 가중치 곱 + 가중 회귀. - G-estimation: 시점별 SNMM + sequential 추정.

Conditional 보정 안 함. Marginal (가중 또는 표준화) 보정.

→ Collider 활성화 회피.

직관 — Conditional vs Marginal 의 차이: 표준 회귀는 conditional (\(Y | A, L\)). G-method 는 marginal (\(Y^a\)). \(L\) 보정을 conditional 로 하면 collider, marginal 로 하면 OK. 분석 frame 의 변경이 deadlock 해결.

6 응용 분야

  • HIV/AIDS ART: 1990 년대 분석 위기의 g-method 해결
  • 종양학 sequential 항암제: 표준 회귀의 함정 회피
  • 만성 질환 약물 dose: 시간변동 약물 효과
  • 마케팅 sequential attribution: 캠페인 효과의 정확한 추정
  • A/B 테스트 sequential rollout: 단계별 처치 변경 분석

7 코드 — Collider Conditioning 시뮬레이션

import numpy as np
import pandas as pd
import statsmodels.formula.api as smf

# === Sharp Null + TC Feedback 시뮬레이션 ===
np.random.seed(42)
n = 32000

# U_1: 미관측 변수 (Y 의 원인)
U = np.random.normal(0, 1, n)

# A_0: 무작위 50:50
A0 = np.random.binomial(1, 0.5, n)

# L_1: A_0 와 U_1 의 collider
L1 = (0.5 * A0 + 0.7 * U + np.random.normal(0, 0.5, n) > 0.5).astype(int)

# A_1: L_1 의 함수
prob_A1 = np.where(L1 == 1, 0.8, 0.4)
A1 = np.random.binomial(1, prob_A1)

# Y: U 만 의존 (sharp null — 처치 효과 0)
Y = 60 + 20 * (1 - U) + np.random.normal(0, 5, n)

df = pd.DataFrame({"A0": A0, "L1": L1, "A1": A1, "Y": Y, "U": U})
df["cum_A"] = df["A0"] + df["A1"]

print("=== 진짜 ATE = 0 (sharp null) ===\n")

# (1) 비보정
m1 = smf.ols("Y ~ cum_A", data=df).fit()
print(f"(1) 비보정 (cum_A): {m1.params['cum_A']:.2f}")

# (2) L1 보정 — collider conditioning
m2 = smf.ols("Y ~ cum_A + L1", data=df).fit()
print(f"(2) L1 보정 (cum_A + L1): {m2.params['cum_A']:.2f} (collider bias)")

# (3) U 보정 — 가상 (실제로는 미관측)
m3 = smf.ols("Y ~ cum_A + U", data=df).fit()
print(f"(3) U 보정 (가상): {m3.params['cum_A']:.2f} (~ 0, 진짜)")

# (4) L1 + U 보정 — 가상
m4 = smf.ols("Y ~ cum_A + L1 + U", data=df).fit()
print(f"(4) L1 + U 보정 (가상): {m4.params['cum_A']:.2f}")

print("\n→ 표준 도구 모두 비영 (U 보정 시만 0)")
print("→ U 미관측 시 g-method 필요 (Ch.21)")

8 한 줄 요약

\(L_1\) 층화의 실패 메커니즘은 collider conditioning — Figure 20.5 의 \(A_0 \to L_1 \leftarrow U_1\) 구조에서 \(L_1\) 보정이 path 활성화. 같은 stratum 안의 두 그룹이 baseline \(U_1\) 다름 — gauche 연관 -8. 더 정교한 도구 (회귀, matching, PS, spline) 도 같은 메커니즘으로 실패 — stratification 의 모수적 일반화. Mediation framework 도 부적절. 표준 도구 box 전체의 본질적 deadlock — g-method 만이 conditional 대신 marginal 분석 frame 으로 함정 회피.

9 관련 주제

선행 지식

후속 주제

다른 카테고리 연결

Subscribe

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