데이터과학, 베이즈 통계, 그리고 수학

요즘 내 고민 중의 하나는 데이터과학과 사회 통계를 인문사회과학도에게 어떻게 하면 쉽게 전달할까 하는 문제이다. 문제는 수학 지식이다.

그런데 데이터과학과 베이즈통계 등 최근에 대세가 되고 있는 분야를 아무리 둘러봐도 고등학생 시절 반에서 몇 등 정도 공부했던 인문사회과학도가 이해하지 못할 정도의 고난도 수학은 거의 없다. 문제는 세 가지라고 생각된다.

첫째, 수학적 사고에 익숙하지 못하다.수학적 사고에 익숙해지려면 주어진 문제나 자신의 생각을 자꾸 수학적으로 표현해 보아야 한다. 물론 그런 사고를 뒷받침할 수 있도록 수학 공부를 별도로 해야 하겠지만. 학교에서 이러한 습관을 길러주면 가장 좋겠지만, 개인적인 노력으로도 충분히 목표를 이룰 수 있다. 그런데 현실에서는 수학적 사고를 기르기는 커녕 일찍부터 수학에 문을 닫아버리는 경우가 너무 많다. 수학은 이공계 전공자들의 전유물이라고 간주해버리는 것이다. 

둘째, 어느 분야의 지식이라도 기꺼이 배우겠다는 적극적인 태도가 필요하다. 인문계니 자연계니 하는 것은 편의적 구분일 뿐이다. 현실 문제에서 그런 구분이 어디 있겠는가? 현실 문제를 해결하는데는 인문적 사고도 필요하고 자연과학적 혹은 공학적 사고도  필요할 때가 부지기수이다. 인문-자연 구분은 창의적 발상과 효과적인 접근에 방해요소일 뿐이다. 문제는 해결하거나 못하거나 둘 중 하나이다. 문제가 접근하는 사람의 사정을 봐가면서 제기되지는 않는다.

셋째, 인문사회과학도가 알아들을 수 있을 만큼 친절한 강의가 필요하다. 언젠가는 인문사회과학도가 충분히 이해하고 즐길만한 데이터과학이나 베이즈 통계 교재가 나오겠지만 아직은 아닌 것 같다. 이점도 큰 장애요인 중 하나이다. 수학을 사용하되 인문학 혹은 사회과학적 접근을 유지하는 교재가 얼른 출간되면 좋겠다. 그런데 그게 그다지 전망이 밝지 않다. 그런 교재를 쓸 능력을 지닌 젊은 인문학자나 사회과학자는 다른 일에 바빠서 교재를 쓸 의사나 시간이 없고, 의사나 시간이 있는 노학자들은 데이터과학이나 베이즈 통계에 관한 교재를 작성하기는 커녕 새로운 학문을 소화하기조차 어렵다.

필자도 공부해보니 많이 어렵다. 수학 지식도 일천하고 수학적 사고도 별로 없는 사람이다보니 데이터과학이나 베이즈 통계에 대한 공부가 무척 어렵다. 교수직을 수행하면서 짬을 내어 공부하는 정도로는 너무 어려웠다. 다행히 일찍 교수직을 그만 둔 덕분에 시간이 좀 많아져서 집중 학습이 되니 배움의 속도가 확실히 빨라졌다. 효율성이라곤 하나도 없는 독학지만 좌충우돌하면서도 진전은 있다. 이제 공부의 9부 능선 정도는 올라가지 않았나 싶다. 사명감을 갖고 계속 전진하자. (2020-11-07)

베이즈 통계(9): 확률밀도, 연속확률분포, 공액사전분포, 퍼라미터 추정

퍼라미터 추정에 관한 사례를 하나 더 보자. 사전 약속 없이 일반인이 백악관에 들어갈 수는 없다. 그런데 아주 유명한 사람, 예컨대 전설적인 농구 선수인 샤킬 오닐(Shaquille O’Neal)이라도 그럴까? 사전 예약 없는 유명인이 백악관 입장에 성공할 확률을 묻는 질문이다.

실험의 결과가 성공과 실패 두 가지이고, 시행들이 상호독립적이라면, 앞 게시글에서 공부한 이항확률분포를 적용할 수 있으나 이항확률분포는 이산확률변수에만 적용된다. 우리가 다루는 성공 확률은 0부터 1 사이의 어떤 값도 취할 수 있기 때문에 연속확률변수(continuous random variable)이다. 성공 확률 자체가 확률변수인 경우 적절한 분포는 베타확률분포(Beta probability distribution)이다. 이항 분포에서는 성공의 횟수가 확률변수인데, 베타분포에서는 성공의 비율이 확률변수이다. 베타분포하면 야구선수의 타율을 떠올리면 좋다. 베타(beta)와 배트(bat)를 묶으면 기억하기 편하다. (베타분포에 관해서는 확률분포(6): 베타분포 를 참조하시오.)

이산확률변수에서 연속확률변수로의 확장는 심각한 도약이다. 그러나 그것은 반드시 건너야 하는 강이다. 그 강에 놓인 첫번째 허들은 확률밀도와 확률밀도함수라는 개념이다.

과연 섁(Shaq)이 예약없이 백악관에 들어갈 수 있을까? 이 질문에 대한 합리적인 대답은 그렇다 아니다라는 양자택일이 아니라 확률로 표현될 수 있을 것이다. 섁의 백악관 입장이 허용될 확률이 0.01이다, 0.001이다, 0.0001이다, 0.2다, 0.3이다, 0.5다, 0.7이다…0.9999 따위로 추정되는 것이 합리적이라는 말이다. 섁의 백악관 입장이 허용될 확률(성공확률)을 라고 표기하자. 보다 정확히 말하자면, 는 섁의 백악관 입장이 허용되는 것에 대한 우리 믿음(짐작)의 정도이다. 는 우리가 추정하려는 퍼라미터이다. 의 값은 무수히 많을 수 있다. 성공가능성이 전혀 없다는 믿음을 의미하는 0에서부터 100% 성공가능하다는 믿음을 의미하는 1 사이에 존재하는 무수히 많은 수가 모두 퍼라미터가 될 가능성이 있다는 말이다.

이산확률분포의 경우 확률함수는 이항확률분포에서 보았듯이 확률변수의 각 값에 대한 확률을 부여한다. 그런데 연속확률변수의 경우 아무리 작은 범위일지라도 확률변수 값은 무수히 많기 때문에 각 확률변수 값은 거의 0에 가까운 확률을 가질 것이다. 그렇다면 연속확률분포에서 특정한 확률변수 값의 확률은 0인가? 만약 0이라고 한다면 연속확률분포의 면적이 1이 되어야한다는 정의에 문제가 발생한다. 개별확률변수값의 확률을 모두 더하면 1이 되어야 하는데, 개별 확률변수 값의 확률이 0이라면 그 값들의 총합은 1이 아니라 0이 되어 버리는 것이다. 그래서 확률은 0에 아주 가깝돼 정작 0은 아니어야 한다. 그래서 확률밀도함수(probability density function)는 아래와 같이 정의되고 우변이 확률밀도이다.

확률밀도(probability density)는 확률(probability)과 구분하기 위해 물리학에서 밀도라는 개념을 차용하여 만들어진 개념이다. 이산확률분포에서 높이가 확률인 것처럼 연속확률분포에서는 높이가 확률밀도이다. 아래 그림에서 오른쪽 그래프는 이산확률분포의 확률가 높이임을 보여주고, 왼쪽 그래프는 연속확률분포의 확률밀도가 높이임을 보여주고 있다.  ( 대신 라는 적분 기호로 표시되어 있으나 둘 다 0에 가까울 정도로 아주 미세한 크기의 밑변을 가리킨다.)

Probability density function

연속확률함수에서  혹은 는 확률이 아니라 확률밀도이다. 즉, 는 확률변수 의 값이 일 때의 확률밀도이다. 연속확률분포에서는 이산확률분포에서 사용되는 의미의 확률이 없다고 생각해도 무방할 것이다. 연속확률분포에서 확률분포(함수)는 항상 확률밀도를 낳는다. 섁의 성공확률밀도를 베이즈 정리로 표현하면 아래와 같을 것이다. 아직 이 식을 다 이해하지 못해도 상관없다. 곧 설명될 것이다.

좌변은 우리가 추정하려고 하는 사후확률밀도(posterior probability density)이다. 분자와 분모에 파란 글씨로 된 부분은 사전확률밀도이고 빨간 글씨로 된 부분은 우도이다. 우도와 사전확률의 곱은 결합확률이며, 분모에 0부터 1까지의 적분은 해당된 모든 결합확률밀도를 합하라는 지시이다. 이산확률분포를 설명할 때 언급했듯이 분모는 전체 합인 주변확률을 1로 만들어 분수의 값을 확률로 만들어 주는 정규화 상수(normalizing constant)이다. 연속확률변수에서는 주변확률밀도를 1로 만들어 분수의 값을 확률밀도로 만들어 주는 정규화 상수이다. 이산확률변수에서는 가 합을 나타내지만, 연속확률변수에서는 이 합을 표현한다.

베이즈 추론에서 이산확률분포에서 연속확률분포로 넘어가는 두번째 허들은 사전확률의 설정이다. 연속확률변수이니 하나의 사전확률이 있을 수 없고 무수히 많은 사전확률밀도가 존재하니 사전 확률(prior)은 사전확률분포(prior probability distribution)로 제시되어야 할 것이다. 그런데 성공확률의 확률분포로 베타 분포가 사용되니 사전확률분포로 베타확률분포을 채택하면 되겠다. 사전확률밀도가 베타확률분포를 따른다는 명제는 다음과 같이 간략히 표현될 수 있다.

에 아래첨자 0을 붙인 것이 사전확률밀도임을 나타내기 위해서이다. 베타확률분포는 퍼라미터 의 크기에 따라 아래와 같이 다양한 모습을 갖고 있다. 사전확률분포의 모습을 결정하는 퍼라미터인  를 우리가 구하려고 하는 미지의 퍼라미터(unkown parameter)인 와 구분하기 위해 하이퍼퍼라미터(hyper-parameter)라고 부른다.

Beta distribution - NtRand

