인과추론(Causal Inference) – Backdoor Criterion
4 min read

인과추론(Causal Inference) – Backdoor Criterion

왜 필요한가?

  • Unmeasured Parents, 즉 Graph에서 Parent로 표시되더라도 측정이 안되거나, 관측이 안된 Parent가 있을 것이라고 할 때 대체가능한 조정가능 데이터셋( Alternative Set of variables to adjust for)가 필요하다.
  • Graph의 구조가 어떤 형태일 때 주어진 데이터만으로 인과관계를 판단할 수 있는지, 그 기준이 필요한데 그 중의 하나가 Backdoor criterion이다.

Backdoor Criterion

  • 원서 정의는 다음과 같다.
  • Given an ordered pair of variables (X, Y) in a directed acyclic graph G, a set of variables Z satisfies the backdoor criterion relative to (X, Y) if no node in Z is a descendant of X, and Z blocks every path between X and Y that contains an arrow into X.
  • 짧게 정리하면 다음과 같다.
  • DAG G에서 X → Y 가 주어졌을 때 다음과 같은 조건을 만족할 때 Z는 Backdoor Criterion을 만족한다
  • Z에 있는 어떤 노드도 X의 자손이 아니다.
  • Z는 X와 Y 사이의 모든 경로(X로 향하는 경로 포함)를 막는다.
  • Logic은 다음과 같다
  • X → Y 사이 모든 Spurious Path 차단
  • X → Y로 가는 All directed path는 살린다
  • 새로운 Spurious Path는 만들지 않는다
  • Backdoor path가 존재하지 않는다는 걸 확인한다면 [latex] P(y|x) = P(y|do(x))[/latex] 이다.

예시

예제 1

  • X: 약물, Y: 회복, W: 회복에 영향을 미치는 체중, Z: 사회적경제상태라고 가정
  • 사회경제적 상태는 체중과 치료 선택에 모두 영향을 미치나 측정이 되지 않은 상황
  • W는 X의 자손이 아니고 X ← Z → W → Y 을 차단하기 때문에 Backdoor Criterion을 만족하며 .
  • 따라서 (Z를 모르더라도) W를 조정함으로써 X→ Y 인과효과를 파악할 수 있으며 공식은 다음과 같다.
  • [latex] P(Y=y| do(X=x)) = \sum\limits_wP(Y=y|X=x,W=w)P(W=w) [/latex]

예제 2


– X → Y 인과경로상에 Backdoor가 없기 떄문에 인과효과를 계산하기 위한 공식에는 별도의 조정이 필요없다
– [latex] P(y|do(x)) = P(Y|x) [/latex]

  • 만약 W를 조정한다면 X → 인과효과를 정확하게 얻을 수 있을까?
  • W는 Collider Node로 조건부로 하면 X→W←Z←T→Y 경로가 열릴 수 있으나, X에서 Y로 들어가는 인과경로의 외부에 있기 떄문에 Spurious Path이다.
  • 따라서 W를 조건부로(필터링)하고 X→Y 인과효과를 계산할 경우 잘못된 효과를 계산할 수 있다.
  • W값이 그런데 특정 값으로 주어졌을 때는 그러면 어떻게 계산해야할까?
  • 다른 변수를 이용해서 경로를 차단한다. 예를 들어 T를 조건부로 한다. 그러면 다음과 같은 식을 얻게 된다.
  • [latex] P(Y=y|do(X=x),W=w) = \sum\limits_tP(Y=y|X=x,W=w,T=t)P(T=t|X=x,W=w) [/latex]
  • 이러한 경우는 W 값에 따라 X → Y 인과효과가 어떻게 변하는지 그 정도를 계산할 때 필요하다.

특이 케이스

  • Collider 조정을 피할 수 없는 경우가 있다.
  • X → Y로 가는 Backdoor Path가 총 4개 있는데 모두 Z를 거쳐 Y로 간다.
  • Z는 Collider Case로 Z를 조건부로 하면 이 경로의 차단이 해제되어 Backdoor Criterion을 위반한다.
  • 모든 Backdoor Path를 차단하려면 {E,Z}, {A,Z}, {E,Z,A} 집합중 하나를 조건부로 해야 한다.

References