Think Bayes (11) 가설 검정
파이썬을 활용한 베이지안 통계, 앨런 B. 다우니 지음, 권정민 옮김/한빛미디어 |
11.1 유로 문제 (2)
앞의 4장에서 유로 문제에서 맥케이의 문제를 제시했다. 사실 이 문제는 동전이 평평하지 않고 기울었다는 증거가 될 수 있는지 묻고 있다.
4장에서는 동전이 앞면이 나오면서 떨어질 확률을 추정했지만, 이는 정확한 대답이 아니다. 유로 문제의 경우, 두 가지 가설을 고려해야한다. F를 동전이 평평하다는 가설이라 하고 동전이 기울었다는 가설을 B로 하겠다.
만약 동전이 평평하다면 데이터의 우도 $p(D|F)$를 계산하기는 쉽다.
1 2 3 4 5 6 7 8 9 |
def Likelihood(self, data, hypo): x = hypo / 100.0 head, tails = data like = x ** heads * (1-x) ** tails return like suite = Euro() likelihood = suite.Likelihood(data, 50) |
하지만 이 값는 너무도 작은 값을 출력한다. 또한 둘 간의 비율을 만들어야 하므로 $p(D|B)$도 계산하여야 한다. 여기에서도 치우쳤다고 하는 B는 명확하지 않다.
한가지 가능한 것은 가설 정의 전에 데이터를 먼저 참조해보는 것이다. 이 경우 치우쳤다고 하는 것은 앞면이 나올 확률이 140/250인 것으로 가정할 수 잇다.
1 2 3 |
actual_percent = 100.0 * 140 / 250 likelihood = suite.Likelihood(data, actual_percent) |
이 때의 B를 b_cheat
라고 하자. b_cheat
의 우도는 $ 34 * 10^{-76}$이고 앞의 평형할 때의 우도는 $ 5.5 * 10^{-76}$으로 둘간의 우도비는 6.1이다. 따라서 데이터는 이 버전의 B를 만족할 증거가 된다고 할 수 있다.
하지만 이러한 풀이는 데이터를 사용해버렸으므로 관측 결과가 50%가 아닌 이상 B를 만족하게 될 것이다.
11.2 공정하게 비교하기
따라서 데이터를 보지 않고 B를 정의하여야 한다. 벨기에 유로 동전의 경우 앞면이 뒷면보다 돌출되어있다. 이렇게 말해보는 것은 어떨까? “동전이 기울어져 있어서 x가 0.6이나 0.4가 나올 것 같은데 어느 쪽인지는 모르겠다.”
이렇게 하위 가설이 생긴 것을 b_two
라고 부르자. 이들의 우도를 계산한 뒤 평균 우도를 구할 수 있다.
1 2 3 4 |
like40 = suite.Likelihood(data, 40) like60 = suite.Likelihood(data, 60) likelihood = 0.5 * like40 + 0.5 * like60 |
b_two
의 우도비는 1.3으로 증거가 되기에는 빈약하다.
따라서 0부터 100까지의 하위 가설을 정의하고 50을 뺀 스윗을 생각해볼 수 있다.
1 2 3 4 |
b_uniform = Euro(xrange(0, 101)) b_uniform.Remove(50) b_uniform.Normalize() |
1 2 3 4 5 6 7 |
def SuiteLikelihood(suite, data): total = 0 for hypo, prob in suite.Items(): like = suite.Likelihood(data, hypo) total += prob * like return total |
이렇게 계산한 우도비는 0.47로 아직 약한 증거이다.
사실 위의 계산은 앞에서 우리가 사용하였던 Update
와 유사하다는 것을 알 수 있다. 따라서 위의 SuiteLikelihood
를 사용하는 대신 아래의 코드를 사용할 수도 있다.
1 2 |
likelihood = b_uniform.Update(data) |
11.3 삼각 사전 확률
4장에서의 삼각형 사전 확률 분포를 고려하고 있다면 이에 대한 우도는 다음과 같다.
1 2 3 |
b_triangle = TrianglePior() likelihood = b_triangle.Update(data) |
이 우도비는 0.84로 역시 빈약하다.
지금까지 알아본 하위 가설들은 모두 한쪽으로 치우쳐 있다는 것에 대하여는 약한 가설이다. 하지만 B가 의미하는 바에 대해서 정확히 명시하여 검정하였다는 것에 의의가 있다.
11.4 토의
사실 약한 이유를 설명하지 않았는데, 베이지안 통계의 초기 지지자 해롤드 제프리는 베이즈 요인에 대한 해석을 제안하였다.
베이즈요인 | 강도 |
---|---|
1 - 3 | 언급할 가치도 없음 |
3-10 | 적당함 |
10-30 | 강력함 |
30-100 | 매우 강력함 |
> 100 | 확실함 |
형용사의 논란을 피하기 위해 공산을 고려하여보자.
사전 공산비가 1:1이고 베이즈 요인2에서 살펴보면 사후 공산비는 2:1이 된다. 확률로 보면 데이터의 신뢰도가 50%에서 66%가 된 것이다. 하지만 베이즈요인 100에서 살펴보면 사후 승산비는 100:1이거나 99%이상이 된다.