이렇게 다양한 베타분포 중 우리 문제에서는 어떤 것을 사전확률분포로 채택할까? 두 개가 후보로 떠오른다. 하나는 보라색 그래프인데 그것은 연속균일분포이다. 사실 베타분포에서 하이퍼퍼라미터의 값이 둘 다 1이면 연속균일분포이다. 그 그래프는 0과 1사이에서 확률변수의 확률밀도 값이 모두 동일하다는 의미이다. 앞 게시글에서 균일분포가 비정보적(non-informative) 사전확률을 나타내는데 가장 많이 사용된다고 설명했다. 그런데 베타분포의 경우를 보면 비정보적이라는 말이 상대적이어서 베타분포의 여러 모양 중 가장 비정보적이라고 할 수도 없음을 알 수 있다. 그래프 중 U자 모양인 빨간색 그래프는 하이퍼퍼라미터가 둘 다 0.5일 때이다. 그것은 확률변수의 값이 0에 근접할 때와 1에 근접할 때 확률밀도가 가장 크고, 그 사이 값들에서는 확률밀도가 유사함을 보여준다. 이 그래프는 섁과 같은 유명인은 백악관 출입이 항상 허용될 것이라는 믿음(확률밀도가 1에 가까움)과 섁과 같은 대단한 유명인이라도 백악관 출입은 초청이나 사전 예약 없이 불가능할 것이라는 믿음(확률밀도가 0에 가까움)을 함께 나타내주는 것으로 볼 수 있다. 사실 이 그래프도 균일분포에 못지 않게 비정보적이다. 이 문제에 관해 우리는 둘 중에 후자인 를 사전분포로 채택하겠다. 그것은 아래와 같은 그래프이다.

사전확률분포를 정했으니 이번에는 우도 값을 정해야 한다. 우리가 손에 쥐게 되는 데이터는 시행 중 성공횟수가 될 것이다. 즉, 섁이 한번 시도해서(), 백악관에 들어가는 데 성공하거나(), 실패할 것이다(). 즉, 우도 값은 한번 시도한다면 베르누이 분포, 여러 번 시도한다면 이항분포를 따를 것이다. 즉, 베르누이 분포나 이항분포를 가지면 우도를 계산할 수 있다. 문제는 퍼라미터()가 무한히 많은 수라는 사실이다.  하나의 사전확률이 아니라 사전확률분포가 주어졌을 때 우도를 계산해야 한다. 그래서 우도도 아래와 같은 이항확률함수로 된 확률밀도함수(probability density function, pdf)로 정의되어야 한다.

만약 우리가 얻은 데이터가 섁이 한번 시도해서 백악관에 들어가는 데 실패했다는 것이라면, 일 것이므로 이항확률함수는 아래와 같을 것이다.

이제 사전확률분포와 우도함수를 구했다. 이제 식 (1)에서 보듯이 사후확률밀도를 계산하려면 정규화 상수를 구해야 한다. 그런데 거기에 적분이라는 엄청난 복병이 숨어있다. 적분 계산을 통해서 정규화 상수를 구하는 것은 대단히 번거롭고 심지어 때로는 불가능하기조차 하다. 사실 그것은 오랫동안 베이즈 추론이 널리 사용되지 못한 이유이기도 하다. 그래서 학자들은 적분을 우회할 수 있는 길을 찾아냈다. 그것의 첫번 째가 공액이라는 기법이다.

공액(켤레라고도 부름, conjugacy)이란 사전확률분포를 우도함수와 동일 계열의 확률분포로 설정하는 것을 말한다. 공액으로 설정된 사전확률분포를 공액사전확률분포(conjugate prior probability distribution, 혹은 간단히 conjugate prior)이라고 부른다. 위의 백악관 출입 허가 문제에서는 베타-이항 공액(beta-binomial conjugate)이 적용되었다. 베타 사전분포(beta prior distribution)와 이항 데이터(binomial data)를 결합하면, 베타사후분포를 얻는다. 사전분포와 사후분포가 하이퍼 퍼라미터만 다른 베타분포인 것이다. 이 사례의 경우 미지의 퍼라미터에 대한 우리의 믿음이 데이터를 얻은 후 베타분포의 하이퍼퍼라미터가 달라지는 방식으로 업데이트된 것이다. 이를 공식으로 표현하면 다음과 같다.

우리가 사전확률분포로 가정한 베타분포의 하이버퍼라미터가 이다. 그런데, 섁이 한번 시도해서 실패했으므로, 이다.그러면,

사후확률분포는 아래 그림과 같은 베타확률분포가 될 것이다.

사전확률분포와 사후확률분포의 모습이 사뭇 다르다. 사전확률분포에서는 극단적인 확률변수 값들의 모두 큰 확률밀도(높이가 높음)를 보였으나, 섁이 백악관 진입에 실패했다는 데이터를 얻은 후에 구한 사후확률분포에서는 0쪽에 가까운 확률변수 값들의 확률밀도는 그대로나 1쪽에 가까운 확률변수 값들의 확률밀도는 크게 낮아졌다. 다시 말해 섁이 한번 실패한 후에는 유명인이 백악관에 사전 약속 없이 들어갈 수도 있다는 데 대한 우리의 믿음이 크게 떨어졌다.

공액 덕분에 사후확률분포를 충격적일 정도로 쉽게 구했다! 확률 계산이 항상 이렇게 쉬우면 좋으련만….

만약 우리가 사전확률분포로 을 택한다면, 사후확률분포가 어떻게 될까? 데이터는 동일하다고 하자. 사전확률분포는 균일분포 모습일 것이다. 그렇다면 사후확률분포의 모습은 어떨까? 하이퍼퍼라미터를 계산하면 아래와 같다.

그래프로는 아래와 같다.

사후확률분포가 사선이다. 확률변수 값이 0에 가까울수록 확률밀도가 커지고 1에 가까이 갈수록 확률밀도가 작아진다. 앞에서 구한 사후확률분포와 비교해 보면 확률변수 값이 0에 가까울수록 확률밀도가 커지고, 1에 가까울수록 작아진다는 점에서는 유사하지만, 확률변수 값이 중간 지대에 속할 때는 확률밀도가 좀 많이 다르다. 분명한 점은 동일한 데이터가 주어졌을지라도(즉, 동일한 우도일지라도) 우리가 선택한 사전확률분포에 따라 사후확률분포가 달라진다는 사실이다.

셱이 다시 두 번 더 백악관 진입을 시도했다가(), 결국 한 번 성공했다()고 하자. 그런데 만약 처음 진입을 시도했을 때와 같은 경비라면 시행이 독립적이라고 보기 어려울 것이다. 때문에 매번의 시도가 서로 독립 사건이라고 가정하자. 그러면 사전확률분포가 일 경우 사후확률분포의 하이퍼 퍼라미터는 아래와 같을 것이다.

결과는 마찬가지이겠지만, 한번의 시행으로 업데이트된 하이퍼퍼라미터를 새로운 시행으로 업데이트하는 식으로 접근할 수도 있다. 그러면 1차 업데이트된 하이퍼퍼라미터가 2차 업데이트에서는 사전확률분포의 하이퍼퍼라미터가 된다. 사전확률분포의 하이퍼퍼라미터는 다음과 같다.

이 하이퍼 퍼라미터를 새로운 데이터로 업데이트하면 아래와 같게 된다.

(3)과 (4)의 결과가 동일하다. 이 업데이트 결과를 그래프로 표시하면 아래와 같다.

베타분포가 다시 업데이트되었음을 한 눈에 알 수 있다. 한 번의 성공이 확률밀도의 분포를 상당히 바꾸어 놓았다. 확률변수 값이 0과 1에 근접하면 확률밀도가 거의 0이고, 확률변수 값이 0.35 전후일 때 확률밀도가 가장 크다. 동일한 사전확률분포일 때라도 얻어진 데이터에 따라 사후확률분포(사후확률밀도함수)가 크게 다름을 알 수 있다. 또한 새로운 시행을 통해서 데이터가 계속 수집되면 사후확률분포도 지속적으로 업데이트될 수 있음을 알 수 있다.

새로 구해진 사후확률분포는 위에서처럼 그래프로 제시될 수도 있지만, 모멘트(예컨대 평균과 분산)를 추가하면 좋을 것이다. 베타분포의 평균과 분산은 다음과 같은 공식으로 구할 수 있다.

(4)에 제시된 하이퍼퍼라미터 를 위 공식에 대입하면 아래와 같은 값을 얻는다.

이상 공액이 베이즈 추론의 아주 편리한 지름길을 제공하고 있음을 살펴보았다. 베이즈 추론에 자주 사용되는 공액사전분포(conjugate priors)는 beta prior + binomial data –> beta posterior의 경우 외에도 여러 가지가 있다.

gamma prior + Poisson data –> gamma posterior

normal prior + normal data –> normal posterior

공액분포의 자세한 리스트는 아래의 위키피디아 링크를 참조하기 바란다.

Table of conjugate distributions

공액이 편리한 기법이기는 하지만, 모든 베이즈 추론 문제에 공액사전분포가 적용될 수 있는 것은 아니다. 그래서 다음 포스팅에서는 공액분포 적용 사례를 좀 더 살펴보고 나서 베이즈 정리의 분모에 있는 적분을 우회하는 또 하나의 방법인 시뮬레이션, 그 중 MCMC (Markov Chain Monte Carlo) 방법을 공부하겠다. (2020-11-03)

베이즈 통계(8): 우도와 퍼라미터 추정

앞 게시글에서 이항분포를 소개했다. 이번에는 그것을 퍼라미터와 우도(likelihood)의 관점에서 살펴보자. 이항분포는 두 개의 퍼라미터를 가진다고 했다. 동전을 3번 던졌을 때 윗면이 2번 나왔다. 그렇다면 성공확률()은 얼마일까? 성공확률은 이항분포의 퍼라미터 중 하나이다. 따라서 이 문제는 퍼라미터를 추정하라고 요구하고 있다. (시행횟수 n도 퍼라미터이지만 그것이 궁금할 일은 거의 없을 것이다.) 이 이항분포의 pdf는 다음과 같다.

이 pdf를 가지면 우리는 어떤 성공확률이든 우도를 계산할 수 있다. 위 식에서 성공확률을 넣으면 우도가 구해진다. 만약 성공확률이 0이라면(물론 실제로 그럴리는 없겠지만), 우도는 0이다. 조건부확률로 표현하면, 퍼라미터인 성공확률이 0일 때 동전을 3번 던져 2번 나오는 데이터를 관찰할 확률이 0이라는 말이다. 그렇다면, 성공확률이 0.1, 0.2, 0.3, 0.4,…1일 때의 각 성공확률을 같은 방식으로 추정할 수 있다. 아래는 그렇게해서 얻은 결과를 가지고 구성한 표이다.

