나이브 베이즈 분류기: 장단점, 응용 프로그램 및 유형 설명
게시 됨: 2020-12-11빠른 문제 해결 알고리즘이 필요할 때 어디로 가야 할까요? Naive Bayes 분류기로 이동합니다. 다양한 분류 문제를 해결할 수 있는 빠르고 간단한 알고리즘입니다. 이 기사에서 우리는 이 알고리즘이 무엇인지, 어떻게 작동하는지, 그리고 그 품질이 무엇인지 이해할 것입니다. 시작하자.
목차
나이브 베이즈 분류기란 무엇입니까?
나이브 베이즈 분류기는 모든 예측 변수가 서로 독립적이라는 가정과 함께 베이즈 정리에 따라 데이터를 다른 클래스로 분리합니다. 클래스의 특정 기능이 다른 기능의 존재와 관련이 없다고 가정합니다.
예를 들어, 과일이 녹색이고 둥글고 지름이 10인치이면 수박으로 간주할 수 있습니다. 이러한 특징은 존재 여부에 대해 서로 의존할 수 있지만, 각각의 특징은 고려 중인 과일이 수박일 확률에 독립적으로 기여합니다. 이것이 이 분류기의 이름에 'Naive'라는 용어가 있는 이유입니다.
이 알고리즘은 고급 분류 기술을 능가할 수 있기 때문에 매우 인기가 있습니다. 또한 매우 간단하며 빠르게 구축할 수 있습니다.
이 알고리즘의 기초가 되는 Bayes 정리는 다음과 같습니다.
P(c | x) = P(x | c) P(c)/ P(x)

이 방정식에서 'c'는 클래스를 나타내고 'x'는 속성을 나타냅니다. P(c/x)는 예측자에 따른 클래스의 사후 확률을 나타냅니다. P(x)는 예측 변수의 사전 확률이고 P(c)는 클래스의 사전 확률입니다. P(x/c)는 클래스에 따른 예측자의 확률을 나타냅니다.
읽기: Naive Bayes 설명
나이브 베이즈의 장점
- 이 알고리즘은 매우 빠르게 작동하며 테스트 데이터 세트의 클래스를 쉽게 예측할 수 있습니다.
- 다중 클래스 예측 문제에 매우 유용하므로 이를 사용하여 다중 클래스 예측 문제를 해결할 수 있습니다.
- Naive Bayes 분류기는 기능의 독립성 가정이 유지되는 경우 훈련 데이터가 적은 다른 모델보다 더 나은 성능을 보입니다.
- 범주형 입력 변수가 있는 경우 나이브 베이즈 알고리즘은 수치 변수에 비해 매우 우수한 성능을 보입니다.
나이브 베이즈의 단점
- 테스트 데이터 세트에 훈련 데이터 세트에 없는 범주의 범주형 변수가 있는 경우 Naive Bayes 모델은 0 확률을 할당하고 이와 관련하여 예측을 할 수 없습니다. 이 현상을 '제로 주파수'라고 하며 이 문제를 해결하려면 스무딩 기법을 사용해야 합니다.
- 이 알고리즘은 또한 형편없는 추정기로도 악명이 높습니다. 따라서 'predict_proba'의 확률 출력을 너무 심각하게 받아들이지 않아야 합니다.
- 모든 기능이 독립적이라고 가정합니다. 이론상으로는 훌륭하게 들릴지 모르지만 실제로는 독립적인 기능 집합을 거의 찾을 수 없습니다.
나이브 베이즈 알고리즘의 적용
눈치채셨겠지만 이 알고리즘은 사용자에게 많은 이점을 제공합니다. 그렇기 때문에 다양한 분야에서도 많은 응용이 가능합니다. 다음은 Naive Bayes 알고리즘의 일부 응용 프로그램입니다.

- 이 알고리즘은 빠르고 효율적이므로 실시간 예측에 사용할 수 있습니다.
- 이 알고리즘은 다중 클래스 예측에 널리 사용됩니다. 이 알고리즘을 사용하면 여러 대상 클래스의 확률을 쉽게 찾을 수 있습니다.
- Gmail과 같은 이메일 서비스는 이 알고리즘을 사용하여 이메일이 스팸인지 여부를 파악합니다. 이 알고리즘은 스팸 필터링에 탁월합니다.
- 기능 독립성을 가정하고 다중 클래스 문제를 해결하는 데 효과적이기 때문에 감성 분석을 수행하는 데 적합합니다. 감성 분석은 타겟 그룹(고객, 청중 등)의 긍정적 또는 부정적 감성을 식별하는 것을 말합니다.
- Collaborative Filtering과 Naive Bayes 알고리즘이 함께 작동하여 추천 시스템을 구축합니다. 이러한 시스템은 데이터 마이닝 및 기계 학습을 사용하여 사용자가 특정 리소스를 원하는지 여부를 예측합니다.
또한 읽기: 기계 학습 모델 설명
나이브 베이즈 분류기의 유형
이 알고리즘에는 여러 종류가 있습니다. 주요 내용은 다음과 같습니다.

