Tae Hyun Kim (Lowell)

Positivity (Overlap)

3분 읽기 #causal-inference#potential-outcomes

정의

Positivity(중첩, overlap)는 모든 공변량(covariate) 값에서 각 처치(treatment)를 받을 확률이 0과 1 사이에 있어야 한다는 가정이다.

0<P(W=wX=x)<1,w{0,1},xX0 < P(W=w \mid X=x) < 1, \quad \forall w \in \{0, 1\}, \, \forall x \in \mathcal{X}

이진 처치(binary treatment)에서는 다음과 같이 쓴다.

0<e(x)<1,where e(x)=P(W=1X=x)0 < e(x) < 1, \quad \text{where } e(x) = P(W=1 \mid X=x)

직관적 이해

핵심 아이디어

“모든 특성(feature) 조합에서 처치군과 대조군이 모두 관측된다”

  • 어떤 XX 값에서도 처치 결과와 대조 결과를 모두 추정할 수 있다.
  • 외삽(extrapolation) 없이 인과 효과를 추정한다.

공통 지지영역(Common Support)

처치군과 대조군의 공변량 분포가 서로 겹치는(overlap) 영역을 가리킨다.

       대조군 분포        처치군 분포
           ___               ___
          /   \             /   \
         /     \           /     \
        /       \         /       \
    ___/    overlap region   \___
        <=================>
              Common Support

Positivity 위반

1. 결정론적 처치(deterministic treatment)

특정 XX 값에서 처치가 결정적으로 정해지는 경우다.

예시:

  • 나이 > 65세는 항상 프로그램 A만 제공한다.
  • 특정 지역에서는 신제품을 출시하지 않는다.
  • 금기 사항이 있는 환자에게는 해당 약물을 처방할 수 없다.

2. 실질적 Positivity 위반(practical violation)

이론적으로는 가능하지만 데이터에서 관측되지 않는 경우다.

  • 표본 크기가 작다.
  • 공변량 조합이 희귀하다.

성향점수(propensity score) 관점

e(x)0ore(x)1e(x) \approx 0 \quad \text{or} \quad e(x) \approx 1

성향점수가 극단적이면 Positivity 위반의 신호다.


위반의 영향

1. IPW 불안정

역성향 가중(IPW)의 가중치는 다음과 같다.

Weight=1e(x)or11e(x)\text{Weight} = \frac{1}{e(x)} \quad \text{or} \quad \frac{1}{1-e(x)}

e(x)0e(x) \to 0 또는 e(x)1e(x) \to 1이면 가중치가 폭발한다.

2. 추정 불가능

e(x)=0e(x) = 0인 영역에서는 처치군이 없으므로 E[Y(1)X=x]E[Y(1) \mid X=x]를 추정할 수 없다.

e(x)=1e(x) = 1인 영역에서는 대조군이 없으므로 E[Y(0)X=x]E[Y(0) \mid X=x]를 추정할 수 없다.

3. 높은 분산

중첩이 약할수록 추정량(estimator)의 분산(variance)이 커진다.


진단 방법

1. 성향점수 히스토그램

# 처치/대조군의 PS 분포 비교
import matplotlib.pyplot as plt

plt.hist(ps[W==1], alpha=0.5, label='Treated')
plt.hist(ps[W==0], alpha=0.5, label='Control')
plt.legend()

좋은 중첩: 두 분포가 크게 겹친다. 나쁜 중첩: 두 분포가 분리되어 있다.

2. 극단적 PS 비율

extreme_ps = (ps < 0.01) | (ps > 0.99)
print(f"Extreme PS: {extreme_ps.mean()*100:.1f}%")

3. 공통 지지영역 확인

처치군 PS 범위와 대조군 PS 범위의 교집합을 확인한다.


해결 방법

1. 절삭(Trimming)

성향점수가 극단적인 표본을 제거한다.

{i:α<e(xi)<1α}\{i : \alpha < e(x_i) < 1-\alpha\}

일반적으로 α=0.01\alpha = 0.01 또는 0.050.05를 쓴다.

자세한 내용은 절삭을 참고하라.

장점: 추정이 안정적이다. 단점: 추정 대상이 바뀐다(전체 ATE → 조건부 ATE).

2. 중첩 가중(Overlap Weighting)

극단적 PS 영역에 작은 가중치를 부여한다.

h(x)=e(x)(1e(x))h(x) = e(x)(1-e(x))

자세한 내용은 중첩 가중을 참고하라.

3. 경계 추정(Bounds Estimation)

Positivity 위반 영역에서 효과의 경계(bounds)를 제시한다.

τlbATEτub\tau_{lb} \leq \text{ATE} \leq \tau_{ub}

부분 식별(partial identification) 접근이다.

4. 외삽(Extrapolation, 주의 필요)

모델에 기반해 외삽하는 방법이다.

  • 모델 가정에 강하게 의존한다.
  • 민감도 분석(sensitivity analysis)이 반드시 필요하다.

관련 개념

  • Causal Assumptions Overview - 3대 가정 통합 정리
  • Strong Ignorability - 무시가능성과 Positivity의 결합
  • Propensity Score - e(x)=P(W=1X=x)e(x) = P(W=1 \mid X=x)
  • IPW - Positivity에 민감한 방법
  • Trimming - Positivity 위반 대응
  • Overlap Weighting - 강건한 가중 방법

참고 논문

  • Rosenbaum, P. R., & Rubin, D. B. (1983). The central role of the propensity score
  • yaoSurveyCausalInference2021 - Section 2.3
  • Crump, R. K., et al. (2009). Dealing with limited overlap in estimation of average treatment effects

연결 그래프