인과추론(Causal Inference)

불연속회귀설계(RDD)

호재 P.B 2021. 10. 4. 16:22

 

본 포스팅은 불연속회귀설계에 관해 정리한 내용입니다 :)

 

 

불연속 회귀 설계는 언제 사용하나요

불연속 회귀 설계(RDD; Regression Discontinuity Design)는 인과 추론 방법 중 하나입니다. 

해당 방법은 처치(treatment)가 특정 제약 조건이나 자격 하에 정해지는 경우에 사용합니다.

처치가 랜덤하게 배정되지 않기 때문에 실험군, 대조군 간 처치를 제외한 다른 특성이 동일하지 않은 경우입니다. 

 

어떤 케이스에 회귀 불연속 설계를 사용하면 좋은지 2가지 사례를 통해 살펴보겠습니다

 

사례1(법적 최소 음주연령)

그 예로 음주가 사망에 영향을 미치는 인과 관계를 확인하기 위해 캐나다에서 시행한 MLDA(법적최소음주연령) 제도에 초점을 맞춰 분석한 사례가 있습니다.

MLDA는 음주를 허용하는 최소 연령을 21세로 규제한 제도인데 이로 인해 분석에서 처치인 음주 여부가 연령에 의해 정해집니다

처치(음주)는 다른 요인인 연령을 기준으로 정해지므로 아래와 같이 실험군(treated group), 대조군(control group)이 나뉩니다

  • 실험군 : 음주가 가능한 만 21세 이상 
  • 대조군 : 음주가 불가능한 만 21세 미만

여기서 처치 여부를 결정하는 변수를 "배정 변수"라고 하며, 처치 여부가 결정되는 배정 변수의 값을 "임계값"이라고 합니다

  • 배정 변수 : 연령, 임계값 : 21세
  • 배정 변수 : 시험 점수, 임계값 : s

즉, 연령이라는 특정 제약에 의해 처치가 정해지므로 이 두 그룹의 사망 여부를 단순 비교하는 경우 연령에 의한 영향이 포함되어 명확한 인과 효과 추정이 어렵습니다.

 

사례2(대학 진학 여부가 소득에 미치는 영향)

또 다른 사례로 "좋은 대학에 들어가는 것이 향후 소득에 영향을 미치는지" 인과 관계를 분석하는 것을 생각해볼 수 있습니다.

본 케이스도 마찬가지로 대학에 들어가는지 여부(처치)가 시험 점수에 의해 정해지기 때문에 특정 제약 조건 하에 처치가 정해지는 케이스입니다. 애초에 두 그룹 간의 특성이 다른 상태인 것이지요

  • 실험군 : 시험 점수(s)를 넘겨 해당 대학에 진학한 학생
  • 대조군 : 시험 점수(s)를 넘기지 못해 해당 대학에 진학하지 못한 학생

이러한 경우도 회귀 불연속 설계를 사용하여 인과 효과를 추정해볼 수 있습니다

 


회귀불연속설계의 계산

회귀 불연속 설계에서 중요한 가정은 처치가 오로지 배정 변수에 의해 결정된다는 것입니다.

때문에 이 가정 하에서는 아래의 논리를 주장할 수 있습니다

  • 배정 변수에 의해 처치가 결정되지 않았다면 결과 변수는 배정 변수 임계값 근방에서 단절이 일어나지 않고 연속적일 것이다(contuous assumption)
  • 즉, 처치를 받은 그룹의 처치를 받지 않았을 때의 결과(반사실)를 처치를 받지 않은 부분의 연결선으로 간주할 수 있다는 것입니다.

x축 : 배정변수, y축 : 결과 변수

출처 : https://mixtape.scunning.com/regression-discontinuity.html

 

위의 그림처럼 y축(소득; 결과 변수)의 점프 존재하고,

이것이 배정 변수(x축; 시험 점수) 임계값(50점) 근방에서 처치의(대학 진학) 변화에 의해 발생한 것이라면 회귀불연속설계를 사용하여 인과 효과를 모델링할 수 있습니다.

(참고로 위의 그림과 같이 배정변수의 임계값을 기준으로 결과 변수의 단절이 일어나기 때문에 회귀단절모형이라는 용어를 사용합니다)

 

# 배정변수 특성에 따른 RD의 종류

회귀불연속설계는 배정 변수에 따라 처치 여부가 어떻게 정해지는지에 따라 두 가지로 나뉩니다.

  • Sharp RD : 배정 변수의 임계값 전후로 처치 여부가 명확히 정해지는 경우
  • Fuzzy RD : 배정 변수의 임계값 전후로 처치 여부가 정해질 확률이 변하는 경우

Sharp RD(점선), Fuzzy RD(실선)

Sharp RD의 처치($D_i$)는 아래와 같이 정해집니다.

($D_i$ : 처치 여부, $X_i$ 배정 변수, $c_0$ : 임계값)

  • 1 ($X_i \geq c_0$)
  • 0 ($X_i < c_0$)

배정 변수가 결과 변수에 미치는 영향, 처치에 의한 결과 변수의 점프(인과 효과)를 반영하기 위해 회귀 식은 다음과 같이 구성됩니다.

  • $Y_i  = \alpha + \rho D_i + \gamma (X_i - c_0)+ \epsilon_i$