성공확률() 우도(likelihood)
0 0
0.1 0.027
0.2 0.096
0.3 0.189
0.4 0.288
0.5 0.375
0.6 0.432
0.7 0.441
0.8 0.384
0.9 0.243
1 0

여기서는 11개의 경우만 제시했지만, 확률은 0부터 1 사이의 어떤 값도 가질 수 있으므로 사실 성공확률 값의 종류는 무한대이다. 퍼라미터가 무한대 존재한다는 말이다. 빈도주의 통계에서는 듣도보도 못한 현상이다.

편의상 두 가지 가설만 존재한다고 가정하자. 동전이 정직하다(p = 0.5이라고 두자)는 가설과 동전이 정직하지 못하다(p = 0.4이라고 두자)는 가설. 그리고 각 가설이 진실일 확률은 동일하다(각 0.5)고 가정하자. 각 가설의 사전확률(priors)이 각각 0.5라는 말이다. 그리고 동전던지기의 경우 우도함수가 이항확률함수이다.

그러면 베이즈 정리를 이용해서 먼저 동전이 정직하다는 가설부터 살펴보자. 동전을 3번 던져 2번 윗면이 나왔을 때 동전이 정직할 확률, 즉, 사후확률(posterior)을 구할 수 있는 사전확률(0.5)과 우도(0.375)가 구해진 것이다. 성공확률()이 0.5일 때 동전을 세번 던져서 두번 윗면이 나올 확률, 즉, 우도는 위 표에서 보듯이 0.375이다.

사전확률과 우도의 곱이 분자이니 쉽게 계산되고 이제 분모만 구하면 된다. 그런데 분모는 각 퍼라미터(가설)의 결합확률을 모두 합한 값이다. 그런데 계산을 간단히 하기 위해 동전이 정직하지 못한 경우 성공확률이 0.4라고 가정했다. 그러면 두 가지 경우만 있으니 분모 값은 아래와 같이 구해질 것이다. 퍼라미터가 0.5일 때 결합확률의 합이므로,

그렇다면, 동전이 정직하다는 가설의 사후확률은 다음과 같이 계산될 것이다.

사전확률은 0.5인데, 사후확률이 0.57이다. 동전던지기를 해서 세 번 중 두 번 윗면이나온다 라는 데이터를 얻고 나니 동전의 정직성에 대한 우리의 믿음이 0.5에서 0.57로 높아졌다.

반면에 동전이 정직하지 못하다는 가설의 경우, 분모는 퍼라미터가 0.5일 때 결합확률의 합이므로 앞의 경우와 동일하다. 따라서 사후확률은 아래와 같이 계산된다.

동전이 정직하지 못하다는 가설에 대한 우리의 믿음은 0.5에서 0.43으로 낮아졌다. 데이터가 수집되어 동전의 정직성에 관한 우리의 믿음이 갱신된 것이다.

다음 포스팅에서는 좀 더 복잡한 사례를 가지고 퍼라미터 추정을 보자. (2020-11-01)

베이즈 통계(7): 함수, 확률변수, 확률함수, 확률분포

먼저 함수에 대해 분명하게 정의하자. 함수(function)는 어떤 변수의 입력값에 대해 유일한 출력값을 관계시키는 수학적 과정이다. 좀 더 세련되게 표현하면, 입력값에 대해 출력값을 매핑(mapping)하는 수학적 과정이다. 함수의 출력값은 종속변수라고 부르는 또 하나의 변수일 수 있다.

What is a Function

함수가 실제로 표시되는 방식은 의 예에서 보듯이 좌변은 입력값()의 함수값(function value) 을 표기하고, 우변은 입력값을 가지고 무슨 조치를 해야하는가를 말해주는 일련의 지시(instructions)를 표기한다. 이 예에서는 입력값을 제곱하라는 지시가 주어져 있다. 만약 그 지시를 따라서 구한 함숫값(function value)이 다른 변수값(예컨대 )으로 간주된다면 그 경우 함수는 다음과 같이 표기될 수 있다.

이 경우 함수는 어떤 변수(흔히 독립변수라고 함)의 값에 대해 다른 변수(흔히 종속변수라고 함)의 값을 일대일로 대응시키는 수학적 과정이다.

확률변수(random variable)는 표본공간의 각 원소에 대해 하나의 실수값을 대응시켜주는 함수이다.  표본공간(sample space)확률실험(random experiment)의 결과로 나오는 모든 사상(events)의 집합이다.

예컨대 두 개의 동전을 던지는 실험을 보자. 실험의 결과가 오직 우연에 의해 결정되므로 그것은 확률실험이다. 윗면(인물 형상이 있는 면)이 나오면 H, 아랫면이 나오면 T라고 하면, 나올 수 있는 실험결과는 로 네 가지일 것이다. 이것의 집합인 가 표본공간(sample space)이다. 이 표본공간의 원소를 숫자로 표현하려면, 윗면의 수(혹은 아랫면의 수)처럼 변수를 규정해주어야 한다. 그러면, 각 원소에는 2, 1, 1, 0이라는 수가 부여될 것이다. 이 때 윗면의 수가 바로 확률변수이다. 그것은 두 개의 동전 던지기라는 확률실험의 결과에 대해 일정한 수를 부여하는 함수이다. 이 예는 함수의 입력값이 문자로 되어 있지만, 만약 표본공간이 숫자로 되어 있다면, 입력값과 출력값이 동일할 것이다.

확률변수의 값은 확률을 갖는다. 여기서 확률은 표본공간에서 특정 원소가 차지한 비율이다. 위 예를 가지고 보면, 확별변수 값의 확률은 다음과 같다.

확률변수의 값(윗면의 수) 표본공간의 원소 확률(해당 원소의 비율)
2 HH 1/4 = 0.25
1 HT, TH 2/4 = 0.5
0 TT 1/4 = 0.25
1.00

이 표를 확률분포표(probability distribution table)라고 부른다. 그런데 확률분포를 나타내는데 있어 확률분포표는 그다지 효율적이 아니다. 확률변수의 값이 많아지면 표를 작성하는 일이 아주 번거로울 것이다.

그래서 확률함수(probability function)가 필요하다. 확률변수의 값에 대응하는 확률을 하나의 함수로 표기할 수 있다면 아주 간명하고 효율적일 것이다.  위의 동전던지기 실험은, 확률실험의 결과가 두 가지(윗면과 아랫면, 성공과 실패)이고, 각 시행은 독립적이며, 성공 확률이 바뀌지 않는다는 특징을 가지고 있다. 이러한 속성을 지닌 확률분포는 이항확률분포(binomial probability distribution)이며, 이항확률분포는 이항확률질량함수(binominal probability mass function, binomial pmf)로 표현된다. 이산변수와 연속변수를 구분하지 않고 확률밀도함수(probability density function, pdf)라고도 표기하므로 이항확률밀도함수(binomial probability density function, binomial pdf)라고 불러도 무방하다(이항확률분포에 관해서는 확률분포(1): 이항확률분포 를 참조하시오). 전에 올린 확률분포들에 관한 글들에서도 그랬듯이 필자는 후자를 따르겠다. 이항확률밀도함수는 아래와 같이 표기된다.

함수값을 대신에 로 표기했다. n번 시행에서 성공 확률이 p일 때 y번 성공할 확률을 의미한다. 여기서 np퍼라미터(parameter, 우리말로 모수라고 함)라고 부른다. 퍼라미터는 확률분포의 모양을 결정짓는다. 즉, 퍼라미터의 값에 따라 확률분포의 모양이 결정된다.

위의 사례를 이항함수 식의 관점에서 다시 살펴보면, 동전이 정직하다고 가정했을 때 성공확률(윗면이 나올 확률) p은 0.5이다. 만약 동전을 두 번 던졌는데 윗면이 2번 나왔다면 성공횟수 y는 2이고, 시행 횟수 n은 2이다. 그렇다면 퍼라미터의 값은  가 될 것이다. 이항함수 공식에 이 퍼라미터 값을 넣으면 아래 식을 얻는다.

이 식만 가지면 앞에서 제시한 확률분포표를 재현할 수 있다.

2 0.25
1 0.5
0 0.25
1.00

퍼라미터의 값을 바꾸면 다른 모습의 확률분포를 얻는다. 예컨대 시행횟수를 3으로 바꾸면, 퍼라미터는  이 되고, 확률밀도함수(pdf)는 아래와 같다.

이 식을 가지고 확률분포표를 구하면 아래와 같다.

3 0.125
2 0.375
1 0.375
0 0.125
1.000

성공확률 p의 값을 변경할 수도 있다. 정직한 동전이니 성공확률이 0.5이지만, 성공률을 낮추기 위해 조작된 동전이라면 성공확률이 0.4일 수도 있다. 그러면 확률밀도함수는 다음과 같을 것이다.

베이즈 추론은 퍼라미터를 추정(estimate)하는 경우가 많다. 베이즈통계를 위해 확률밀도함수가 필요한 또 다른 이유이다. 다음 게시글에서는 베이즈 추론을 통해서 퍼라미터를 추정해 보자. (2020-10-30)

베이즈 통계(6): 데이터와 우도

베이즈 추론에서 사전확률분포와 더불어 꼭 필요한 요소가 우도(likelihood)이다. 우도는 베이즈 추론 과정에 데이터가 들어오는 방식이다. 빈도주의 통계에서 데이터는 무작위(random)를 원칙으로 수집된 표본의 순서쌍 데이터 혹은 그것으로부터 도출된  표본 통계(sample statistics)의 형식으로 추론 과정에 들어간다. 그런데 베이즈 통계에서는 데이터가 우도라는 특수한 형식을 취하면서 추론 과정에 들어가는 것이다. 앞 게시글에서 베이즈 추론을 다음 식으로 제시했다.

이 식에서 빨간 글씨로 표시된 부분이 우도이다. 주어진 가설이 진실일 때 데이터가 관찰될 확률이 우도이다. 우도는 데이터가 수집되기 전에 예측되는 확률이 아니라 이미 수집된 데이터를 가지고, 가설이 진실이라는 조건 아래에서 회고적으로(retrospectively) 바라보는 확률이다. 사전확률과 달리 우도는 데이터가 손에 들어와 있어야 상상 가능하다.

