Naive Bayes(나이브 베이즈)는 머신러닝에서 가장 단순하면서도 빠르게 쓸 수 있는 분류 알고리즘입니다. 조건부 확률을 기반으로 하며, 각 특성이 독립이라는 가정을 전제로 합니다. 이 때문에 "Naive(순진한)"이라는 이름이 붙었지만, 텍스트 분류, 스팸 필터링, 의료 진단 등 다양한 분야에서 놀라운 성능을 보여줍니다.
✅ 핵심 아이디어
- 베이즈 정리를 활용해 입력 데이터가 특정 클래스에 속할 확률을 계산합니다.
- 모든 특성이 서로 독립적이라고 가정하여 계산을 단순화합니다.
🔍 수식으로 표현하면:
클래스 Cₖ에 대해 입력 x = (x₁, x₂, ..., xₙ)이 주어졌을 때
→ P(Cₖ | x) 가 가장 높은 클래스를 선택합니다.
🧪 주요 종류
종류용도
| Gaussian Naive Bayes | 연속형 데이터 (정규분포 가정) |
| Multinomial Naive Bayes | 텍스트 분류 (단어 빈도 기반) |
| Bernoulli Naive Bayes | 이진 특성 데이터 (단어 유무 등) |
🧩 장단점 정리
장점
- 빠르고 계산 효율적
- 고차원 데이터에서 성능 우수
- 소규모 데이터셋에서도 안정적
단점
- 특성 간 상관관계를 고려하지 않음
- 연속형 특성은 정규분포라는 가정이 필요
🧘 한마디 정리
단순한 가정이 오히려 강력한 성능을 낳는다.
Naive Bayes는 지금도 많은 실전 문제에서 유용하게 쓰이는 분류기입니다.
🔗 관련 글도 함께 보세요:
'Dev' 카테고리의 다른 글
| 🧠 문맥을 이해하는 예측 모델, CRF (1) | 2025.07.18 |
|---|---|
| Hidden Markov Model(HMM) (0) | 2025.07.18 |
| [머신러닝] Support Vector Machine (SVM) (0) | 2025.07.18 |
| [머신러닝] Feed-forward Neural Networks (0) | 2025.07.17 |
| [머신러닝] Logistic Regression (0) | 2025.07.17 |