Tae Hyun Kim (Lowell)

IPW (Inverse Propensity Weighting)

4분 읽기 #causal-inference#reweighting#ipw

정의

IPW는 성향점수(propensity score)의 역수를 가중치로 써서 처치효과(treatment effect)를 추정하는 방법이다.

ATE^IPW=1ni=1n[WiYie(Xi)(1Wi)Yi1e(Xi)]\hat{\text{ATE}}_{IPW} = \frac{1}{n}\sum_{i=1}^{n} \left[\frac{W_i Y_i}{e(X_i)} - \frac{(1-W_i) Y_i}{1-e(X_i)}\right]

여기서 e(X)=P(W=1X)e(X) = P(W=1 \mid X)성향점수다.


직관적 이해

왜 역수로 가중하나

핵심은 “과소 대표된 표본에 더 큰 가중치를 준다”는 것이다.

상황처치 확률가중치의미
처치 희소e(X)=0.1e(X) = 0.11/0.1=101/0.1 = 10이 사람은 10명을 대표
처치 흔함e(X)=0.9e(X) = 0.91/0.91.11/0.9 ≈ 1.1거의 1:1 대표

재표본 관점

IPW는 다음과 동치다.

  • 각 표본을 가중치만큼 “복제”한다.
  • 가상의 무작위 대조 실험(pseudo-RCT)을 만든다.

수학적 유도

ATE 식별

강한 무시가능성(strong ignorability)이 성립할 때 다음이 성립한다.

E[Y(w)]=E[1(W=w)YP(W=wX)]E[Y(w)] = E\left[\frac{\mathbb{1}(W=w) \cdot Y}{P(W=w \mid X)}\right]

따라서 평균 처치효과(ATE)는 다음과 같다.

ATE=E[WYe(X)]E[(1W)Y1e(X)]\text{ATE} = E\left[\frac{WY}{e(X)}\right] - E\left[\frac{(1-W)Y}{1-e(X)}\right]

표본 추정량

ATE^IPW=1ni[WiYie(Xi)(1Wi)Yi1e(Xi)]\hat{\text{ATE}}_{IPW} = \frac{1}{n}\sum_i \left[\frac{W_i Y_i}{e(X_i)} - \frac{(1-W_i) Y_i}{1-e(X_i)}\right]

정규화 버전

성향점수를 추정해 쓸 때 더 안정적인 형태다.

ATE^IPWnorm=iWiYie(Xi)iWie(Xi)i(1Wi)Yi1e(Xi)i(1Wi)1e(Xi)\hat{\text{ATE}}_{IPW}^{norm} = \frac{\sum_i \frac{W_i Y_i}{e(X_i)}}{\sum_i \frac{W_i}{e(X_i)}} - \frac{\sum_i \frac{(1-W_i) Y_i}{1-e(X_i)}}{\sum_i \frac{(1-W_i)}{1-e(X_i)}}

이렇게 하면 편향(bias)과 분산(variance)이 모두 줄어든다.


ATT를 위한 IPW

ATT^IPW=iWiYiiWii(1Wi)e(Xi)1e(Xi)Yii(1Wi)e(Xi)1e(Xi)\hat{\text{ATT}}_{IPW} = \frac{\sum_i W_i Y_i}{\sum_i W_i} - \frac{\sum_i (1-W_i) \frac{e(X_i)}{1-e(X_i)} Y_i}{\sum_i (1-W_i) \frac{e(X_i)}{1-e(X_i)}}

자세한 내용은 ATT를 참조하라.


장단점

장점

장점설명
간단직관적이고 구현이 쉽다
비모수적outcome 모델 가정이 필요 없다
이론적 정당화조건부 일치성(consistency)을 보장한다
유연성다양한 estimand에 적용할 수 있다

단점

단점설명
성향점수 추정 의존성향점수를 잘못 특정하면 편향이 생긴다
극단적 성향점수에 민감e(X)0e(X) \approx 0 또는 11에서 불안정하다
높은 분산특히 overlap이 약하면 분산이 크다
고차원에 취약성향점수 추정 자체가 어렵다

극단적 성향점수 문제

문제

e(X)0e(X) \to 0 또는 e(X)1e(X) \to 1일 때 두 가지 문제가 생긴다.

  • 가중치가 폭발한다: 1/e(X)1/e(X) \to \infty.
  • 추정량이 불안정해진다.

해결책

  1. Trimming: 극단적 성향점수를 가진 표본을 제거한다.
  2. Overlap Weighting: 더 안정적인 가중치를 쓴다.
  3. Weight clipping: 가중치에 상한을 둔다.

구현

Python (EconML)

from econml.dr import LinearDRLearner

# IPW는 outcome model 없이
model = LinearDRLearner(model_propensity=LogisticRegression())
model.fit(Y, T, X)
ate = model.effect(X).mean()

R

library(WeightIt)

# Propensity score weights
weights <- weightit(treat ~ x1 + x2, data = df, method = "ps")

# Weighted outcome regression
lm(y ~ treat, data = df, weights = weights$weights)

관련 개념

  • Re-weighting Methods Overview - 재가중 방법 통합 정리
  • Propensity Score - 핵심 도구
  • Doubly Robust Estimator - IPW와 outcome 회귀의 결합
  • CBPS - 균형을 직접 최적화하는 방법
  • Trimming - 극단적 성향점수 처리
  • Overlap Weighting - 안정적 가중치

응용: RTB Win Selection Bias 보정

RTB에서 낙찰된 impression만으로 학습하면 win selection bias가 생긴다. 이를 IPW로 보정한다.

wi=1pwin(xi,bi),pwin=P(winX,bid)w_i = \frac{1}{p_{\text{win}}(x_i, b_i)}, \quad p_{\text{win}} = P(\text{win} \mid X, \text{bid})

win propensity는 Survival Analysis(Kaplan-Meier)나 Gradient Boosting으로 추정한다. 가중치 안정화(clipping, normalization)는 필수다. 자세한 내용은 Multi-Task Learning(IPW-ESCM²)을 참조하라.


참고 논문

  • yaoSurveyCausalInference2021 - Section 3.1.3
  • Rosenbaum, P. R., & Rubin, D. B. (1983). The central role of the propensity score
  • Horvitz, D. G., & Thompson, D. J. (1952). A generalization of sampling without replacement
  • Zhang et al. (2016). Bid-aware Gradient Descent (KDD)

연결 그래프