우도는 우리가 궁극적으로 구하고자 하는 사후확률이라는 조건부확률의 역조건부확률(inverse conditional probability)이다. 우도에서는 가설과 데이터의 위치가 사후확률의 그것과 반대이다. 사후확률은 데이터가 관찰되었을 때 가설이 참일 확률이다. 즉, 데이터가 조건에 해당된다. 그런데 우도는 가설이 참일 때 데이터가 관찰될 확률이다. 즉, 가설이 조건으로 제시된다.

앞에서 든 예들을 상기해 보면, 유방암 문제의 경우, 유방촬영검사 결과가 양성일 때 유방암에 걸렸을 확률을 구하는 것이었고, 그 추론을 위해서는 유방암 환자가 유방촬영검사에서 양성일 확률이라는 역조건부확률을 구해야 했다. 스펠 체크 예제는, radom이라는 타이핑이 진짜 radom을 의도했을 확률, random의 오타일 확률, radon의 오타일 확률을 구해서 비교하는 문제였고, 그 추론을 위해서는 의도가 radom일 때 radom이라고 타이핑할 확률, random일 때 radom이라고 타이핑할 확률, radon일 때 radom이라고 타이핑할 확률이라는 역조건부확률이 필요했다.

예제에서는 풀이를 단순화하기 위해 역조건부확률을 그냥 제시했지만, 사실 현실에서 그것을 구하기 쉽지 않다. 병원 데이터베이스에서 역조건부확률에 해당되는 통계를 찾아내기도 하고, 여론조사 결과에서 데이터를 가져오기도 한다. 그런데 결합확률표만 이용가능할 때도 있고, 빈도의 교차표만 이용 가능할 때도 있다. 그런 경우에는 곱셈법칙을 이용해서 역조건부확률을 구해야 한다. 그도 저도 아닌 경우에는 사후확률에 대한 역조건부확률이 무엇인지를 분명히 하고, 그에 적합한 데이터를 수집해야 할 것이다.

우도와 관련된 다른 한 가지 중요 포인트는 데이터로 포착되는 확률변수가 하나 이상일 때 어떻게 처리해야 하는가 하는 문제이다. 예컨대 베이즈 통계(2): 조건부 확률 가지고 놀기라는 포스팅에서 사용했던 경찰관 승진 사례에서 경찰관의 성별이 승진 여부에 미치는 영향이었다. 그런데 만약 인종(race)도 승진에 영향을 미친다면, 소위 독립변수가 두 개가 될 것이다. 빈도주의 통계의 다중회귀분석(multiple regression)에서처럼 독립변수가 2개 이상일 수도 있다. 그런 경우에는 우도함수를 어떻게 구할 수 있을까?

그 경우의 우도는 결합우도(joint likelihood)이라고 불리는데, 그것은 결합확률(joint probability)을 구할 때처럼 하면 된다. 즉, 두 확률변수(혹은 데이터 원천)가 상호독립적이면, 각 확률변수의 우도를 구한 다음 곱해주면 결합우도가 계산된다. 두 확률변수나 데이터 원천이 상호독립적이 아닐 때면 계산이 좀 복잡해 질 것이다.

예를 하나 보자(Donovan and Mickey, 2019). 다음은 베이즈 정리를 발견한 토마스 베이즈(Thomas Bayes)의 초상으로 널리 인정받는는 그림이다. 그런데 이 초상화의 인물이 정말로 토마스 베이즈인가에 대해서는 논란이 있다. 어떤 학자가 베이즈 추론을 사용해서 이 초상이 토마스 베이즈의 것인가에 대한 확률을 계산했다.

Thomas Bayes - Wikipedia

초상에 있는 남성이 토마스 베이즈일 우도를 직접 계산할 수는 없지만, 초상화 속의 중년 남자가 1750년대 가발(wig)을 쓰지 않은 목사(minister)일 우도는 계산할 수 있다. 초상화 속의 인물을 가발을 쓰지 않고 있다. 그런데 당시 목사들은 대부분 가발을 썼으며 일부 종파의 목사만 가발을 쓰지 않았다고 한다. 만약 당시 목사들이 가발을 얼마나 착용했는지에 대한 데이터가 있다면 초상화 속의 인물이 가발을 쓰지 않은 목사일 우도를 계산할 수 있을 것이다. 이것은 하나의 추론 근거이다.

다른 하나의 추론 근거는 초상화 속의 인물이 토마스 베이즈의 아버지인 조슈아 베이즈(Joshua Bayes)와 얼마나 닮았는가이다. 아래는 조슈아 베이즈의 초상이다.

Great Christian Library: Joshua Bayes 1671-1746

이 두 초상의 유사도(similarity index)가 55라고 하자. 그렇다면 우리가 손에 쥔 데이터는 가발 착용 여부부자 초상간 유사도 두 가지이며, 그것은 아래와 같이 요약된다. 이 두 가지 변수는 상호독립적이다.

가발 = 0,     유사도 = 55

우리에게는 두 가지 가설이 있다: 토마스 베이즈의 초상이다, 토마스 베이즈의 초상이 아니다.

토마스 베이즈의 초상이라는 가설이 참일 때 가발을 쓰지 않고 있을 우도를 구하고, 토마스 베이즈의 초상이라는 가설이 참일 때 유사도가 55(혹은 그 이상)일 우도를 구한 다음 그 둘을 곱하면 결합우도를 구할 수 있다. 먼저 1750년대의 초상화 속에서 중년 남성의 가발착용여부에 관한 데이터를 구해야 할 것이다. 100명에 관한 자료를 구했다고 가정하자. 아래는 그 데이터의 일부이다.

Person Minister wig
1 0 1
2 1 0
3 0 1
4 0 1
5 1 0
6 1 0
7 1 1
8 1 0
9 1 1
10 0 1

이 데이터를 가지고 다음과 같은 교차표를 만들 수 있을 것이다.

Wig No Wig Sum
Ministers 8 2 10
Non-ministers 15 75 90
Sum 23 77 100

토마스 베이즈의 초상이라는 가설이 참일 때, ‘가발을 착용하지 않은 목사’의 우도는 위 교차표를 참고하면  2/100 = 0.02로 추정될 수 있다.

다음은 부자간 닮은 정도(유사도)에 관한 우도이다. 영국에서 1천명의 부자인 경우 유사도 점수를 구했고, 1천명의 부자가 아닌 경우 유사도 점수를 구했다고 가정하자. 그중 10 개 사례의 데이터는 다음과 같다.

Pair Related Similarity
1 0 31
2 0 80
3 0 29
4 0 71
5 1 60
6 1 61
7 1 26
8 1 39
9 1 29
10 1 75

55점은 부자간 유사도의 최소 점수이니 우도를 계산할 때는 55점 이상을 기준으로 하자. 토마스 베이즈의 초상화라는 가설이 참일 때 유사도가 55점 이상일 우도는 0.69로 계산되었다. 반면에 토마스 베이즈의 초상이 아니라는 가설이 참일 때 유사도가 55점 이상일 우도는 0.01로 계산되었다.

이 두 가지 정보가 상호독립적이라는 가정 아래 그 둘을 곱하면 결합우도를 구할 수 있다. 토마스 베이즈의 초상이라는 가설은,

가발착용여부의 증거는 0.02이고, 유사도 점수의 증거는 0.69이므로,

토마스 베이즈의 초상이라는 가설이 참일 때 이 데이터를 관찰할 우도는

토마스 베이즈의 초상이 아니라는 가설이 참일 때, 각각의 증거(우도)는,

가발착용여부의 증거는 0.77, 유사도 점수의 증거는 0.01이므로,

토마스 베이즈의 초상이 아니라는 가설이 참일 때, 이 데이터를 관찰할 우도는

이렇게 해서 사후확률을 구하는데 필요한 우도를 계산했다.

데이터를 구하기 전에 토마스 베이즈의 초상이라는 가설과 토마스 베이즈의 초상이 아니라는 가설이 참일 가능성이 동일하다고 간주하여 사전확률을 각각 0.5, 0.5로 부여했다면 아래 표에서와 같이 사후확률이 계산될 수 있을 것이다.

Prior Likelihood Prior*Likelihood Posterior
Thomas Bayes 0.5 0.0138 0.0069 0.64
Not Thomas Bayes 0.5 0.0077 0.00385 0.36
1.0 0.01075 1.00

토마스 베이즈로 간주되는 초상화가 주어졌을 때, 그것이 진짜로 토마스 베이즈의 초상일 확률은 0.64이고, 토마스 베이즈의 초상이 아닐 확률은 0.36이다. 그 초상이 토마스 베이즈의 것이라고 100% 확신할 수는 없지만, 이상의 베이즈 추론은 다른 반증이 없는 한 그것을 토마스 베이즈의 초상으로 간주해도 무방하다 증거를 제공한다.

이러한 방식으로 두 개(혹은 그 이상의) 독립변수 혹은 두 개 이상의 데이터 원천이 제공하는 증거로부터 베이즈 추론에 필요한 우도를 계산할 수 있다. 이상의 논의에서 독자들은 베이즈 추론에 필요한 데이터가 우도라는 형식으로 확보되어야 하며, 두 개(혹은 그 이상)의 확률변수 데이터로부터 우도를 도출할 수 있음을 알 수 있었으리라 생각한다. (2020-10-29)

참고 문헌

Donovan, Therese M. and Ruth M. Mickey. 2019. Bayesian Statistics for Beginners. Oxford University Press.

베이즈 통계(5): 가설과 사전확률분포

베이즈 정리에 관한 빈도주의 통계의 개념에서 사전 확률(prior)이란 주변확률(marginal probabilities)에 불과하다. 그러나 베이즈 통계에서 사전 확률은 각 대안적 가설(alternative hypothesis)이 진실일 사전적(a priori) 확률이다. 사전적이라는 데이터 수집 전이라는 의미이다.

참고로 사전 확률이야말로 베이즈 통계를 빈도주의 통계와 구분짓는 가장 중요한 차이이다. 빈도주의 통계에는 단지 사전 확률이 없는 정도가 아니라 사전 확률이라는 개념적 접근을 강력히 부정한다.

앞에서 예로 든 유방암 사례에서는 두 개의 가설이 있었다. 유방암에 걸렸다는 가설과 유방암에 걸리지 않았다는 가설이다. 그런데 베이즈 통계에서는 2개 이상의 대안적 가설을 검증하는 경우가 흔하며, 각 가설에 대해서 사전 확률이 부여된다.

