결과 회귀와 성향점수 — Ch.15 개관

Hernan Ch.15 — outcome regression, PS의 4 가지 활용, propensity vs structural model

Hernan & Robins (2020) Ch.15 의 5 개 소챕터를 한 흐름으로 정리한다. 가장 흔히 쓰이는 outcome regression 과 propensity score 방법의 정의, PS 의 balancing 성질, 층화·표준화· 매칭의 4 가지 활용, propensity 모형과 structural 모형의 차이, 그리고 단일 시점 처치에는 강력하지만 시간변동에서는 한계가 명확한 이유를 압축한다.

Experimentation
Causal Inference
저자

Kwangmin Kim

공개

2026년 05월 08일

1 개요

Outcome regression 과 propensity score 는 인과 분석에서 가장 흔히 쓰이는 도구이다. 그런데 Hernan 의 책은 이 두 도구를 Ch.15 에 와서야 다룬다 — 왜?

답: 이 도구들은 단일 시점 처치에 잘 작동하지만 시간변동 처치에서는 일반적으로 무너진다. g-method (IPW, 표준화, g-estimation) 가 더 일반적이라 Hernan 은 g-method 를 먼저 가르치고 나서 더 흔하지만 한계 명확한 도구로 마무리한다.

직관 — “흔한 도구를 늦게 배우는 이유”: 도구의 인기 ≠ 도구의 일반성. PS matching 은 의학·역학 논문에서 가장 자주 쓰이지만 Part III 의 시간변동 처치-교란 피드백에서는 작동 안 함. 단순한 시나리오의 표준 도구지만 일반 용도의 도구는 아님.

정의: 성향점수 (Propensity Score)

조건부 처치 확률

\[\pi(L) = \Pr(A=1 | L)\]

이항 처치에 대해. 무작위 실험에서는 \(\pi(L) = 0.5\) (또는 설계된 값), 관찰 연구에서는 \(L\) 의 함수 — logistic 회귀로 추정 (Rosenbaum & Rubin 1983).

직관 — PS 가 “성향” 이라 불리는 이유: 각 사람의 처치 받을 경향성 을 단일 숫자로 표현. 9 개 변수의 다차원 정보를 0~1 의 스칼라로 압축. 차원 축소 도구 의 한 형태.

2 5 개 소챕터의 흐름

소챕터 핵심 질문
15.1 Outcome regression 으로 직접 추정? 가능, faux MSM 의 한 사례
15.2 PS 가 왜 유용한가? balancing 성질 — \(A \perp\!\!\!\perp L | \pi(L)\)
15.3 PS 를 어떻게 활용하나? (1) 층화 + 표준화
15.4 PS 를 어떻게 활용하나? (2) 매칭
15.5 propensity vs structural 모형 차이는? 모수의 인과적 의미

3 NHEFS 사례 — 모든 도구의 일치

NHEFS Ch.15 결과 (Hernan, Program 15.1-15.4)
  • Outcome regression: \(\widehat{\beta}_1 = 3.5\) kg (95% CI 2.6~4.3) — product term 없음.
  • PS 층화 (deciles): \(\widehat{\beta} = 3.5\) kg (95% CI 2.6~4.4).
  • PS 표준화 (continuous): \(\widehat{\beta} = 3.6\) kg (95% CI 2.7~4.6).
  • PS 매칭: 결과 약간 다름 (matched 부분군에서).

직관 — 다섯 도구의 일치성: IPW 3.4, 표준화 3.5, g-estimation 3.4, outcome regression 3.5, PS 층화 3.5. 모든 도구가 같은 답으로 수렴 — 모형 specification 안정성의 강한 증거. 결과 모형이든 처치 모형이든 NHEFS 데이터의 진짜 구조를 잘 포착.

4 핵심 개념 5 가지

4.1 1. Outcome Regression — Faux MSM 의 또 다른 이름

\[\mathrm{E}[Y^{a, c=0} | L] = \beta_0 + \beta_1 a + \beta_2 a L + \beta_3 L\]

이 구조 모형의 모수는 일반 OLS 로 적합. 단순 가정 + 직접 추정 → 가장 흔한 도구.

직관 — Outcome regression 이 보편적인 이유: 통계 패키지의 lm()/glm() 한 줄로 추정 가능. propensity matching 같은 별도 절차 불필요. 사용 편의가 보편화의 원인.

직관 — 그러나 가정이 강함: \(\mathrm{E}[Y^{a=0}|L]\) 의 함수 형태 (intercept + \(\beta_3 L\)) 가 정확해야 한다. SNMM 의 semiparametric 보다 강한 가정. 편의의 댓가.