각 회귀 계수의 의미는 아래와 같습니다

  • $\alpha$ : 상수항
  • $\rho$ : 처치에 의한 인과 효과
  • $\gamma$ : 배정 변수가 결과 변수에 미치는 영향

 

# 추정 방법에 따른 RD 종류

배정 변수와 결과 변수의 plot을 그려보았을 때, 임계값 근방에서 jump가 일어나는 것인지 판단하기 애매한 경우가 있습니다

예를 들면 배정 변수와 결과 변수 간 비선형 관계가 존재하는 경우 입니다. 배정 변수의 임계값 근방에서 처치에 따른 단절이 일어나는 것인지, 아니면 단순히 비선형 관계인 것인지 판단하기가 쉽지 않습니다.

 

이러한 경우 두 가지 방법을 사용할 수 있습니다.

  • 모수적 RD : 비선형 항을 추가하여 모델링하는 방법
  • 비모수적 RD : 임계값 근방의 샘플만 활용하여 인과 효과를 추정하는 방법

모수적 RD

비선형 관계가 존재한다고 판단하는 경우 배정 변수의 고차항을 추가하여 모델링 할 수 있습니다

  • $Y_i  = \alpha + \rho D_i + \gamma_1 (X_i - c_0) + \gamma_2 (X_i - c_0)^2 + \epsilon_i$

또한, 배정 변수가 결과 변수에 미치는 영향이 임계값 전후로 다른 경우 다음과 같이 교차항(interaction term)을 추가하여 모델링할 수 있습니다.

  • $Y_i  = \alpha + \rho D_i + \gamma (X_i - c_0) + \delta [(X_i - c_0) D_i] + \epsilon_i$

하지만 모수적 RD의 경우 배정 변수의 임계값과 멀어지는 경우 추정한 인과 효과에 대한 편의(bias)가 발생할 수 있습니다.

  • $E[Y_i | D = 0] = \alpha +   \gamma (X_i - c_0)$
  • $E[Y_i | D = 1] = \alpha + \rho + \delta (X_i - c_0) +  \gamma (X_i - c_0)$
  • 인과 효과 : $E[Y_i | D = 1] - E[Y_i | D = 0] = \rho + \delta (X_i - c_0)$
    • 배정 변수가($X_i$) 임계값($c_0$)과 멀어질수록 $\delta (X_i - c_0)$만큼의 편의(bias)가 발생

 

비모수적 RD

인과 효과($\rho$)를 규명하는 것이 목표라면 임계값 근방의 샘플만을 활용하여 인과 효과를 추정할 수 있습니다.

처치는 배정 변수에 의해서만 정해진다는 가정 하에 임계값($c_0$) 근방에서 외부 요인은 랜덤하게 분포할 것이기 때문에 배정 변수가 임계값 근방의 값을 가진 샘플들의 특성은 유사할 것이라는 것입니다. 

 

임계값 근방에 대역폭(bandwidth)를 설정하여 해당 대역폭 내부의 샘플만을 고려하여 인과 효과를 추정합니다.

이 경우 국소 부위의 샘플을 활용하여 인과 효과를 추정하기 때문에 LATE(Local Average Treatment Effect)라는 용어를 사용합니다.

bandwidth를 활용한 비모수적 RD

예시 그림에서는 배정 변수의 임계값($c_0 = 2$)을 기준으로 좌우 0.5의 대역폭(bandwidth)를 설정하여 인과 효과를 추정하는 것입니다.

 

objective function(목적 함수)에 각 샘플에 weight를 부여하여 회귀 계수를 계산하게 됩니다.

  • $argmin_{\alpha, \rho, \gamma} [Y_i - (\alpha + \rho D_i + \gamma (X_i - c_0))]^2 K(X_i, c_0, h)$

weight를 부여하는 함수를 커널 함수(kernel function)이라고 하며 대표적으로 triangular kernel function을 사용합니다.

triangular kernel

  • triangular kernel function은 임계값 근방 대역폭(좌우 각각 $h$)에 대해 임계값에 가까울수록 1, 멀수록 0이 되도록 weight를 주며 대역폭을 벗어난 샘플에는 모두 가중치를 0으로 부여하는 커널 함수
  • $K(X_i, c_0, h) = \large{(1 - \frac{|X_i - c_0|}{h})} \normalsize{1({|X_i - c_0| \leq h})}$

해당 커널을 objective function에 반영하여 회귀 계수 추정 시, 1) 대역폭 내부 샘플만을 고려하며 2) 임계값에 가까울수록 모델에 더 많이 반영(weight가 높음) 한다는 의미입니다.

 


마치며

회귀불연속설계를 사용하는 이유와 그 중 Sharp RD의 모수적, 비모수적 RD에 대해 알아보았습니다.

부족한 부분은 피드백 주시면 감사하겠습니다 :)

부족한 글 읽어주셔서 감사합니다

 

 

글이 도움이 되셨다면 아래 클릭 한번 부탁드립니다 :)

반응형