다수의 대안적 가설에 대해 확률이 부여되면 그것은 확률이 아니라 확률분포로 개념화되어야 한다. 대안적 가설이 하나의 확률변수가 되는 것이다. 확률이 부여된 대안적 가설이 구성하는 분포가 사전확률분포(prior distribution)이며, 사전확률분포 없이 베이즈 추론은 불가능하다.

만약 확률변수가 이산적(discrete)이라면 베이즈 정리는 다음과 같이 표기될 수 있을 것이다. 가설을 보다 일반적인 용례를 따라서 θ라고 표기한다.

말로 풀어보면, 구하고자 하는 사후확률 는 데이터가 주어졌을 때 특정한 가설 가 진실일 확률이다. 이 사후확률은 하나의 비율로 표시된다. 분자는, 특정한 가설 일 때 데이터를 관찰할 확률(우도) 에 사전확률 를 곱한 값이다. 분모는, 주어진 데이터의 주변확률, 즉, 모든 가설의 결합확률을 합한 값이다. 각 가설의 결합확률은 해당 가설의 우도 곱하기 해당 가설(분자에 결합확률들 중 하나가 있음)의 주변확률이다. 이는 각 가설에 대해 사전확률과 우도(likelihood)가 존재함을 함축한다.

표기가 다소 혼란스럽게 느껴질 것이다. 의 아래 첨자가 도 있고, 도 있다. 그것들이 가리키는 의미를 분명히 하자면, i는 특정한 가설을 나타내고, j는 합산을 위한 인덱스이다.

예컨대 맞춤법 정정(spelling correction) 프로그램이 표기의 정확성이 분명치 않은 단어를 분류하는 문제를 생각해보자. 어떤 사람이 ‘radom’이라는 단어를 입력했다. 그것은 ‘random’의 잘못된 입력일 수도 있고, ‘radon’이나 어떤 다른 단어의 잘못된 입력일 수도 있으며, 의도적으로 ‘radom’이라고 입력한 것일 수도 있다. 문제를 간단히 하기 위해 가능성이 ‘radom’, ‘random’, ‘radon’ 세 가지 경우만 있다고 하자.

그렇다면, 데이터는 이고, 가설이 세 개(n = 3)이다:

먼저 원래 의도한 단어가 radom일(가설 1) 가능성을 계산하면 아래와 같을 것이다.

다음 의도한 단어가 random일(가설 2) 확률은 다음과 같다.

그리고 의도한 단어가 radon일(가설 3) 확률은 다음과 같다.

위 식들을 보면, 가 분자에서 특정한 가설을 가리키기 위해 사용되었음이 분명하고, 는 분자에서 합산을 위한 인덱스로 사용되었음이 분명하게 보인다. 로 역할을 구분하기는 했지만 일련번호는 동일하다. 의 아래 첨자 1은 도 되고 도 된다. 분자와 분모에서 역할을 구분하기 위해 다르게 표기했을 뿐이다. 분자에서는 관심을 갖는 가설이 바뀔 때마다 아래 첨자가 변했지만 분모에서는 아무런 변화가 없다. 가설 세 개의 결합확률을 모두 더 하기 때문이다. 분모는 좌변의 값을 0부터 1사이의 확률로 만들어 주기 위한 정규화 상수(normalizing constant)이기 때문에 관심을 갖는 가설이 바뀌어도 그 값이 일정하다.

다른 정보가 없다면, 사전 확률분포는 어떤 데이터베이스에서 이 세 단어의 상대 빈도를 가져오면 될 것이다. 구글(Google)의 연구자들이 제공한 위 세 단어의 상대 빈도(확률)은 다음과 같다.

radom이라는 단어가 폴란드에서 한 도시의 이름이기도 하고 어떤 권총의 비공식적인 이름이기도 하다.

이렇게 각 가설에 대해 사전확률을 부여할 수 있으면, 그러한 사전확률분포을 정보적 사전확률분포(informative prior distribution)라고 부른다.  ‘정보적’이란 사후확률분포의 결정에 영향을 미친다는 의미이다. 이 사전확률분포는 아래의 우도 함수와 함께 사후확률분포를 결정짓는다.

각 가설에 대한 우도는 아래와 같은 Google의 스펠링 체크 통계를 가져올 수 있다.

이 우도 함수(likelihood functions)는 하나의 확률분포가 아님을 기억해 두자. 그것은 세 개의 서로 다른 확률분포로부터 나온 조건부 확률이다.

이 우도 값들은 현실성이 있는 수치이다. radom이 올바로 타이핑했을 확률이 97.5%이고, random을 미스타이핑했을 확률이 0.2%이며, radon을 미스타이핑했을 확률은 0.01%이다.

사전확률분포와 우도함수를 구했으니 베이즈 정리를 이용해서 아래 표와 같이 사후확률분포를 계산할 수 있다.

조금 다른 예를 하나 더 보자. 어떤 여성이 몇 월에 태어났는 지를 알아맞추는 문제가 있다고 하자. 생일은 1월부터 12월까지 모두 가능하니 가설은 12개()이다. 그 가설은 각각 1월 가설(January hypothesis), 2월 가설,…12월 가설로 명명될 수 있을 것이다. 위의 식 (1)에서  , 가 된다.

만약 생일에 관해 아무런 힌트가 없다면, 사전확률분포는 어떻게 될까? 각 가설에 대해 동일한 확률을 부여하는 것이 사전 정보가 없다는 사실을 반영하는 하나의 방법이 될 수 있다. 그러면 각 달은 의 확률을 가질 것이다.  이 경우 확률분포는 다음과 같은 균일분포(uniform distribution)일 것이다.

이러한 사전확률분포를 비정보적 사전확률분포(non-informative prior distributions)라고 부르며, 그것은 모든 가설에 대해 동일한 확률을 갖게 한다. 즉, 각 달이 Mary의 생월이 될 사전확률이 동일하다. 비정보적 사전확률을 추정하는 것은 전적으로 우도에 의지해서 사후확률을 추정하겠다는 의지를 나타낸다. 비정보적 사전확률은 베이즈 추정에 있어 어떤 정보도 추가하지 않는다는 의미이다.

정보적 사전확률분포와 비정보적 사전확률분포 중 어느쪽을 택할 것인가? 이에 관한 원칙은 사전확률분포는 데이터를 보기 전에 당신이 확보할 수 있는 최고의 지식을 반영해야 한다는 것이다. 당신이 사후확률분포를 결정하는데 있어 상당히 중요한 정보를 알고 있음에도 불구하고 비정보적 사전확률분포를 사용하는 것은 정당화될 수 없다. (2020-10-26)

베이즈 통계(4): 과학으로서의 베이즈 과정

과학이란 미지의 현상에 대한 체계적인 탐구를 통해서 지식을 쌓아가는 노력이다. 과학에는 미지의 현상에 대한 주장(statement)이 있고, 그 주장을 뒷받침하는 증거(evidence)가 있다. 다만 주장-증거의 쌍이 과학적 지식으로 인정받으려면 그 증거가 ‘과학적’인 방법으로 발견한 것이라야 한다. 실험, 관찰, 설문조사, 시뮬레이션 등 증거 발견(데이터 수집)의 과학적 방법은 널리 알려져 있다.

베이즈 통계는 과학적 과정의 정당한 수단으로 활용된다. 그 두 가지가 어떻게 연관되는가를 살펴보자(Donovan and Mickey, 2019).

과학적 과정은 다음과 같이 도식화될 수 있다.

사회과학의 탐구 대상인 사회현상에 대해서는 두 가지 이상의 설명이 경합하기 마련이다(Lave and March, 1993). 그 설명은 가설(hypothesis)일 수도 있고 체계적인 이론(theory)일 수도 있다. 그런데 서로 경쟁하는 가설(혹은 이론, 이하에서는 가설로 통일한다)들은 사회현상에 대해 서로 다른 예측을 낳는다. 연구자는 그 가설들을 평가하기 위해 조사방법을 설계하고 그에 따라 데이터를 수집한다. 그 다음 수집된 데이터를 가지고 예측을 분석하여 가설(들)을 검증한다. 데이터가 가설을 지지하면 그 가설은 지식으로 추가되고,  데이터가 가설을 지지하지 않으면 가설이 수정된다. 그리고 수정된 가설을 가지고 다시 연구의 사이클을 시작한다.

앞에서 살펴본 유방암 예제를 가지고 베이즈 추론을 이 수레바퀴에 맞추어 되새겨 보자.

먼저 어떤 40대 여성이 유방암에 걸렸는가가 관심사이다. 따라서 우리에게는 두 가지 경합하는 가설이 주어진다. 하나의 가설은 그녀가 유방암에 걸렸다이고, 다른 하나의 가설은 그녀가 유방암에 걸리지 않았다는 것이다. 이 가설들은 상호 배타적(mutually exclusive)이고, 총망라적(exhaustive)이다. 우리는 각 가설이 진실이라는 명제에 확률을 부여할 수 있다. 그리고 그 확률의 합은 1이 될 것이다. 베이즈 추론에서는 데이터를 수집하기 전에 부여한 이 확률들을 사전 확률(prior probabilities or priors)이라고 부른다.

다음에는 유방촬영검사을 통해서 데이터를 수집해야 할 것이다. 하지만 그 전에 우리는 두 가설로부터 유방촬영검사 결과(데이터 수집 결과)를 예측한다. 각 가설이 주어졌을 때 특정한 결과(데이터)가 나올 확률을 예측하는 것이다. 베이즈 추론에서는 이 확률이 우도(likelihood)라고 불린다. 실제 우도를 계산하려면 검사 결과가 있어야 한다.

데이터를 수집했다. 유방촬영검사를 했더니 양성(positive)이다. 우리는 유방촬영검사에 있어 유방암 환자의 양성 반응 비율과 비유방암 환자의 양성 반응 비율을 구할 수 있다. 그리고 그 두 가지 비율을 합하면 유방촬영검사 피검자의 양성 반응 비율이다.

끝으로 베이즈 정리를 이용해서 각 가설에 대한 사후 확률(posterior probabilities or posteriors)을 구한다. 사후 확률은 새로운 데이터가 수집된 후 각 가설에 대한 우리의 갱신된 믿음을 나타낸다. 이는 과학의 수레바퀴에서 추론에 해당된다. 그렇게 해서 우리는 새로운 지식을 얻게 되는 것이다.