4.2 2. PS 의 Balancing 성질 (15.2)

Rosenbaum & Rubin (1983) 의 정리

조건부 교환가능성 \(Y^a \perp\!\!\!\perp A | L\) 이 성립하면

\[Y^a \perp\!\!\!\perp A | \pi(L)\]

도 성립. PS 한 변수만 보정해도 \(L\) 의 다차원 정보가 모두 흡수된다.

직관 — 차원 축소의 마법: 9 차원 \(L\) 의 분포 차이가 처치-결과 관계를 교란한다고 의심. Rosenbaum-Rubin 정리는 1 차원 \(\pi(L)\) 만 같으면 9 차원 분포가 처치군·대조군에서 같다는 것을 보장. 보정해야 할 차원이 9 → 1 로 압축.

직관 — 그러나 모형 의존: \(\pi(L)\) 의 추정이 logistic 모형으로 함. 모형이 misspecified 되면 추정된 PS 가 진짜 PS 와 다르고, balancing 성질이 깨진다. PS 자체는 마법이지만 추정 PS 는 마법 아님.

4.3 3. PS 의 4 가지 활용 (15.3-15.4)

활용 절차 NHEFS 결과
IP 가중 (Ch.12) \(1/\pi(L)\) 또는 \(1/(1-\pi(L))\) 로 가중 3.4 kg
층화/표준화 PS deciles 로 층화 후 효과 추정 3.5 kg
매칭 같은 PS 값 처치-대조 짝 결합 (matched 부분군)
회귀 보정 PS 를 회귀의 covariate 으로 3.6 kg

직관 — 같은 PS 의 4 가지 사용 방식: 처치-대조 분포를 맞추는 4 가지 방식. 가중은 모든 사람의 weight 변경, 층화는 PS 빈으로 나눈 후 빈별 효과 평균, 매칭은 가까운 PS 사람끼리 짝지움, 회귀는 PS 를 covariate 으로. 방법은 다르지만 같은 인과량을 향함.

4.4 4. PS 매칭의 강점과 약점 (15.4)

강점: - 자동 positivity 점검 (overlap 영역만 분석). - 절차의 직관성 — “유사한 사람끼리 비교”.

약점: - 매칭에 실패한 사람 제외 → 모집단이 ill-characterized 될 수 있음. - “PS 0.67 미만의 사람들” 같은 정의가 도메인적 의미 없음. - Random vs structural nonpositivity 구별 못 함.

직관 — 매칭의 사회학: 의학·정책 분야에서 PS 매칭이 인기 있는 이유는 절차의 직관성 — “비슷한 환자끼리 비교한다” 는 설명이 비통계 청중에게 즉시 이해됨. 단점은 ill-characterized 모집단 — Hernan 의 비판은 “PS 0.67” 이 도메인 의미가 없는 추상적 기준이라는 점.

직관 — 자동 positivity 의 양면성: PS 가 너무 0 또는 1 에 가까운 사람을 매칭에서 제외하면 overlap 영역만 분석 — 자동 positivity 보장. 그러나 그 영역의 정의가 PS 함수에 의존하므로 추정 대상이 변동된다 — 다른 PS 모형으로 다른 매칭 결과.

4.5 5. Propensity vs Structural Model (15.5)

모형 모수의 의미 활용
Propensity nuisance — 인과 의미 X IPW, matching, stratification
Structural 인과 효과의 직접 표현 MSM, SNMM
Outcome nuisance + 인과 효과 혼재 표준화, faux MSM

직관 — Nuisance 와 인과 모수의 분리: Propensity 모형의 logistic 계수는 “처치 결정 메커니즘” 의 모형 — 인과 의미 없음. Structural 모형의 계수는 “잠재 결과의 차이” — 인과 의미 직접. 모수의 인과적 지위가 도구의 본질을 결정.

5 Predictive vs Causal — 흔한 혼동

“PS 가 처치를 잘 예측해야 한다” 는 오해

PS 모형의 목적은 교환가능성 보장 — 처치 예측 정확도가 아님. 변수 선택을 예측 정확도로 하면 다음 위험:

  1. 강한 처치 예측자 추가 → propensity 가 0 또는 1 에 가까워짐 → variance 폭발.
  2. 충돌자(collider) 포함 → 새 편향.
  3. 매개자(mediator) 포함 → 효과 일부 차단.

PS 모형에 들어가야 할 변수는 교란자, 처치 예측에 도움 안 되어도 포함. 처치 예측에 도움 되어도 교란자가 아니면 제외.

