1 인과관계 사다리 1

Judea Pearl 교수는 인과관계(Causation) 사다리를 통해 관찰하는 것(Seeing)은 Assocation으로 가장 낮은 단계로 정의했고, 그 상위단계로 실험/행동(doing) 단계로 Intervention을 중간단계, 그리고 마지막으로 상상(Imagining)하는 것으로 Counterfactuals, 즉 “조건법적 서술”을 최상위단계로 정의하였다.

인과 사다리

인과 사다리

2 현실세계와 인과관계

현재시점(2020년) 가장 큰 이슈는 거대 담론으로 코로나-19로 인한 사회적 거리두기와 포스트 코로나 경제체계에 관심이 많다. 가장 가까이는 기본재난소득에 대한 검증되지 않은 효과와 경제살리기에 대한 인과관계가 커다란 관심사다. 이를 다음과 같이 도식화 시키게 되면, 동전던지기는 어떻게 보면 기본재난소득이라는 실험으로 볼 수 있고 이것이 확률변수를 통해 수학적 토대를 갖게 되고 디지털화(digitization)되어 인과관계를 추론할 수 있는 다수 방법론으로 이어지고 결론에 이르게 된다.

현실세계에서 인과관계 추론

현실세계에서 인과관계 추론

3 실험과 관찰 2

김재광 교수님께서 실험 데이터와 관찰 데이터에 대한 차이를 페이스북 담벼락에 사례와 함께 잘 정리해 주셨습니다.

실험 데이터와 관찰 데이터를 구분하는 것은 통계학에서는 가장 기본적인 내용입니다. 실험은 분석보다는 설계가 어렵고 관찰은 분석이 어렵습니다. 관찰에서 분석이 어려운 이유는 중첩요인(confounding factor)이 존재하기 때문입니다. (예를 들어 커피를 마시는 사람들이 암발병률이 높은데 이는 커피 때문이 아니라 커피를 마시는 사람들이 담배를 피우는 경향이 높기 때문입니다. 따라서 담배 피는지 여부를 포함해서 분석해야 올바른 결론이 나옵니다.) 즉, 중첩요인(Confounding factor)을 모형에 포함시켜서 보정해주어야 인과관계에 대해 보다 정확한 결론을 얻을수 있는데, 문제는 현실적으로 중첩요인을 모두 관측하지 못한다는 것입니다. 따라서, 중요한 중첩요인을 빼놓고 분석을 하면 잘못된 결론을 얻습니다. 그래서 과학은 진리라기 보다는 해석에 가깝다고 이야기 할수 있을 것입니다. 데이터를 바탕으로하고 주관을 최대한 배제한 해석인 것입니다.

  1. 의학적 지식은 종종 업데이트 된다. 술이 몸에 나쁘다고 했다가 한두잔은 괜찮다고 했다가 또 그것 틀렸다고 했다가 자꾸 바뀐다. 또 물도 많이 먹는게 좋다고 했다가 아니라고 했다가 자꾸 헷갈리게 한다. 왜 그럴까?
  2. 두가지 이유를 생각해 볼수 있는데 하나는 관찰연구의 한계이다. 인간을 대상으로는 통제된 실험을 하기 어렵다. (인권 문제 등등 때문에.) 따라서 많은 결론들이 실험이 아닌 관찰 연구 (observational study)를 통해서 얻어지기 때문에 관찰 연구의 한계가 적용된다. 관찰 연구로는 원칙적으로 인과 관계를 규명하는 것이 불가능하다. (그때문에 논문이 자꾸 나올수 있는지도 모르겠다.)
  3. 다른 또 하나의 이유는 인간의 생물학적 다양성 때문이다. 인간으로부터 얻어지는 자료는 물리적 자료와는 근본적인 차이가 있는데 그건 같은 인간 종족 내에서도 엄청난 다양성이 있다는 것이다. 기계에서 얻어지는 물리적 자료는 기본적으로 동질적이다. (이는 물리학이나 공대에서 통계학을 우습게 보는것과도 연결되어 있다. physical 한 물질을 대상으로 하는 자료는 샘플링이 필요없다. 자료가 어차피 동질적이므로. ) 하지만 생물학 자료는 그렇지 않다. 똑같은 부모 밑에서도 엄청 다른 자녀가 탄생한다.
  4. 따라서 인간을 대상으로 관찰을 하고 이를 통해 일반화를 하는 모든 지식은 어느 정도 한계가 있다는 것을 감안해서 받아 들어야한다. 측정기술이 발달하면 예전에 맞는 것으로 믿어졌던 이론이 틀린 것으로 밝혀진다. 절대적인 지식이 아니라는 것이다. 뇌과학 이런것도 마찬가지.