베이즈 추론에서는 어떤 확률 사건 혹은 불확실한 명제에 대한 사후 확률은 적합한 증거가 주어졌을 때 얻게 되는 조건부 확률이다.  그 조건부 확률을 구하는데 있어 베이즈 정리가 수행하는 역할은 핵심적이다.

정리하면, 베이즈 추론은 새로운 지식을 추가하게 해준다. 즉, 베이즈 추론은 어떤 현상에 대해 가설을 제기하고, 그 가설에 대해 우리가 지닌 현재의 믿음을 제시하며, 증거(데이터)를 수집해서 그 결과에 따라 우리의 믿음을 강화하거나 수정하여 지식을 추가하는 과정이다.  (2020-10-23)

참고 문헌

Donovan, Therese M. and Ruth M. Mickey. 2019. Bayesian Statistics for Beginners. Oxford University Press.

Lave, Charles A. and James G. March. 1993. An Introduction to Models in the Social Sciences. University Press of America, Inc.

학문에서 전공이란…

학문의 길에 들어서면 오래지 않아 전공(攻)을 선택해야 하는 문제에 부딪치게 된다. 현대의 학문은 제도화되어 있고 세분화되어 있기 때문에 자신이 원하든 않든 전공을 선택해야 한다. 먼 옛날에는 학문을 하려면 스승을 선택하거나 무리를 선택해야 했겠지만 오늘날에는 대학과 전공을 선택해야 하는 것이 필수이다.

전공을 선택하고 대학원에 들어가는데, 전공 선택이 무슨 문제인가라고 되물을 사람도 있겠지만, 모든 학문 분야–그것을 흔히 전공이라고 부른다–에는 하위 전공이 또 있다. 그것을 연구 분야 혹은 관심 분야라고 말할 수도 있지만 그것도 전공이라고 부른다.

학계라는 제도권에 들어오지 않고 혼자서 연구하는 사람–요즘은 그런 사람이 극히 드물다–이라면 전공의 칸막이를 무시할 수 있겠지만, 제도권 안에 들어가면 전공의 선택은 한 사람의 미래를 좌우하게 된다. 학문 전공은 제도화되어 있어 그 전공과 운명을 함께 하려는 사람들이 있고, 전공들 사이에 사회적 자원의 배분을 둘러싼 치열한 경쟁이 존재하며, 한 연구자가 갖게 되는 삶의 기회를 결정한다. 학부에서 택하는 전공도 그런 점이 있지만 대학원에서는 그것과 비교할 수 없을 정도로 의미있는 구분이다.

물론 세부 전공으로 들어가면 전공 사이의 벽이 그렇게 심각하지는 않다. 그렇다고 그 차이가 작다고 말할 수는 없다. 당장에 교수 채용시에 세부 전공을 명시하여 전공자와 비전공자를 구분하는 경우가 대부분이다. 비전공자로 분류되면 아예 응시의 기회조차 가질 수 없다.

그런데 우리 사회의 학문 풍토는 아직 전공은 ‘비전공자’를 배제하기 위한, ‘비전공분야’를 배척하기 위한 수단일 뿐 학문의 유행이 거센 폭풍처럼 전공 분야들을 모두 집어삼켜 버린다.  유행이란 폭풍우 속에서 살아남으려면 알아서 변신하라는 요구을 지속적으로 받는다는 말이다.

사회과학만 보더라도 1970년대 경제상장기에는 경제학이 지배적이었고, 격동기인 1980년대에는 사회학이 부상하였으며, 대중 언론의 시대인 1990년대 신문방송학이 대세였다. 그러나, 2000년대에 경제위기를 거치고 인터넷이 일상화되자 신문방송학은 물론이고 사회과학 전체가 헤게모니를 잃었다. 실용주의 분위기 속에서 경영학이나 행정학 같은 실용적인 전공이 그나마 사회과학의 위신을 지켰다.

2000년대 초반을 지나면서 현재 학문의 헤게모니는 사회과학에서 공학 혹은 자연과학으로 넘어갔다. 전산과학을 필두로 물리학, 생명공학, AI, 인지과학, 뇌과학, 데이터과학 등이 학문에 있어 새로운 인식과 문법을 제시하고 있다. 이제 사회과학은 헤게모니는 커녕 그 학문들의 공세로부터 자기를 방어하기에도 급급할 지경에 처해 있다. 대중은 사회현상에 대한 해석과 해답마저 물리학자, 인지과학자, 데이터과학자에게서 찾으려 하고 있다.

사회과학의 전통적인 연구 주제, 연구 방법, 연구 대상이 모조리 도전받고 있다. 마치 아무 일도 없는 것처럼 행동하는 것–사실 거의 대부분의 사회과학자들이 그렇게 행동하고 있다–은 무식하거나 위선적이거나 둘 중의 하나이다.

2020년 노벨 경제학상 수상자들이 누구인가. 경매 이론의 전문가이다. 필자는 일생동안 경매에 서너 번 참가해 보았다. 헌금을 위한 바자회의 경매, 그리고 인터넷 쇼핑에서의 경매가 전부이다. 그런데 그런 현상, 필자가 평생 몇 번 경험할까말까한 사회 현상을 이론화한 학자들이 노벨상을 받은 것이다. 경매가 언제부터 그렇게 중요한 사회현상이 되었는가? 도무지 모르겠다. 하지만 분명한 것은 그들이 경제학 내에서 대단히 실용적인 전공을 했다는 사실이다. 그런데 놀랍게도, 필자가 과문한 탓인지 모르겠지만, 어느 언론도 그것에 대해 문제를 제기하지 않았다. 이 사건(?)은 요즘 세상 돌아가는 모양새를 압축적으로 보여준다.

그렇다면 사회과학에서 전공 선택은 무의미한가? 그렇지는 않다고 생각된다. 전공과 세부 전공은 여전히 현실적으로 한 연구자의 운명을 좌우하고 있다. 그점에서 달라진 것은 없어 보인다.

다만 세상의 변화는 사회과학 자체에 대해 목표 재설정(goal replacement), 재구조화(restructuring), 그리고 재과정화(remodelling)를 요구하고 있다. 한 마디로 무엇이 사회과학인지, 무엇이 사회과학이어야 하는 지를 따지는 메타 사회과학(meta-social science)이 필요하다는 말이다.

나는 사회과학에서 그런 변화가 쉽게 일어나리라 상상하지 않는다. 제도 학문의 관성이 워낙 강하기 때문이다. 맨 윗자리를 차지하고 있는 학자들은 굳이 그런 노고를 해야할 필요를 못느끼고 중하위의 자리에 있는 학자들은 생존 게임에 정신이 없다. 아마도 완전한 몰락 직전에 이르기까지 그들은 “세상은 돌고 도는 것. 언젠가 사회과학이 헤게모니를 되찾게 될 것이다.”라며 자기 암시를 하고 있을 것이다. 과거의 영화를 회상하며 정신 승리에 사로 잡혀서 말이다. 안타깝지만 그것이 현실이다.

필자가 미국 대학원에 진학할 때인 1980년대에는 종속이론, 발전이론 같은 거시사회학이 유행이었다. 그런데 대학원 공부를 시작한 지 1년도 채 지나지 않아 필자는 사회심리같은 미시사회학의 매력에 빠졌다. 그리고 그것을 공부하는데 필요한 조사방법과 통계분석에 푹 빠졌다. 미국에서는 그러한 전공 분야를 방법론(methodology)이라고 부른다.

박사 과정에 들어가서도 처음에는 방법론 공부에서 별로 벗어나지 않았다. 그런데 베를린 장벽이 무너진 후 어느 날 내게 사회학 전공에 대한 회의가 찾아들고 나는 생활 지도교수(personal advisor)와, 경제학으로 전공을 옮길까 고민 중이라는 상담을 나누었다. 그 때 그는,

“이제 논문만 쓰면 사회학 학위를 받는데 굳이 전공을 바꾸려 하느냐, 그냥 사회학에 남아서 경제학을 공부하면 되지 않겠냐?”라면서 나를 적극 만류했다. 그래서 나는 전공을 바꾸지 않은 채 경제학을 ‘자유롭게’ 공부했다.

그리고 얼마 지나지 않아 학위 논문 지도교수(academic advisor)와 논문 주제를 바꾸었다. 필자의 새로운 논문 지도교수가 된 생활 지도교수는 논문 주제에 대해 고민하던 내게 한 마디를 툭 던졌다.

“박사 학위는 독립적 연구 능력을 인정받는 정도의 의미 밖에 없다. 빨리 학위를 받고 나가서 무엇이든 네가 하고 싶은 연구를 해라.” 그의 충고를 수용한 필자는 미시사회학과 거시사회학을 분주히 넘나들며 학위 논문을 마치고 학계에 퉁겨져 나왔다.

그런데 문제가 생겼다. 학자로서의 나를 정의할 수가 없었다. 나의 세부 전공을 특정할 수가 없었던 것이다. 미국에서는 그냥 방법론 전공이라고 하면 무난하지만 우리나라에서는 방법론은 전공으로 인정받지 못했다. 그냥 누구나 하는 것이 방법론이라는 인식이 지배적이었다.

학위를 받고 나와서 나는 고민했다. 무엇을 내 전공으로 삼을까? 무엇이 나의 가장 큰 관심사인가? 내가 평생동안 흥미를 잃지 않고 연구할 분야와 대상은 무엇일까?

한참을 헤매다 선택한 것이 정보기술과 사회, 정보기술과 인간이라는 주제였다. 대학원 시절 당시에 조사방법과 통계를 공부하려면 컴퓨터와 프로그래밍이 필수였고, 덕분에 나는 전산과학과 통신공학을 일찍 접할 수 있었다.

아직 인터넷이 대중화하기도 전인 1990년대 중엽 나는 정보기술에 대한 사회학적 분석을 나의 전공 분야로 선택했다. 그렇게 해서 ‘정보사회학’이라는 전공을 시작했다. 아직 ‘정보사회학’이라는 이름조차 없던 시절이었다. 그리고 그 후 4반세기가 넘도록 나는 그 전공을 공부하고 실천했다.

학문의 유행이 승용차 외형의 유행만큼이나 자주 바뀌는 우리 사회에서 25년을 정보사회학자로 살아올 수 있었음은 큰 행운이었다. 다른 전공 분야를 기웃거리지 않아도 사회적 관심, 명예, 물질 같은 자원을 부족하지 않게 나눠받으며 살아올 수 있었으니 말이다.

