티스토리 뷰

https://biomadscientist.tistory.com/51

 

[오일석 기계학습] 2.2 수학 - 확률과 통계 - 베이즈 정리

https://biomadscientist.tistory.com/47 [오일석 기계학습] 2.2 수학 - 확률과 통계 - 곱 규칙과 전확률 규칙 기계학습이 다루는 데이터는 주로 '불확실성'을 가지고있는 실생활로부터 온 데이터들, 따라서

biomadscientist.tistory.com

 

이전 포스팅에서 베이즈 정리에 대해 공부하였다. 베이즈 정리를 설명하기 위한 문제에서 우리는 재수가 좋게도 모든 상황에 대한 확률을 명확하게 알 수 있었다.(사전확률, 우도, marginal likelihood 등) 그리고 그로부터 쉽게 계산하지 못하는 사후확률을 계산할 수 있었다.

그러나 실생활에서 우리는 이렇게 명확하게 모든 확률을 아는 경우는 매우 드물다.

다음과 같은 상황을 가정해보자.

(a)그림의 경우에는 사전확률이 명확하지 않은 경우이다. 어떤 병이 뽑힐 확률을 알아야하는데 명확히 알지 못하는 경우이다. 1번 병이 뽑힐 확률을 p1, 2번 병이 뽑힐 확률을 p2, 3번 병이 뽑힐 확률을 p3라고 할때, p1과 p2를 알면 p3는 자동으로 계산되므로 우리는 Θ={p1,p2} 추정을 해야 한다.

(b)그림의 경우 3번 병 공들의 분포를 전혀 알지 못하는 경우이다. 이때 3번 병의 파란공의 분포를 q3라고 하면 하얀 공의 분포는 자동적으로 1-q3로 계산되므로 추정해야 할 파라미터는 Θ={q3}하나가 된다.

(c)그림의 경우는 아주 최악인 상황으로 알고있는 분포가 하나도 없다. 따라서 우리는 최소한 5개의 파라미터를 추정해야 한다. 

이런 막막한 상황에서도 파라미터에 대한 추정이 가능할까? 그것을 추정하기 위한 방법이 바로 최대우도법(Maximum Likelihood Estimation, 이하 MLE)이다.

 

먼저 그나마 간단한 형태인 (b)문제부터 해결해보자, (b)상황 아래에서 여러번의 데이터 추출 시행을 반복하여 데이터 집합 X를 다음과 같이 얻었다고 가정하자.

이때 추정해야 하는 파라미터 q3는 얼마일까? 다음 문제를 수학적으로 풀어쓰면 다음과 같다.

"데이터 집합 X가 주어졌을 때, 데이터 X를 발생시켰을 가능성을 최대로 하는 파라미터 Θ={q3}의 값을 찾아라"

다음 문장은 최적화 문제이며 이를 수식으로만 나타내면 이렇게도 표현할 수 있다.

최대 우도 추정이라는 이름이 붙은 이유는 베이즈 정리에서 기인하는데 이를 베이즈 정리 식으로 풀이하면 다음과 같이 나타낼 수 있다.

이때 P(X|q3)는 베이즈식에서 우도(Likelihood)라고 이야기한다고 앞선 포스팅에서 공부했었다. 따라서 P(X|q3)값이 Max가 되도록 하는 파라미터인 q3를 추정하는 방식이라 하여 최대우도추정법이라고 이야기한다.

지금은 특정 매개변수 q3에 대해 추정하고 있지만, 문제 (c)처럼 추정해야 하는 매개변수 집합은 언제든지 달라질 수 있으므로 일반화하여 최대우도추정을 식으로 나타내면 다음과 같다.

 

다시 문제 (b)로 돌아와서 추출된 데이터 집합X는 i.i.d condition을 만족한다고 가정하자. (i.i.d condition에 대해서는 추후 포스팅하여 다룰 예정이다. 지금은 그냥 데이터 집합이 i.i.d라는 조건을 만족하지 않는다면 MLE를 사용할 수 없다는 정도로만 이해하고 넘어가자)

최대 우도는 다음과 같이 구해진다.

