지도학습 – 7. 나이브 베이즈와 베이즈 이론



나이브 베이즈
지도학습 알고리즘 7

나이브 베이즈란?

나이브 베이즈(Naive Bayes)는 기계 학습 알고리즘 중 하나로, 분류(Classification) 문제를 해결하는데 사용되는 확률적인 예측 모델입니다.

나이브 베이즈는 베이즈 이론(Bayes’ theorem)을 기반으로 하며, 각 특성들이 서로 독립적이라는 가정을 가지고 있습니다. 이 가정으로 인해 “나이브”(Naive)하다고 불리며, 간단하고 빠른 분류 모델로 알려져 있습니다.

(참고로 naive는 순진한, 순해 빠진 등의 뜻을 가지고 있습니다.)

 

베이즈 이론

나이브 베이즈에 대해 설명하기에 앞서 베이즈 이론을 짚고 넘어가겠습니다. 베이즈 이론(Bayes’ theorem)은 조건부 확률을 계산하는 데 사용되는 수학적인 원리입니다.

이 이론은 18세기 영국의 수학자인 토마스 베이즈(Thomas Bayes)의 이름을 따서 지어졌습니다. 베이즈 이론은 주어진 사건의 조건에 따라 사건의 확률을 업데이트하는 방법을 제시합니다. 베이즈 이론은 다음과 같이 표현됩니다:

P(A|B) = (P(B|A) * P(A)) / P(B)

여기서 P(A|B)는 사건 B가 주어졌을 때 사건 A의 조건부 확률을 나타냅니다. P(A)는 사건 A의 사전 확률을, P(B|A)는 사건 A가 주어졌을 때 사건 B의 조건부 확률을, P(B)는 사건 B의 확률을 나타냅니다. 베이즈 이론은 사후 확률(P(A|B))을 사전 확률(P(A))과 가능도(P(B|A))의 곱으로 계산합니다.

(사전 확률: 어떤 사건이 발생하기 전에 이미 알고 있는 확률) (가능도: 어떤 사건이 주어졌을 때 발생하는 사건의 확률로, 주어진 데이터에 기반하여 추정될 수 있습니다.)

조건부 확률을 계산하는 데에는 P(A)와 P(B)가 필요합니다. 베이즈 이론은 이전에 알고 있던 정보(사전 확률)를 새로운 관측 결과(데이터)에 기반하여 업데이트하고, 최신 정보를 반영하여 예측이나 추론을 수행하는 데 사용됩니다.

이를 통해 데이터를 기반으로 한 예측의 신뢰도를 높일 수 있습니다. 예를 들어, 암 환자를 예측하는 상황에서 베이즈 이론을 적용할 수 있습니다. 여러 가지 증상을 가진 환자가 들어왔을 때, 사전 확률로 암 발생률을 가정하고, 해당 환자의 증상이 주어졌을 때 암이 발생할 조건부 확률을 계산하여 최종 예측을 수행할 수 있습니다.

 

알고리즘의 과정

나이브 베이즈 알고리즘의 과정은 단순합니다. 변수들 사이의 독립 가정을 사용하여 확률을 계산합니다. 주어진 데이터를 학습하여 각 클래스의 확률 모델을 구축합니다.분류 작업 시, 주어진 데이터가 각 클래스에 속할 확률을 계산하고, 가장 높은 확률을 가진 클래스로 분류합니다. 아래는 알고리즘의 과정에서 중요한 부분들을 정리한 것입니다.

첫째로, 나이브 베이즈는 베이즈 이론에 따라 조건부 확률을 이용하여 예측을 수행합니다.

베이즈 이론은 사후 확률(Posterior probability)을 계산하기 위해 사전 확률(Prior probability)과 가능도(Likelihood)를 결합합니다. 이를 통해 주어진 특성들에 대한 클래스의 확률을 추정하고, 예측을 수행합니다.

둘째로, 나이브 베이즈는 특성들이 서로 독립적이라는 가정을 가지고 있습니다.

이는 각 특성이 독립적으로 클래스에 영향을 미친다는 가정을 의미합니다. 이 가정으로 인해 모든 특성들의 조건부 확률을 개별적으로 계산할 수 있으며, 간단하게 확률을 곱하여 최종 예측 확률을 계산합니다. 이러한 가정은 학습과 예측 과정을 간단하게 만들어줍니다.

마지막으로, 나이브 베이즈는 데이터의 사전 확률과 가능도를 추정하기 위해 훈련 데이터를 사용합니다.

이를 위해 주어진 클래스에 대한 사전 확률과 각 특성 값에 대한 조건부 확률을 계산합니다. 일반적으로는 최대 우도 추정법(Maximum Likelihood Estimation)을 사용하여 파라미터를 추정합니다. 이러한 훈련 과정을 통해 모델을 학습시킵니다.

 

알고리즘의 특징

나이브 베이즈 알고리즘의 장점으로는 먼저, 간단하고 빠른 알고리즘이기 때문에 대용량 데이터 셋에도 적용할 수 있습니다.또한, 특성들 간의 상관 관계가 적을 때 효과적인 성능을 발휘합니다. 마지막으로 작은 학습 데이터 셋에서도 상대적으로 좋은 예측 성능을 보여줍니다.

단점은 독립성 가정이 현실적으로는 만족하기 어려운 경우가 있습니다. 특성들 간의 상호작용이나 종속성이 존재할 경우 성능이 저하될 수 있습니다. 또한, 클래스 간의 불균형이 큰 경우 예측 성능이 저하될 수 있습니다. 이를 보완하기 위해 가중치를 조정하거나 샘플링 기법을 적용할 수 있습니다. 마지막으로 텍스트와 같은 고차원 데이터에서는 “차원의 저주” 문제가 발생할 수 있습니다. 이러한 문제에 대한 대응책이 필요합니다. 차원의 저주에 대해 궁금하신 분들은 아래 참고자료에 올려둔 네이버 지식백과 링크를 참고해주시기 바랍니다.

종합적으로, 나이브 베이즈는 간단하고 빠른 분류 모델로 널리 사용되며, 텍스트 분류, 추천 시스템 등 다양한 분야에서 활용되고 있습니다. 대표적인 예시로는 베이즈 이론에서 설명한 것과 같이 미래의 암 환자를 예측하는 데에도 사용합니다. 나이브 베이즈는 데이터의 독립성 가정이 성립할 때 효과적인 성능을 발휘하며, 대용량 데이터 셋에도 적용 가능합니다. 다만 독립성 가정의 한계와 고차원 데이터에 대한 제약이 있기에 모든 데이터에 적용하기는 어렵습니다. 이러한 특징과 한계를 고려하여 데이터의 특성과 문제에 맞게 나이브 베이즈를 적용하면 좋은 예측 모델을 개발할 수 있습니다.

함께 보면 좋은 글들

 

참고자료

차원의 저주란? (출처: 네이버 지식백과)

Leave a Comment