은퇴 후 지금은 잠시 대학원생 시절로 돌아갔다. 재직시 시간과 일에 쫓겨서 할 수 없었던 공부에 그야말로 매진하고 있다. 두문불출하면서 책을 읽고, 인터넷 강의를 듣고, 생각하고, 글을 쓰면서 하루를 보낸다.

30년만에 공부하는 수학과 통계학이 쉽지 않지만 그래도 대학원 시절 공부하던 것과 연결이 되니 크게 어렵지는 않다. 간혹 지금 같았으면 대학원 공부를 더 잘 할 수 있을텐데 하는 생각이 들기도 한다. 수학 때문에 무척 고생했기 때문이다. 대학원에 진학했을 때는 수학 공부에 손을 놓은 지 이미 10년이 지났었다. 수학을 조금만 제대로 복습했더라면 그렇게 고생하지 않았을텐데 그럴 여유가 없었다. 능력이 부족한 나는 사회학 고전을 읽고 수업을 따라가기에 급급했다.

은퇴 후 지난 8월까지는 정보사회학 지식을 보완했고, 연말까지는 사회통계의 리모델링을 마칠 예정이다. 누구 한 사람도 내게 그런 일을 요구하지 않았지만, 나는 그 작업들을 해낼 수 있고, 또 누구보다 잘 할 수 있으리라 믿기 때문에 죽는 날까지 나는 그런 작업을 계속할 예정이다.

학자가 자신의 전공과 맺는 인연은 이토록 질긴 것인지도 모른다. 죽는 날까지 함께 하는 그런 인연 말이다. (2020-10-21).

베이즈 통계(3): 베이즈 정리의 확장

(1) 베이즈 정리는 조건부확률 을 구하는 공식이다. –> 흔히 X는 데이터이고 Y는 모수(parameter)이다. 베이즈 정리는 데이터가 주어졌을 때 모수를 얻게 될 확률을 구하는 과정이다.

(2) 베이즈 정리는 역조건부 확률 을 가지고 조건부 확률 을 구하는 공식이다. –> 역조건부 확률 는 우도(likelihood)라고 부른다. 흔히 그것은 경험적으로 주어진다.

(3) 베이즈 정리는 역조건부 확률 이 주어졌을 때 어떤 사건의 확률 이 조건부 확률 로 바뀌는 과정이다. –> 여기서 를 데이터를 얻기 이전 확률이라는 의미에서 사전 확률(prior)이라고 부르고 를 데이터를 얻은 후 확률이라는 의미에서 사후확률(posterior)이라고부른다. 베이즈 정리에서 데이터를 포착해 주는 부분이 우도이다.

(4) 베이즈 정리는 조건의 해당되는 확률변수(X)의 주변확률 로 정규화된 값이다. –> 를 정규화 상수(normalizing constant)라고 부른다.

예제 1) 미국에서 정기적으로 건강 검진을 받는 40대 여성의 1%가 유방암을 가지고 있다. 유방암에 걸린 여성의 80%가 유방촬영검사(mammogram test)에서 양성 반응을 보였으며, 유방암을 걸리지 않은 여성 중 9.6%도 유방촬영검사에서 양성 반응을 나타냈다. 어떤 40대 여성이 정기 검진 때 유방촬영검사에서 양성 반응이 나왔다면 그녀가 실제로 유방암에 걸려 있을 확률은 얼마인가?

해제) 먼저 사건의 정의, 주어진 정보, 그리고 문제를 확률기호로 표기한다.

사건의 정의:

X: 유방활영검사: x1: 양성, x2:음성  Y: 유방암 발병: y1: 발병, y1: 발병 않음

주어진 정보:

문제:

이렇게 번역해 놓고 보니 역 조건부 확률(유방암일 때 검사 양성반응일 확률)을 이용해서 조건부 확률(검사 양성반응일 때 유방암일 확률)을 구하는 베이즈 정리의 응용 문제임이 분명하다. 베이즈 정리를 적용하려면, 역조건부확률 뿐 아니라 확률변수들의 주변확률을 알아야 한다. 그런데 주변확률 P(Y)와 P(X)에 대한 정보가 주어져 있으니 조건부확률을 구하는데 필요한 모든 정보를 다 가지고 있다.

분모인 주변 확률 P(X=x1)는 X=x1 일 때 모든 Y 값의 결합확률의 합이다. 즉, P(X=x1) = P(X=x1∩Y=y1) + P(X=x1∩Y=y2)이다. 그런데 결합확률 P(X=x1∩Y=y1) 는 다름 아닌 분자이다. 조건부 확률결합확률 나누기 조건의 주변확률이기 때문에 결합확률은 조건부확률 곱하기 조건의 주변확률이다.

이제 식 (1)에 주어진 값들을 대입하면 된다.

이 예제를 음미해 보면, 40대 여성의 유방암 발병율은 사전확률(prior)이고, 유방암 환자의 유방촬영검사 양성 반응의 비율은 경험적으로 구할 수 있는 우도(likelihood)이다. X=x1은 유방촬영검사 결과로 얻은, 조건에 해당되는 데이터이다. 이 예제는 어떤 여성의 유방촬영검사 결과가 양성일 때 그녀가 실제 유방암에 걸려 있을 확률이라는 사후확률(posterior)을 묻고 있다.

유방암촬영검사의 결과가 양성으로 나왔는데도 그 사람이 실제로 유방암에 걸렸을 확률이 0.08밖에 되지 않는다. 검사 장비의 성능이 나쁘지 않는데도 말이다. 그것은 무엇보다 유방암 발병율 자체가 0.01로 낮기 때문이다. 이는 모든 희귀병 검사에 적용될 수 있다. 즉, 베이즈 통계는 희귀병의 경우 설령 그 질병에 대한 검사 결과가 양성일지라도 실제 그 병에 걸렸을 확률이 낮다는 사실을 드러내 준다.

예제 2) 이메일의 스팸을 걸러내는 소프트웨어에는 베이즈 이론이 적용된다. 영어로 된 스팸메일에서 가장 많이 나타나는 단어가 shipping!이다. 스팸 메일 중 shipping!을 포함하는 메일의 비율은 0.051이고, 스팸이 아닌 메일에서 shipping!을 포함하는 메일의 비율은 0.0015이다. 그리고 많은 메일 중에서 10%가 스팸 메일이다. 만일 메일이 shipping!을 포함하고 있다면 스팸일 확률은? 만일 메일이 shipping!을 포함하고 있음에도 불구하고 스팸이 아닐 확률은? 만일 메일이 shipping!을 포함하고 있다면 스팸이라고 판명해야할까?

해제)

사건의 정의

X: 이메일에 shipping!이 단어 출현 여부. x1=shipping!이 있음, x2=shipping!이 없음

Y: 스팸 메일 여부. y1 =스팸 메일, y2=스팸 메일이 아님

주어진 정보

문제

이 문제도 역시 역 조건부확률을 알고 있을 때 조건부확률을 구하는 베이즈 정리 응용 문제이다. 주변확률 P(Y=y1)는 주어져 있고, P(X=x1)는 주어진 정보로부터 구할 수 있다.

그런데,

이 값들을 식 (1)에 대입하면,

매번 조건의 주변확률을 구하기가 쉽지 않다. 사실 조건의 주변확률을 구하는데 부딪치는 어려움이 오랫동안 베이즈 통계의 아킬레스 건이었다.

이제 다음 베이즈 정리에서 우항의 분자, 분모의 값을 다 구했다.

분자는  결합확률 이다. 분자, 분모 값을 위 식에 대입하면 답을 구할 수 있다.

이메일에 shipping!이라는 단어가 들어가면 그 메일이 스팸일 확률이 약 80%이니 그 메일이 스팸이라고 분류해도 될 것이다.

이 문제에서 사전확률(prior)은 이메일 중 스팸 메일의 비율인 0.1이다. 우도(likelihood)는 스팸 메일일 때 shipping!이라는 단어가 들어가 있을 확률인 0.051이다. 정규화 상수(normalizing constant)는 조건의 주변확률(이메일에 shipping!이 들어있을 확률이다)인 0.00645이다.

이를 일반적인 용어를 사용해 풀어보면, 모든 메일 중 10%가 스팸 메일이니, 우리에게 다른 정보가 없다면, 어떤 메일이 스팸일 확률을 0.1이라고 추측하면 될 것이다. 그런데, 그 이메일이 shipping!이라는 단어를 담고 있다면, 우리의 추측은 크게 향상되어서 그 메일이 스팸일 확률이 0.79라고 추정하게 된다. shipping!이라는 단어가 들어 있다는 정보 하나로 어떤 이메일이 스팸일 확률이 비약적으로 올라갔다.

(예제 3) 서로 다른 두 납품업체(공급자 1과 공급자 2)로부터 원자재를 공급받는 제조회사가 있다. 현재 공급자 1로부터 65%의 원자재를 구매하고, 공급자 2로부터는 35%를 구매한다. 한편 그 동안 두 업체로부터 납품 받은 원자재의 품질은 아래와 같다.

편집
좋은 품질 비율(%) 나쁜 품질 비율(%)
공급자 1 98 2
공급자 2 95 5

그런데, 제품 생산 과정에서 어떤 원자재가 불량으로 나타났다. 그 원자재가 공급자 1로부터 왔을 확률은 얼마이고, 공급자 2로부터 왔을 확률은 얼마인가?

해제)

사건의 정의

X: 원자재의 품질 수준. x1=좋은 품질의 원자재, x2=나쁜 품질의 원자재

Y: 납품 공급자.  y1 = 공급자 1로부터 납품 받음, y2 = 공급자 2로부터 납품 받음

주어진 정보

이 문제 풀이의 첫 번째 관건은  표에 있는 데이터를 어떻게 해석할 것인가이다. 예컨대 공급자 1이 좋은 품질의 원자재를 납품할 확률은 98%이다. 이 진술은, 공급자가  1일 때(조건), 좋은 품질의 원자재일 확률, 즉, 조건부 확률이 0.98임을 말한다. [공급자가 1이면서 좋은 품질의 원자재를 납품할 확률(즉, 결합확률)을 의미하는 것이 아님에 유의할 것.]

이 문제 풀이의 두 번째 관건은 주변확률, 를 구할 수 있느냐이다. 역시 이 문제에서도 분모에 들어가는 조건 사건의 주변확률을 구하는 것이 관건이다.