베르누이 나이브 베이즈
여기서 예측 변수는 부울 변수입니다. 따라서 가지고 있는 유일한 값은 'True' 및 'False'입니다('Yes' 또는 'No'도 사용할 수 있음). 데이터가 다변량 베르누이 분포를 따르는 경우 사용합니다.
다항 나이브 베이즈
사람들은 이 알고리즘을 사용하여 문서 분류 문제를 해결합니다. 예를 들어 문서가 '법률' 범주 또는 '인사' 범주에 속하는지 여부를 확인하려는 경우 이 알고리즘을 사용하여 정렬합니다. 현재 단어의 빈도를 특징으로 사용합니다.
가우시안 나이브 베이즈
예측 변수가 이산적이지 않지만 연속 값을 갖는 경우 가우스 분포의 표본이라고 가정합니다.
결론
이 기사가 도움이 되었기를 바랍니다. 나이브 베이즈 알고리즘과 관련하여 질문이 있는 경우 댓글 섹션에서 자유롭게 공유하세요. 여러분의 의견을 듣고 싶습니다.
AI, 기계 학습에 대해 자세히 알아보려면 IIIT-B & upGrad의 기계 학습 및 AI PG 디플로마를 확인하십시오. 기계 학습 및 AI는 일하는 전문가를 위해 설계되었으며 450시간 이상의 엄격한 교육, 30개 이상의 사례 연구 및 과제를 제공합니다. IIIT-B 동문 자격, 5개 이상의 실용적인 실습 캡스톤 프로젝트 및 최고의 기업과의 취업 지원.
나이브 베이즈의 한계는 무엇입니까?
나이브 베이즈 분류기는 알려진 훈련 데이터 세트를 사용하여 새 데이터 인스턴스를 분류하는 데 사용되는 알고리즘입니다. 분류에 좋은 알고리즘입니다. 그러나 기능의 수는 데이터의 속성 수와 같아야 합니다. 많은 수의 항목을 분류하는 데 사용할 때 계산 비용이 많이 듭니다. 수치 데이터에는 적합하지 않습니다. 기능이 서로 독립적인 경우에만 작동할 수 있습니다. 특성 값이 명목일 때는 적합하지 않습니다. 특성 값은 상호 배타적이어야 합니다. 특성 값의 빈도는 정확할 확률에 비례해야 합니다.
Naive Bayes 분류기의 가장 큰 장점과 단점은 무엇입니까?
Naive Bayes의 가장 큰 장점은 매우 작은 데이터 세트로 작업할 수 있다는 것입니다. 스팸 필터링에 가장 널리 사용되는 알고리즘 중 하나입니다. 또한 구현이 비교적 간단합니다. 거의 항상 분류기로 사용됩니다. 데이터 세트를 사용할 수 없는 경우에도 분류 알고리즘으로 사용할 수 있습니다. 이 알고리즘은 이메일 스팸 필터링에 사용되며 Google에서 웹 페이지를 분류하는 데에도 사용됩니다. 그러나 더 복잡한 분류 문제에서는 효과적이지 않을 수 있습니다. 기능이 서로 독립적인 경우에만 작동할 수 있습니다.
Naive Bayes에서 과적합을 중지하려면 어떻게 합니까?
과적합의 한 가지 이유는 잘못된 훈련 데이터를 가지고 있기 때문입니다. 노이즈가 많은 훈련 데이터 세트가 있고 훈련 예제가 많은 경우 분류기는 모델을 구축하려는 기본 패턴이 아니라 훈련 데이터의 노이즈를 확인합니다. 또 다른 이유는 모델이 너무 복잡하기 때문입니다. 입력의 작은 변화가 출력의 큰 변화를 일으킬 수 있는 모델이 있는 경우 과적합이 발생할 수 있습니다. 또 다른 솔루션은 정규화를 사용하는 것입니다. 정규화는 모델의 긴 가지를 축소합니다. 모델을 매끄럽게 만들고 과적합을 방지합니다.