Naïve Bayes Classifier

나이브 베이즈(Naïve Bayes)는 1950년부터 활발히 연구되어 왔다. 1960년대 초반에는 텍스트 검색 커뮤니티(text retrieal community)에서 다른 이름으로 소개되었고, 단어의 빈도수를 특징으로 활용하여 하나의 범주 혹은 다른 범주(예를 들어 스팸, 스포츠, 정치 등)과 관련된 문서를 판별하는 텍스트 범주 분류(text categorization)를 하는 제일 유명한 방법이었다.

나이브 베이즈는 분류기(classifier)를 구성하는 간단한 기술이며, 분류기들을 학습시키기 위한 한가지 알고리즘이 아니고 동일한 원리를 기반으로 하는 알고리즘의 유형을 말한다.

나이브 베이즈 분류기(Naïve Bayes Classifier)는 확장성이 뛰어나며 변수 개수에 대해 선형적으로 다수의 매개변수가 필요하다.
최대 가능도 학습(maximum-likehood training[1][2])은 많은 다른 형태의 분류기에서 사용하는 값비싼 반복되는 근사치보다 선형적인 시간비용을 사용하는 닫힌 표현식[3]을 평가하여 수행할 수 있다.

조건부 확률을 추정할 경우 예측변수의 수가 매우 클 경우 모든 예측변수가 이진뷴류라 할지라도 많은 레코드가 정확히 일치하는 규칙들을 찾을 수 없게 되는 문제가 있다. 즉, 예측변수들의 조합으로 동시에 발생하는 레코드가 많이 관찰되지 않는다.
이러한 문제를 해결하기 위해 각 집단내의 예측변수에 대한 독립성의 가정을 단순화시키면 동시발생의 확률은 모든 관련 예측변수의 한계변동분을 서로 곱한 값과 같게 된다.

$$P(C_i|X_1,...X_p) = \frac{P(X_1,...,X_p|C_i)P(C_i)}{P(X_1,...,X_p|C_1)+...+P(X_1,...,X_p|C_m)P(C_m)} $$

$$P(C_k|x_1,...x_n) = \frac{1}{Z}p(C_k)\prod_{x=1}^{n}p(x_i|C_k)$$
Z는 특성값들이 주어진 경우 상수가 되는 $x_1,...,x_n$에만 의존하는 스케일링 팩터이다

나이브 베이즈 분류는 앞에서 본 나이브 베이즈 확률 모델과 결정규칙을 조합한 것인데, 공통적으로 클래스 $k$, 즉 $C_k$에 대해서 다음 식을 통해 최대 확률을 갖는 클래스 $k$를 찾는 것이다.

$$\hat{y} = \underset{k \in {1, \dots, K}}{\operatorname{argmax}} \ p(C_k) \displaystyle\prod_{i=1}^n p(x_i \vert C_k)$$

참고문헌
Naive Bayes classifier
확률(Probability) vs 가능도(Likelihood)


  1. 가능도(likehood, 우도)는 주어진 표본에서 가장 가능한 모수를 추정하는 척도이다. 예를 들어 동전을 3번 던져서 (앞,앞,앞)가 나올 확률을 계산해보면 1/8이다. 가능도는 이미 동전을 3번 던져서 (앞,앞,앞)가 나왔을 때 동전의 확률이 1/2일 가능한 모수가 얼마인지 찾는 방식이다. ↩︎

  2. 최대가능도(maximum-likehood, ML)은 어떤 확률변수에서 표집한 값들을 토대로 그 확률변수의 모수를 구하는 방법이다. ↩︎

  3. 닫힌표현식(closed-form expression)은 수학에서 한정된 수의 연산에서 평가할 수 있는 수학적 표현이다. ↩︎