4 실험의 핵심 구성요소

실험(Experiment)의 3대 구성요소에는 임의화(Randomization), 반복(Replication), 블록화(Blocking)가 있다.

  • 임의화(Randomization): 처리집단에 걸친 외부 효과를 차단하기 위해서 관심을 갖는 결과값의 변동성을 동일하게 배분한다.
    • 이중 맹검 의학실험 (double blind trial)
    • 신약 개발에서 환자나 의사나 어느 집단에 배정되는지 알지 못하게 함.
    • 제3자가 배정되는 그룹을 지정
  • 반복(Replication): 변동성을 충분히 잴 수 있도록 실험을 반복해야 함.
    • 환자 1명에게 신약효과를 추정하는 실험을 하다면, 해당 신약에 대한 일반화를 할 수 있는 방법은 없음.
  • 블록화(Blocking): 처리집단을 유사하게 함으로써 변동성을 제어하는데 도움이 됨.
    • 그룹내에는 차이가 적어야 하고, 그룹간에는 차이가 커야한다.
    • 성별이나 연령대를 기준으로 블록

5 검정력과 표본 크기 3

검정력과 효과크기, 표본크기는 실험 계량화를 위해 필수적으로 동원되는 기초개념이다.

  • 검정력(power): 대립가설이 사실일 때 귀무가설을 올바르게 기각할 확률
  • 효과크기(effect size): 탐지하고자 하는 차이에 대한 표준측도.
  • 표본크기: 지정한 검정력으로 지정한 차이를 탐지하고자 할 때 필요한 실험횟수.

이를 위해서 pwr 팩키지를 사용한다. 사용법이 다른 팩키지와 다른데 일반적으로 pwr 팩키지를 통해서 검정력, 효과크기, 표본크기를 계산하고자 다음 다양한 검정 함수에 매개변수로 해당 매개변수를 빼고 넘기게 된다. 예를 들어, 검정력(power)을 계산하고자 하면 power 매개변수를 빼고 나머지 매개변수를 채워 넣으면 겸정력이 계산되어 나온다. 산출하고자 검정력, 효과크기, 표본크기를 고르고 나서 수행하고자 하는 검정에 대한 함수를 선정하는 과정을 거친다.

  • pwr.p.test: 일표본 비율검정(one-sample proportion test)
  • pwr.2p.test: 이표본 비율검정(two-sample proportion test)
  • pwr.2p2n.test: (표본크기 다른) 이표본 비율검정(two-sample proportion test (unequal sample sizes))
  • pwr.t.test: t-검정(two-sample, one-sample and paired t-tests)
  • pwr.t2n.test: (표보크기 다른 t-검정(two-sample t-tests (unequal sample sizes))
  • pwr.anova.test: 일원배치 분산분석(one-way balanced ANOVA)
  • pwr.r.test: 상관검정(correlation test)
  • pwr.chisq.test: 카이검정(chi-squared test (goodness of fit and association))
  • pwr.f2.test: 일반화 선형모형 검정(test for the general linear model)

각 검증별 일반적인 효과크기 산출표

Test small medium large
tests for proportions (p) 0.2 0.5 0.8
tests for means (t) 0.2 0.5 0.8
chi-square tests (chisq) 0.1 0.3 0.5
correlation test (r) 0.1 0.3 0.5
anova (anov) 0.1 0.25 0.4
general linear model (f2) 0.02 0.15 0.35

5.1 동전 던지기 비율검정

공정한 동전이라면 앞면이 나올 확률이 0.5 즉, \(p=0.5\)가 된다. 그런데 대립가설로 0.75가 나오는 동전을 검정력 0.8로 잡고 귀무가설을 기각하는데 동전을 얼마나 던져야 할까? 일표본 비율검정 pwr.p.test() 함수로 잡고, 귀무가설과 대립가설을 각각 설정하고 \(\alpha=0.05\), 검정력 power = 0.8, 대립가설은 alternative = "greater"으로 지정하면 빠진 표본크기가 산출된다. plot 함수를 통해 표본크기와 검정력에 대한 시각화도 가능하다.


     proportion power calculation for binomial distribution (arcsine transformation) 

              h = 0.5235988
              n = 22.55126
      sig.level = 0.05
          power = 0.8
    alternative = greater