문제를 베이즈 정리 형식으로 표현해 보자. 어떤 원자재가 불량(나쁜 품질)일 때, 그 원자재가 공급자 1로부터 왔을 확률은 다음과 같이 표시할 수 있다.

우변에서 먼저 분모에 있는 X=x2의 주변 확률을 구하자. 그것은 해당되는 결합확률을 모두 더한 값이다. 즉,

이다.

그런데 곱셈법칙(결합확률 = 주변확률 * 조건부 확률)에 의하면,

이 값들을 식 (3-2)에 대입하면,

우리는 식 (3-3)의 우변에 확률값을 모두 알고 있다. 그 값들을 대입해서 를 구하자.

다시 식 (3-1)로 돌아가서 확률값들을 대입한다.

즉, 원자재가 불량일 때, 그것이 공급자 1로부터 왔을 확률은 0.426이다. 그렇다면 공급자 2로부터 왔을 확률은 0.574(= 1-0.426)가 될 것이다.

공급자 1의 납품비율은 0.65이다. 이는, 추가 정보가 없는 상태에서 어떤 원자재를 지목했을 때 그것을 공급자 1이 납품했을 확률이 0.65라고 추정될 수 있음을 의미한다. 그런데 그 자재가 불량이라는 정보가 추가되니 그것을 공급자 1이 납품했을 확률이 0.426으로 떨어졌다. 사전정보(prior)은 0.65이고, 사후정보(posterior)는 0.426이다. 공급자 1이 납품한 원자재가 불량일 확률 0.02는 우도(likeihood)이다. 어떤 원자재가 불량일 확률(P(X = x2) 0.0305는 정규화 상수(normalizing constant)이다.

세 개의 예제를 가지고 베이즈 정리가 확장되어 어떻게 응용되는가를 알아보았다. 다음 포스팅에서는 베이즈 정리가 조건부 확률을 구하는 도구를 넘어서 과학 연구의 도구로 사용되는 논리적 근거를 살펴보자. (2020-10-20)

베이즈 통계(2): 조건부 확률 가지고 놀기

베이즈 통계는 조건부 확률(conditional probability)에서 출발한다. 때문에 조건부 확률은 베이즈 통계의 기초 중의 기초이다. 조건부 확률에 익숙해질수록 베이즈 통계가 가깝게 다가온다. 그래서 이번 포스팅에서는 조건부 확률을 가지고 좀 놀아보자.

베이즈 통계의 입문을 조건부 확률과 함께 시작한다는 것은 중요한 의미가 있다. 무엇보다 조건부 확률은 두 확률변수의 결합(joint 혹은 conjoint)이 전제된다. 이는 베이즈 통계가 두 변수 이상의 관계를 다룬다는 점을 시사한다. 빈도주의 통계의 적지 않은 부분이 한 변수에 관한 것이라는 점을 상기한다면 이는 가벼운 특성이 아님을 알 수 있다.

조건부 확률은 두 확률변수(X, Y라고 하자)가 있을 때, 그중 하나(e.g. X)가 발생할 때 다른 하나가 발생할 확률을 말한다. 조건부 확률은 아래와 같이 여러가지 방식으로 표기된다.

이 중 가장 간단한 로 표기로 시작하자. X가 발생할 때, Y가 발생할 확률이라고 읽는다(영어로는, probability of Y, given X occurs 혹은 그냥 간단히 probability of Y, given X라고 한다). X가 발생한다는 말은 X가 특정값(x)을 갖는다는 의미이며, Y가 발생한다는 말은 Y가 특정값(y)를 갖는다는 의미이다.

X, Y의 조건부 확률은 X, Y의 결합확률을 조건에 해당되는 변수의 주변확률로 나누어 얻는다. 확률에서 조건이란 어떤 확률변수의 범위에서 특정한 조건을 충족하는 범위만을 보겠다 혹은 관심을 가진다는 것이다. 결합확률(joint probability or conjoint probability)이란 두 확률변수가 동시에 발생하는 경우의 확률을 의미하며, 주변확률이란 결합확률이 주어졌을 때 두 변수 중 한 변수의 확률만을 가리킨다. 예를 가지고 보자.

미국 어느 대도시 경찰의 성별에 따른 승진 현황이 있다고 하자. 한 확률변수는 성별, 다른 하나의 확률변수는 승진 여부이다. 승진 현황은 다음과 같은 교차표로 요약된다.

논의를 간략히 하기 위해 사건을 다음과 정의한다.

X: 경찰관의 성별. = 남자, = 여자

Y: 경찰관의 승진 여부. = 승진, = 승진 탈락

이 표를 기호로 일반화하여 표기하면 다음과 같다.

이 빈도 교차표를 확률로 변환하려면 전체 경찰관 수(N)으로 각 칸을 나누어 주면 된다. 그러면 전체 합이 1인 값들로 바뀐다. 그런 의미에서 확률은 전체의 합을 1로 만드는 정규화(normalize)라고 말할 수 있다. 그렇게 해서 아래와 같은 결합확률표(joint probability table)를 얻었다.

여기서 두 확률변수의 결합확률은, 남자이면서 승진할 확률 0.24, 여자이면서 승진할 확률 0.03, 남자이면서 승진하지 못할 확률 0.56, 여자이면서 승진하지 못할 확률 0.17 네 개이다. 주변확률은 남자일 확률 0.80, 여자일 확률 0.20, 승진할 확률 0.27, 승진하지 못할 확률 0.73 네 개이다.

일반화를 위해 이 결합확률표는 다음과 같이 기호로 표시될 수 있다.

남자일 주변확률 은 남자일 때 승진하거나 승진하지 못한 확률을 모두 합한 값이다.  여자일 주변확률 은 여자일 때 승진하거나 승진하지 못한 확률을 모두 합한 값이다. 승진할 주변확률 은 승진할 때 남자이거나 여자일 확률을 모두 합한 값이다. 승진탈락의 주변확률 은 승진 탈락할 때 남자이거나 여자일 확률을 모두 합한 값이다.

주변확률에 대해 이렇게 장황하게 설명하는 것은 한 변수가 특정값을 가질 때 그 사건의 주변확률은 다른 변수의 모든 발생 확률을 더한 값이라는 사실을 보여주기 위해서이다.

앞에서 조건부 확률이란 한 변수가 발생할 때(즉, 특정값을 가질 때), 다른 변수가 발생할(다른 변수가 특정값을 가질) 확률이라고 했다. 만약 성별이 조건으로 주어진다면, 조건부 확률은, 경찰관이 남성일 때(혹은 반대로 경찰관이 여성일 때)에 국한해서 확률값을 계산하겠다는 것이다. 그러면 주변확률값을 1로 만드는 정규화를 하면 된다. 예컨대 경찰관이 남성일 때 승진할 확률을 구한다면, 그것은 라는 조건부 확률을 계산하겠다는 말이다. 그 조건부 확률은 남성이면서 승진할 확률(결합확률)을 남성인 주변확률로 나눈 값이다. 그것은 아래와 같이 표시할 수 있다.

어떤 경찰관이 남성일 때 승진에 탈락할 확률 도 마찬가지 방식으로 구할 수 있다.

기억하기 쉽게 말하자면, 조건부 확률은 결합확률 나누기 주변확률이다.

이번에는 조건을 바꾸어보자. 어떤 경찰관이 승진했다. 그 경찰관이 남성일() 확률 은 아래와 같을 것이다.

그런데, 만약 우리가 결합확률표를 구성할 수 없어 결합확률을 알지 못하고 대신에  역 조건부 확률(inverse conditional probability)과 두 확률변수의 주변확률을 알고 있을 때 조건부 확률을 구하는 방법을 생각해보자. 즉, 을 구하는데, , 을 알고 있다는 것이다. 식(2)에서 양변에 을 곱하면 다음과 같이 될 것이다.

그리고 교환법칙에 의해,

이므로, 식(1)의 우변 분자에 식(3)을 대입할 수 있다. 그러면 아래 식을 얻게 된다.

식(4)는 아래와 같이 일반화하여 간략히 쓸 수 있다.

드디어 베이즈 정리(Bayes’ theorem)가 도출되었다. 베이즈 정리는 결합확률을 모를 때 역조건부확률과 두 확률변수의 주변확률을 가지고 조건부 확률을 구하는 공식에 다름 아니다. 그런데, 이 간단한 공식의 응용범위가 놀랍도록 넓다. 그래서 그것은 정리의 자리를 꿰어찼다.

베이즈 정리를 보면 몇 가지 성질이 읽힌다.

(1) 베이즈 정리는 조건부확률 을 구하는 공식이다.

(2) 베이즈 정리는 역조건부 확률 을 가지고 조건부 확률 을 구하는 공식이다.

(3) 베이즈 정리는 역조건부 확률 이 주어졌을 때 어떤 사건의 확률 이 조건부 확률 로 바뀌는 과정이다.

(4) 베이즈 정리는 조건의 해당되는 확률변수(X)의 주변확률 로 정규화된 값이다.

이 성질은 논리적으로 다음과 같이 확장될 수 있다.

(1) 베이즈 정리는 조건부확률 을 구하는 공식이다. –> 흔히 X는 데이터이고 Y는 모수(parameter)이다. 베이즈 정리는 데이터가 주어졌을 때 모수를 얻게 될 확률을 구하는 과정이다.

(2) 베이즈 정리는 역조건부 확률 을 가지고 조건부 확률 을 구하는 공식이다. –> 역조건부 확률 우도(likelihood)라고 부른다. 흔히 그것은 경험적으로 주어진다.

(3) 베이즈 정리는 역조건부 확률 이 주어졌을 때 어떤 사건의 확률 이 조건부 확률 로 바뀌는 과정이다. –> 여기서 를 데이터를 얻기 이전 확률이라는 의미에서 사전 확률(prior)이라고 부르고 를 데이터를 얻은 후 확률이라는 의미에서 사후확률(posterior)이라고부른다. 베이즈 정리에서 데이터를 포착해 주는 부분이 우도이다.

(4) 베이즈 정리는 조건의 해당되는 확률변수(X)의 주변확률 로 정규화된 값이다. –> 정규화 상수라고 부른다.

조건부 확률을 가지고 꽤 멀리 왔다. 다음 포스팅에서는 예제를 가지고 확장된 베이즈 정리의 함축성을 찾아보자.(2020-10-19)