본문 바로가기

데이터 다루기/머신러닝 이론

[머신러닝] MAP (Maximum a Posterior)

728x90
반응형

안녕하세요.

이번에는 MAP에 대해서 배워보도록 하겠습니다.

우선 머신러닝에서 MAP의 의미에 대해서 알아보죠.

예를 들어서, 우리는 어떤 데이터 셋 D를 가지고 있습니다.

우리는 D를 가지고 분류문제를 수행하는 의사결정나무 알고리즘을 만들어야 합니다.

D를 분류할 수 있는 의사결정나무는 무수하게 많이 있을것입니다.

이 때, 의사결정나무 하나하나는 가설 h로 정의됩니다.

그렇다면 최적의 의사결정나무는 무엇일까요??

그것을 바로 데이터 D가 주어졌을 때, 가설이 맞을 확률 (사후 확률)을 최대화 하는 것입니다.

이 때, 사후확률을 최대로 하는 가설을 MAP라고 정의합니다.

수학적으로 정의해보록 하겠습니다.

식을 해석해보면, MAP는 사후확률 P(h|D)를 최대로 하는 가설 h를 찾는 것입니다. P(D)가 사라진 이유는 P(D)는 h값에 의해 변하는 값이 아니므로, 최대화하는 과정에서 사라져도 같은 값이 나옵니다.

즉, MAP를 찾기 위해서는 P(D|h) 와 P(h)의 값을 알아야합니다.

P(D|h)는 우도 (likelihood)로 가설이 주어졌을 때, 데이터가 관찰될 학률로 쉽게 계산할 수 있습니다.

하지만 문제는 바로, P(h)입니다.

현실 문제에서 가설은 무한히 많은데, 이 모든 가설이 나올 확률 P(h)를 정의하는 것은 불가능한 일입니다.

따라서 최고의 가설을 찾기 위한 방법으로 모든 가설에 대하여 P(h)를 동일한 값 1로 정의하고 풀게 됩니다.

이 방법이 저희가 많이 들어본 방법인 최대 우도 방법입니다. (Maximum Likelihood)

이 방법은 다음 포스팅에서 자세히 알아보겠습니다.

반응형