직관 — “예측 잘 하는 PS 모형 = 좋은 PS 모형” 이 거짓인 이유: 모든 처치를 완벽 예측하면 모든 PS 가 0 또는 1 → overlap 0 → 분석 불가능. 변수 선택은 통계가 아닌 인과 그래프 (DAG) 의 영역.

직관 — 머신러닝 적용의 위험: random forest, lasso 등을 PS 추정에 직접 적용하면 예측 정확도는 높지만 인과 분석에는 부적합. Ch.18 의 doubly robust ML 은 이 위험을 통제하는 정교한 절차.

6 도구 선택의 의사결정 트리

처치가 단일 시점인가?
├─ 예 → outcome regression / PS / IPW 모두 가능
│   ├─ 결과 모형 자신 → outcome regression
│   ├─ 처치 모형 자신 → IPW
│   ├─ 절차의 직관성 → PS 매칭
│   └─ 강건성 우선 → doubly robust
└─ 아니오 (시간변동) → g-method 만 가능
    ├─ Outcome 직접 → g-formula
    ├─ Treatment 직접 → IPW MSM
    └─ Robustness → g-estimation

직관 — 시간변동에서 PS 가 무너지는 이유: PS 의 balancing 성질은 시간변동 처치-교란 피드백 에서 깨진다. \(\pi(L_t)\) 가 매 시점 다른데 같은 사람을 매칭으로 추적하기 어려움. g-formula 와 g-estimation 은 시간변동 본질에 맞게 설계됨.

7 응용 분야

  • 임상 코호트 분석: PS 매칭이 표준 도구
  • 정책 평가: PS 표준화로 ATT 추정
  • Marketing: PS 가중으로 캠페인 효과
  • 의약품 안전성: 관찰 데이터의 비교 효과 연구
  • A/B 테스트의 보정: 무작위성 깨졌을 때 PS

8 후속 글로 이어지는 다리

다루는 내용
14-1 15.1 + 15.2 — Outcome regression + PS 정의
14-2 15.3 + 15.4 — PS 층화·표준화·매칭
14-3 15.5 — propensity·structural·predictive 모형 비교

9 코드 미리보기

import pandas as pd
import statsmodels.api as sm
import statsmodels.formula.api as smf

nhefs = pd.read_csv("nhefs.csv").dropna(subset=["wt82_71"]).reset_index(drop=True)

# 1. Outcome regression
out_formula = (
    "wt82_71 ~ qsmk + sex + race + C(education) + age + I(age**2) "
    "+ smokeintensity + I(smokeintensity**2) + smokeyrs + I(smokeyrs**2) "
    "+ C(exercise) + C(active) + wt71 + I(wt71**2)"
)
out_model = smf.ols(out_formula, data=nhefs).fit()
print("Outcome regression ATE:", out_model.params["qsmk"])   # ~3.5

# 2. PS 추정
ps_formula = out_formula.replace("wt82_71 ~ qsmk + ", "qsmk ~ ")
ps_model = smf.logit(ps_formula, data=nhefs).fit(disp=False)
nhefs["ps"] = ps_model.predict()

# 3. PS 회귀 (1 차원으로 PS 사용)
nhefs_with_ps = nhefs.copy()
ps_reg = smf.ols("wt82_71 ~ qsmk + ps + I(ps**2)", data=nhefs_with_ps).fit()
print("PS regression ATE:", ps_reg.params["qsmk"])   # ~3.6

# 4. PS 층화
nhefs["ps_decile"] = pd.qcut(nhefs["ps"], 10, labels=False)
strata_effects = []
for d in range(10):
    sub = nhefs[nhefs["ps_decile"] == d]
    if (sub["qsmk"] == 1).sum() > 0 and (sub["qsmk"] == 0).sum() > 0:
        m = smf.ols("wt82_71 ~ qsmk", data=sub).fit()
        strata_effects.append(m.params["qsmk"])
import numpy as np
print("PS stratification ATE:", np.mean(strata_effects))

10 한 줄 요약

Ch.15 는 가장 흔한 두 도구 — outcome regression + PS — 를 다룬다. PS 의 balancing 성질은 9 차원 \(L\) 을 1 차원 PS 로 축소. 4 가지 활용 (가중·층화·매칭·회귀) 모두 같은 인과량을 향함. NHEFS 에서 5 도구 모두 3.4~3.6kg — robust 일치. 그러나 시간변동 처치에서는 g-method 만이 일반적으로 작동 — Ch.15 의 도구는 단일 시점의 표준이지만 일반 도구는 아님.

11 관련 주제

선행 지식

후속 주제

다른 카테고리 연결

Subscribe

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