다중검정문제와 해결법 - 본페로니 교정(Bonferroni correction)

chchch·2021년 4월 9일
5

통계학

목록 보기
1/3

이번 포스팅에서 내용과 예시는 'Bradley Efron' 교수님께서 쓰신 "Large-Scale Inference"와 "Computer Age Statistical Inference: Algorithms, Evidence and Data Science"를 참고했다.

다중검정문제(Multiple Testing Problem)

통계학에서 정말 중요한 부분 중 하나가 바로 검정이다. 학부과정에서 수리통계학 수업을 들으면 검정 파트를 정말 자세하고 큰 비중을 두어서 배우게 되는데 기본적으로 하나의 가설을 가지고 검정하는 단일검정을 다룬다. 예를 들어, 혈압약을 먹은 그룹과 그렇지 않은 그룹의 혈압의 차이가 존재하는가에 대한 검정이다. 이때, 한 가지 변수(혈압)에 대해서만 그룹 간의 차이를 비교하면 된다.


H0: 두 그룹의 평균 혈압은 동일하다  vs  H1: H0가 아니다H_0:~ \text{두 그룹의 평균 혈압은 동일하다} ~~ \text{vs} ~~ H_1: ~ H_0\text{가 아니다}

검정통계량을 구하고 미리 정해둔 유의수준 하에서 검정통계량의 p-value를 통해 귀무가설(H0H_0)를 기각할지 말지에 대해 결정한다.

유의수준(Significance level)

유의수준은 제 1종 오류(type 1 error)와 관련있는 개념이다. 위와 같은 실험을 했을 때, 실제로는 약의 효과가 없어서 두 그룹간의 큰 차이가 존재하지 않는데 우연히 큰 차이가 발생할 수 있다. 이렇게 되면 검정에 의해서 귀무가설을 기각하게 되는데 실제로 참인 귀무가설을 기각하는 오류를 "제 1종 오류"라고 한다. 유의수준은 이러한 제 1종 오류를 범할 확률의 최대허용치로 일반적으로 0.05를 많이 사용한다. 이는 '귀무가설이 참일 때, 5%의 확률로 일어나는 사건은 귀무가설을 반증하는 증거라고 하겠으며 우연히 그렇더라도 어쩔 수 없다'라는 느낌으로 받아들일 수 있다.

"하나의 가설을 검정을 할 시에는 5%의 확률로 일어나는 결과를 관측할 확률은 말 그대로 5%이다"

다중검정

단일검정에서는 유의수준을 정하여 제 1종 오류를 통제(control)할 수 있다. 동시에 여러 검정을 하는 다중검정에 대해서 생각해보자. 생물, 의학통계에서는 microarray와 같은 고차원의 데이터를 많이 다루게 된다. 유명한 예로 전립선암 환자와 그렇지 않은 환자들의 유전적 차이를 확인하고자 한다. 52명의 환자와 50명의 정상인의 6033개의 유전자의 활동성을 측정하고 비교한다. 위의 예시에서는 혈압만 비교했지만 이번 예시에서는 1번 유전자, 2번 유전자, ..., 6033번 유전자의 활동성을 비교하게 된다. 총 6033개의 귀무가설에 대해서 검정한다.

이와 같은 다중검정에서 유의수준을 위와 같은 수준으로 0.050.05로 정한다면 참인 귀무가설은 기각될 확률은 0.05로 동일하다. 하지만 5% 확률의 사건이 일어나는 사건의 기댓값은 6033×0.05=301.656033 \times 0.05 = 301.65, 약 302302개이다.

따라서, 참인 귀무가설임에도 불구하고 약 평균적으로 302302개의 귀무가설은 기각될 수 있다.

"6033개의 검정을 할 시에는 5%의 확률로 일어나는 결과를 관측할 횟수의 기댓값은 301.65번이다 "

그림 출처: Large-Scale Inference, Bradley Efron

위의 그림에서 초록색 히스토그램은 6033개의 유전자 활동성을 두 그룹간 차이를 정규화해서 zz value로 변환된 값을 나타낸 것이다. 이 과정은 간단하지 않으나 쉽게 생각해서 통계학에서 많이 사용되는 표준정규분포를 따르는 정규화된 값이라고 생각하면 된다. 검은선은 표준정규분포의 밀도함수를 나타낸 것이다. 표준정규분포에서 유의수준 0.050.05를 분위수는 양측검정으로 생각했을 시 1.961.96이다. 양쪽으로 1.961.96값을 넘는 ziz_i의 빈도가 상당히 있는 것을 알 수 있다. 따라서, 다중검정에서는 더 엄격한 기준을 가지고 검정한다.


해결법

본페로니 교정(Bonferroni Correction)

