데이터 분석을 하는 사람이라면 통계적 가설 검정(또는 귀무 가설 검정법)에 대해 한 번쯤 접해봤을 것이다. 하지만 통계학 전공자조차 이를 잘못 해석하거나 사용하는 경우가 적지 않다. 이들의 실수는 대체로 계산 과정에서 발생하기보다는 귀무 가설을 설정하거나 결과를 해석하는 논리 과정에서 비롯된다.
사실 계산 자체는 절차만 익히면 어렵지 않고, 최근에는 대부분의 계산이 프로그램을 통해 자동으로 이루어지기 때문에 계산 과정에서 실수할 가능성은 적기 때문이다.
따라서 오류를 범하는 주된 이유는 통계적 가설 검정의 개념을 온전히 이해하지 못한 채 단순히 외운 공식을 따라 하는 데서 비롯된다. 예컨대, 왜 '귀무 가설 (null hypothesis)'라는 익숙하지 않은 가설을 먼저 세우고 그것을 기준으로 검정을 수행하는지 이해하지 못한채 적용만 하는 경우가 많다.
이 글에서는 통계적 가설 검정에서 왜 귀무 가설을 먼저 설정하고 이를 기반으로 유의성 검정을 하는지에 대한 이유를 먼저 설명한 후, 귀무 가설 검정에서 주의해야 할 핵심 조건이 무엇인지 설명하고자 한다.
중/고등학교 수학 시간에 배운 여러 가지 증명 기법 중에 '귀류법' 이란 것이 있다. 귀류법은 내가 증명하고자 하는 어떤 명제 A와 상호 배타적인 명제 B가 참이라고 가정한 후, 그 가정에서 모순이 발생함을 보임으로써 A가 참임을 간접적으로 입증하는 방법이다.
예를 들면 '소수(1와 자신을 제외하면 어떤 수로도 나눠지지 않는 자연수)의 개수는 무한하다.'라는 명제를 귀류법으로 증명하면 다음과 같다.
소수의 개수는 유한하다고 가정한다.
모든 소수를 p1, p2, ..., pn 이라 하자.
세상의 모든 소수를 곱한 후 1을 더한 수, 즉 k = p1 × p2 × ... × pn + 1 을 만든다.
이 k는 기존의 어떤 소수로도 나눠지지 않으므로 새로운 소수이다.
이는 초기 가정과 모순이 된다. 따라서 소수의 개수는 무한하다.
이처럼 귀류법은 어떤 명제를 직접적으로 증명하기는 어렵지만 그 반대 명제가 틀렸음을 입증하기는 쉬운 경우에 유용하다.
통계적 가설 검정은 귀류법을 통계적으로 응용한 방법이다. 통계에서는 명제가 '참'인지 '거짓'인지를 수학적으로 증명하는 대신 해당 명제가 참일 경우 예상되는 사건의 확률을 계산한 후 그 값이 얼마나 되는지를 근거로 판단을 내린다.
문제는 세상 대부분의 사건은 정확한 확률을 구하는 것이 어렵다는 점이다. 따라서 원래 검증하고 싶은 가설 대신 좀 더 확률을 계산하기 쉬운 가설(귀무 가설)이 참일 거라고 가정하고 관측된 데이터를 통해 이 가설이 얼마나 그럴듯한지 평가한다. 그 확률이 충분히 낮다면 이 귀무 가설과 대립되는 가설(즉, 우리가 원래 검정하려고 한 가설)이 참일 가능성이 높다고 추정하는 방식이다.
이처럼 표면적으로 통계적 가설 검정은 귀류법과 유사하지만 중요한 차이점이 있다.
1) 판단의 확실성 차이
귀류법은 연역적 추론을 통해 명제의 참/거짓을 확정적으로 판단한다.
반면 통계적 가설 검정은 귀무 가설이 맞다고 가정했을 때 관측된 데이터가 나타날 확률이 얼마나 낮은지를 평가할 뿐이다.
따라서 "기각한다/기각하지 못한다"는 표현을 사용하며, 이는 곧 "참이다/거짓이다"를 의미하는 것은 아니다.
2) 대립가설과 귀무가설은 완전히 배타적이지 않다.
귀류법에서는 A와 ¬A(not A)가 명확하게 배타적이지만, 통계 검정에서 대립가설은 귀무가설의 정확한 반대가 아니다.
따라서 귀무 가설이 기각되었다고 해서 자동으로 대립 가설이 참이라고 단정할 수 없으며, 실험 설계나 맥락에 따라 귀무가설 기각이 곧바로 우리가 주장하려는 효과로 이어지지 않을 수 있음을 뜻한다.
예를 들어, 어떤 온라인 쇼핑몰에서 새로운 추천 알고리즘의 효과를 평가하기 위해 A/B 테스트를 수행했다고 하자.
쇼핑몰에 들어오는 고객을 무작위로 A집단과 B집단으로 나눈다.
A 집단은 기존 추천 알고리즘, B 집단은 신규 알고리즘을 적용한다.
2주간 실험 후 결과를 확인했더니 B 집단의 평균 결제 금액이 더 높고 p-value 가 0.01로 통계적으로 유의하다.
신규 추천 알고리즘이 기존 추천 방식보다 효과적이라고 결론내리고 새로운 추천 알고리즘을 전체 시스템에 적용한다.
이 결과는 다음과 같은 논리 구조에 기반한다.
두 집단은 동일한 모집단에서 무작위로 샘플링된 것이다. (귀무 가설)
중심극한정리에 의해 두 집단의 평균 결제 금액의 차이는 정규 분포를 따르게 된다.
그런데 관측된 평균 차이는 이 정규 분포에서 매우 드문 케이스이다.
따라서 두 집단이 같은 모집단이라는 가정은 기각될 수 있다.
두 집단의 유일한 차이는 신규 알고리즘 적용 여부이므로, 그 차이가 원인일 가능성이 높다. 즉, 신규 알고리즘은 고객의 구매 성향을 바꿔 평균 결제 금액을 증가시키는 효과가 있다.
따라서 신규 추천 알고리즘을 전체 집단에 적용하면 우리 매출이 오를 것이다.
위 논리 구조에서 핵심이 되는 조건은 크게 두 가지이다. 이 두 조건을 충족하지 못하면 설령 귀무 가설이 기각되더라도 대립 가설이 참이라는 근거가 되지 못한다.
임의 할당 (random assignment): 대상이 같은 모집단에서 무작위로 두 집단에 배정되어야 한다.
처치의 독립성 (treatment isolation): 내가 의도한 조치(신규 추천 알고리즘) 외 다른 요인은 결과에 영향을 주지 않아야 한다.
의학에서 임상실험을 할 때 사용하는 '이중맹검법 (double-blinded test)'은 이 두 조건을 충족시키기 위한 대표적인 실험 방법이다. 임상 환자를 임의 할당할 뿐만 아니라 환자와 실험자 양쪽 모두 어떤 조치를 하는지 모르게 함으로써 플라시보 효과나 피그말리온 효과 같은 교란 요인을 최대한 제거하는 것이다.
하지만 업계에서 흔히 사용하는 A/B 테스트는 이중맹검이 어렵고, 외부 변수나 사용자 간 정보 공유 등 다양한 교란 요인을 통제하기가 쉽지 않다. 따라서 이런 한계를 인식하고, 통계적 유의성 결과를 해석할 때도 대린 가설 외에 결과에 영향을 줄 수 있는 다른 교란 요인은 없는지 조심해야 한다.
관측 데이터로 통계 검정을 수행할 경우에는 임의 할당이나 처치 독립성 조건이 거의 충족되지 않는다. 그럼에도 불구하고 실험 환경에서와 같은 방식으로 귀무 가설을 적용하고 p-value를 계산한 결과를 근거로 인과 관계를 주장하는 사례가 자주 있다.
예를 들어, 특정 정치적 주장에서는 사전 투표자와 본 투표자가 동일한 모집단이라고 가정하고 통계 검정을 수행한 후, p-value가 매우 낮게 나왔다는 이유로 조작 가능성을 주장한다. 그러나 사전/본 투표 참여는 유권자가 자발적으로 선택한 결과로, 무작위 할당되지 않았기 때문에 이러한 분석은 잘못된 전제에 기반한 것이다.
혹은 어떤 마케팅 프로모션을 수행한 후 프로모션 전/후 데이터로 통계 검정한 결과를 근거로 프로모션이 효과가 있었다라고 주장하는 경우도 있다. 그러나 프로모션 전/후의 고객은 설령 같은 집단이라 하더라도 시기적인 차이로 인해 계절 효과나 외부 이벤트 등의 교란이 발생하기 때문에 '처치의 독립성'을 위배한다.
관측 데이터에서 '임의 할당'이나 '처치 독립성'을 헤치는 요인들을 완벽히 통제하는 것은 사실상 불가능하다. 다만, 이런 요인들이 결과에 미치는 영향을 최대한 줄이기 위한 여러 가지 기법을 활용할 수 있으며 이런 기법을 활용한 분석을 인과 추론 분석이라 부른다. 따라서 관측 데이터를 이용해 통계적 가설 검정을 할 때는 어떤 요인들이 검정 결과에 영향을 줄 수 있는지 파악하여 이에 맞는 인과 추론 기법을 적용해야 한다. 이런 조치 없이 수행한 가설 검정은 잘못된 결론을 도출하기 쉽다.
우리는 데이터에서 의미 있는 차이를 발견할 때 흔히 p-value 값을 토대로 "통계적으로 유의하다"라고 말한다. 하지만 통계 검정을 할 때는 귀무 가설을 수립하는데 꼭 필요한 두 가지 전제 조건이 충족되었는지에 대한 확인이 먼저 필요하다.
임의 할당 (random assignment): 두 집단은 무작위로 나눠져 있어서 사전 차이나 선택 편향이 없는가?
처치의 독립성 (treatment isolation): 두 집단에 차이를 만든 것은 오직 ‘내가 의도한 조치’뿐인가?
물론 이 두 조건을 충족하려면 완벽한 통제 실험을 설계해야 하는데 이것은 대단히 어렵고 비용이 많이 든다. 제약회사에서 신규 치료제 개발에 돈과 시간이 많이 들고 좋은 과학 연구 결과가 나오기 어려운 이유는 바로 이 때문이다.
사실상 실무에서는 여러 가지 교란 요인을 감수할 수 밖에 없다. 다만 이런 한계를 인식하고 결과를 해석하는 것과 그냥 숫자만 보고 판단하는 것에는 분명 차이가 클 것이다. 그러니 왜 귀무 가설을 세우는지, 그리고 귀무 가설의 기각 여부가 대립 가설을 지지하는 근거가 되는 이유가 무엇인지는 명확히 이해해야겠다.