Hippo's data
ch2지도학습_나이브베이즈 분류기 Naive bayes classifier 본문
ch2지도학습_나이브베이즈 분류기 Naive bayes classifier
Hippo's data 2023. 9. 10. 20:37오늘은 지도학습의 분류모델 중 나이브베이즈 분류기에 대해 알아보겠습니다
# 나이브 베이즈 분류기 Naive bayes classifier
-> 베이즈 정리 기반 - 사전확률을 통한 사후확률 예측
특성간 독립적 가정 - 나이브한naive (소박한) 가정을 통해 복잡한 문제해결에 좋은 성능 발휘
단점) feature간 독립적이어야함 = feature간 상관관계 없음
-> 선형 분류기LogisticRegression, LinearSVC - Linear support vector classifier) 보다 훈련속도빠름 but 일반화 성능 bad
-> 선형모델로 학습시간이 오래걸리는 큰 데이터셋에 나이브베이즈 모델 시도해보자!!
-> scikit-learn에 구현되어있는 나이브베이즈 분류기 3개
-> GaussianNB, BernoulliNB, MultinomialNB
- 연속형 데이터
-> GaussianNB -> 연속형 데이터 / 고차원 데이터 주로 이용
- 이산형 데이터
-> BernoulliNB -> 이진 데이터
-> MultinomialNB -> 카운트 데이터(빈도수 예- 문장에 나타난 단어 횟수)
-> BernoulliNB, MultinomialNB -> 희소한 데이터 카운트시 이용 -> 텍스트 분류/ NLP 시 주로 이용
*** 주의) BernoulliNB, MultinomialNB에서 intercept_, coef_ 가 의미하는건 전혀 다름
intercept_ -> 특성 카운트 수를 로그변환한 형태 (w가중치 계수 아님)
coef_ -> 클래스 카운트 수를 로그변환한 형태 (b절편 아님 )
-> 모델복잡도 제어 매개변수 : alpha -> 클수록 모델 복잡도 낮아짐 / 값변화따른 성능향상은 크지않음
# BernoulliNB예시 -> 각 클래스 특성중 0이 아닌것 개수 셈
-> 이진 특성 가진 4개 데이터포인트 생성(클래스 0,1)
-> 특성 카운트:
{0: array([0, 1, 0, 2]), 1: array([2, 0, 2, 1])}
-> 각 클래스 반복하며 특성마다 1일 나타난 횟수 셈
'ML(Machine Learning) > 책: 파이썬 라이브러리를 활용한 머신러닝(2판)' 카테고리의 다른 글
ch2지도학습_분류classification의 선형모델 linear_model (0) | 2023.09.10 |
---|---|
ch2지도학습_회귀regression의 선형모델 linear_model (0) | 2023.09.08 |
ch2지도학습_K-최근접이웃 K-Neareset Neighbors(K-NN) (2) | 2023.09.07 |
ch1 붓꽃(iris) 품종분류예제 (2) | 2023.09.05 |