위와 같이 다중검정시에는 참인 귀무가설을 기각하는 경우가 자주 발생할 수 있다는 것이다. 이를 해결하고자 "본페로니 교정"을 사용할 수 있다. 아이디어는 단순하다. 유의수준을 총 검정의 수(NN)로 나누어서 개별 검정을 보정한다. 이렇게 되면 개별 가설의 유의수준을 낮추게되고 즉 기각역의 크기를 작아지니 가설을 기각하지 않게 된다. 현재 예시에서 유의수준 0.050.0560336033으로 나누면 8.3×1068.3 \times 10^{-6}이 된다. 이전 유의수준과 비교해서 훨씬 더 보수적인(기각을 하지 않는) 자세를 취하게 된다.

위와 같이 했을시 각 가설들은 제 1종 오류가 α\alpha-수준으로 통제되는 것은 아니게 된다. 사실, 다중검정에서는 제 1종 오류나 검정력 등의 개념을 적용할 수 없다. 두 개념 모두 단일검정하에서 정의되는 개념이다. 하나의 가설에 대해서 맞고 틀리다를 생각해볼 수 있지만 여러개의 가설을 동시에 고려할 때는 맞는것도 존재하고 틀린것도 동시에 존재할 수 있기 때문이다. 따라서, 이와 비슷하게 다중검정방법을 평가할 수 있는 다른 개념이 필요하다. 그렇다면 본페로니 교정은 무엇을 통제하는 걸까? 라는 질문은 가질 수 있다. 본페로니 교정은 "FWER(familiy wise error rate)"를 통제한다. FWER의 정의는 다음과 같다.

FWER=Pr(하나라도 참인 H0를 기각)\text{FWER} = \text{Pr}(\text{하나라도 참인}~ H_0\text{를 기각})

FWER은 하나라도 잘못 기각할 확률을 의미하므로 매우 보수적인 지표이다. 본페로니 교정을 했을 시에 FWER은 상한을 쉽게 구할 수 있다. I0,N0I_0, N_0를 각 실제 참인 귀무가설의 인덱스, 참인 귀무가설의 갯수, pip_iii번째 가설의 p-value, α\alpha를 유의수준이라고 FWER을 구해보자.

FWER=Pr(iI0(piαN))iI0Pr(piαN)=N0αN=N0Nαα\begin{aligned} \text{FWER} &= \text{Pr} ( \bigcup_{i \in I_0} (p_i \leq \frac{\alpha}{N}) ) \leq \sum_{i \in I_0} \text{Pr}(p_i \leq \frac{\alpha}{N}) \\ &= N_0 \frac{\alpha}{N} = \frac{N_0}{N}\alpha \leq \alpha \\ \end{aligned}

따라서, 본페로니 교정은 FWER을 α\alpha - 수준으로 통제하는 것을 알 수 있다. 직관적으로 해석해보면 FWER처럼 실수(여기서 말하는 실수는 참인 귀무가설을 기각하는 사건)를 용납하지 않기 때문에 매우 보수적으로 기각역을 보정하여 기각을 잘 안하게 된다.

본페로니 교정의 문제점

본페로니 교정은 매우 엄격한 기각역을 설정한다. 그렇게 되면 실제로 거짓인 귀무가설도 기각을 잘 하지 않게 되면서 "검정력"을 잃게 된다.

검정력(Power)

검정력은 제 2종 오류(type 2 error)와 관련있는 개념이다. 위와 같이 우연이든 유의수준이 낮아서든 거짓인 귀무가설을 기각하지 않는 것도 오류라고 볼 수 있다. 실제로 거짓인 귀무가설을 기각하지 않는 오류를 "제 2종 오류"라고 한다. 제 2종 오류가 일어날 확률을 β\beta라고 한다면 (1β)(1-\beta)를 검정력이라고 한다. 실제로 거짓인 귀무가설을 기각할 확률이다.

이를 해결하고자 하는 방법들도 제안되었다. 그 중 한가지 예로 "Holm의 절차(Holm's procedure)"가 있으며 다음과 같다.

  • 관측된 p-value들을 크기순서대로 정렬한다.
p(1)p(2)p(i)p(N)p_{(1)} \leq p_{(2)} \leq \cdots \leq p_{(i)} \leq \cdots \leq p_{(N)}
  • i0i_0를 다음을 만족하는 가장 작은 인덱스라고 하자.
p(i)>αNi+1p_{(i)} > \frac{\alpha}{N-i+1}
  • i<i0i < i_0인 모든 귀무가설은 기각한다.

위의 절차에서 p(i0)p_{(i_0)} 값을 확인해보면 i>1i>1인 경우에는 본페로니 교정에 의한 α/N\alpha / N보다 큰 값임을 알 수 있으며 이는 좀 더 완화한 기준이라고 볼 수 있다. Holm's procedure도 FWER을 α\alpha - 수준에서 통제한다.

다음 포스팅에서는 "FDR(False Discovery Rate)"에 대해서 다루겠다.

참고자료

  • Large-Scale Inference, Bradley Efron
  • Computer Age Statistical Inference: Algorithms, Evidence and Data Science, Bradley Efron, Trevor Hastie
profile
머신러닝과 통계학을 공부하는 사람

0개의 댓글