본문 바로가기
AI Research/Artificial Intelligence

[인공지능 기초] 나이브 베이즈 분류(Naive Bayes Classification)

by ga.0_0.ga 2023. 2. 28.
728x90
반응형

▶ 베이즈(Bayes) 정리

나이브 베이즈 분류를 설명하기 전에 먼저 베이즈 정리에 대해 설명하겠습니다. 베이즈 정리는 조건부 확률을 계산하는 방법 중 하나입니다.

조건부 확률 P(A|B)는 사건 B가 발생한 경우 A의 확률을 나타냅니다. P(B|A)를 쉽게 구할 수 있다면 위 식을 통해 P(A|B)도 구할 수 있습니다. 베이즈 정리는 P(A|B) 의 추정이 P(AnB)와 P(B)에 기반을 두어야 한다는 정리입니다. 베이즈 정리의 예제를 하나 살펴보겠습니다.

- 전체 사건 중 비가 온 확률 P(비)=7/20, 비가 오지 않을 확률 P(~비)=1-7/20=13/20

- 그럼 맑은 날 일때 비가 오는 확률인 P(비 | 맑은날)은 얼마일까요? 위 식을 이용해 구할 수 있습니다. 이 값을 구하기 위해서는 P(맑은날|비), P(비), P(맑은날) 이 세개의 값을 알면 됩니다. 계산해야하는 식은 ,

P(| 맑은날) = P(맑은날|) * P() / P(맑은날)

이므로 (2/7) * (7/20) / (10/20) = 0.2 입니다.

이번에는 베이즈 모델을 실제 머신러닝에 사용해보겠습니다. 머신러닝에 사용한다면 아래와 같은 수식을 사용합니다.

다음과 같은 손글씨 이미지가 주어졌을때 입력된 값이 5인지 6인지 판별하는 식은 아래와 같습니다.

P(Y|X,....Xn)은 입력 데이터가 X,....Xn의 특징을 가질때 클래스 Y를 가질 확률을 의미합니다. 위 두 식의 확률을 각각 계산한 뒤 더 높은 확률을 가지는 쪽으로 이미지를 분류합니다.

▶ 나이브 베이즈 분류(Naive Bayes Classification)

나이브 베이즈 분류는 베이즈 정리에 기반한 통계적 분류 기법입니다.클래스 라벨 Y가 주어지면 데이터의 특징 값들 하나하나가 각 클래스에 속할 특징 확률을 계산하는 조건부 확률 기반의 분류 방법이며, 가장 단순한 지도학습(supervised learning)중 하나입니다. 단어별로 나이브 베이즈 분류의 뜻을 설명해보겠습니다.

- 나이브(Naive) : 사전적 의미는 순진하다라는 뜻을 담고 있습니다. 모든 변수들이 동등하다는 것을 의미합니다.

- 베이즈(Bayes) : 입력 특징이 클래스 전체의 확률 분포 대비 특정 클래스에 속할 확률을 베이즈 정리를 기반으로 계산합니다.

나이브 베이즈는 입력 데이터 feature들끼리 서로 독립이라는 조건이 필요합니다. 예시를 들어 설명해보자면, 스팸 메일 분류 작업에서 광고성 단어 개수와 비속어 개수가 서로 연관이 없어야 합니다. 나이브 베이즈의 수식은 아래와 같습니다.

위의 베이즈 모델과의 수식의 차이를 확인할 수 있습니다. 베이즈 모델은 모든 특징값인 X,....Xn이 클래스 Y를 가질 확률을 계산하는 것이었다면 나이브 베이즈는 X1이 Y를 가질 확률, X2이 Y를 가질 확률, ... , Xn이 Y를 가질 확률을 각각 계산하여 곱해줍니다. 나이브 베이즈 모델 또한 예시를 살펴보겠습니다.

날씨, 기온, 습도, 바람 세기가 주어졌을 때 밖에 나가 놀것인지 아닌지에 대한 데이터입니다. 위 데이터를 확률과 함께 좀 더 보기 좋은 형태로 정리해두겠습니다.

아래쪽 A New Day에 해당하는 새로운 데이터가 주어졌을 때 밖에 play가 yes일지 no일지 나이브 베이즈 모델로 확률을 계산해보겠습니다.

- Yes

- No

No의 확률이 더 크기 때문에 새로운 데이터는 No로 분류됩니다.

▶ 나이브 베이즈 분류의 장단점

- 장점 : 간단하고 빠르며 효율적입니다. 노이즈와 누락 데이터를 잘 처리할 수 있습니다. 데이터의 크기에 크게 영향을 받지 않으며 예측을 위한 추정확률을 쉽게 얻을 수 있습니다.

- 단점 : 모든 특징이 동등하게 중요하고 독립이라는 가정이 잘못되는 경우가 자주 있어 나이브 베이즈를 사용할 수 없을 때가 많습니다. 수치 값이 많은 데이터에는 추론이 복잡해지기 때문에 이상적이지 않습니다. 추정된 확률이 예측된 클래스보다 신뢰도가 낮습니다.

728x90
반응형

댓글