여기서부터 머리가 아프기 시작할텐데 차근차근 설명해보자.

좌항의 P(X|Θ)는 우리가 구하고자 하는 우도(likelihood)값이다. Θ는 수없이 많은 파라미터 값들중 하나이다. 예를들어 위에서 설명한 문제의 경우 q3는 3번째 병에서 파란색 공이 뽑힐 확률(분포) 였으니 q3의 경우 0~1사이의 무수한 실수값 중 한가지이다. X는 파라미터 Θ를 가정했을때(3번 병에서 파란공이 뽑힐 확률을 특정한 실수로 가정했을때) 반복 시행으로 얻어진 데이터의 집합이다.

우항을 살펴보자 데이터 집합 X가 i.i.d condition을 만족한다는 것은 아주 간략하게 설명하자면 각각의 데이터 추출은 같은 분포에서, 서로 독립인 환경을 전제하여 시행된다는 의미인데, 아주 대표적으로 동전 던지기를 생각하면 된다.

동전은 매번 독립적으로 추출되며 (independence, 즉 첫번째 던진 동전의 결과가 두번째 던지는 동전에 아무런 영향도 미치지 않는다. [억지를 부리자면, 첫번째 동전을 무식하게 강하게 던지는 바람에 동전이 휘어져버려서 다음 동전은 뒷면이 나올 확률이 앞면이 나올 확률보다 커졌다. 같은 경우에는 independence라는 조건을 만족하지 못하게 된경우이다.])

같은 분포에서 추출된다. (identical distribution, 즉 앞면과 뒷면이 동일하게 1/2확률로 시행된다, 동전을 던질때마다 앞면과 뒷면이 나올 확률이 달라지지 않는다. [억지를 부리자면 이 동전은 요술동전이라 어쩔땐 앞면이 1/6확률로 나오고 어쩔땐 앞면이 1/2확률로 나오며 어쩔땐 1/33확률로 나온다면 이 동전은 identical distribution을 만족하지 않는 동전던지기이다.])

정신을 바짝 차리자, P(X|Θ)는 글로 풀어쓰면 파라미터 Θ가 주어졌을 때, 데이터 집합 X가 얻어질 확률을 의미한다. 데이터 집합은 어찌되었든 x1으로부터 시작해서 xn까지 추출을 거쳐 얻어진다. i.i.d condition을 만족해야하므로 이 추출은 복원추출일 수밖에 없고, 매번 데이터가 얻어질 확률은 동일하므로 P(X|Θ) = P(x1,x2,...,xn|Θ)로 나타낼 수 있다. 여기까진 직관적인 이해의 영역이라 더 자세히 설명하지 않는다.

다음 P(x1,x2...xn|Θ)는 i.i.d condition을 만족하기 때문에 다음과 같이 나타낼 수 있다.

여기서 큰 파이처럼 생긴 수학 기호는 우리가 종종 시그마라고 부르는 Summation 기호의 기능에서 덧셈대신 곱셈을 하라는 기호이다. Summation을 sum 또는 시그마라고 부르듯 이 기호는 product라고 부른다.

출처 https://datascienceschool.net/intro.html

 

다시말해 파라미터를 Θ로 가정했을 때, 데이터집합 X가 뽑힐 확률은 다음과 같다.

첫번째 추출로 x_1이 뽑힐 확률 * 두번째 추출로 x_2가 뽑힐 확률 .... * n번째 추출로 x_n이 뽑힐 확률

그런데 확률은 0~1사이 값임을 생각해보자, 데이터가 10개만 되어도 위 값을 모두 곱하면 상당히 작은 값이 얻어질 것임을 직관적으로 알 수 있다. 그리고 이렇게 작은 값은 컴퓨터 계산에서 치명적인 오류로 작용할 가능성이 매우 높다. 따라서 우리는 위에서 주어진 식에 로그를 취해 최대 로그우도추정(Maximum log Likelihood Estimation)을 주로 이용한다.

최대 로그 우도추정의 식은 다음과 같다.

 

↓ 내용이 혹시나 도움되셨다면 좋아요 눌러주세요 꾸준한 포스팅에 매우 큰 응원이 됩니다 🥰

댓글