일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | ||||
4 | 5 | 6 | 7 | 8 | 9 | 10 |
11 | 12 | 13 | 14 | 15 | 16 | 17 |
18 | 19 | 20 | 21 | 22 | 23 | 24 |
25 | 26 | 27 | 28 | 29 | 30 | 31 |
- 빅데이터 분석 기반 에너지 운영 관리자 양성 및 취업과정
- 빅분기
- python
- PY4E
- 오라클
- 코딩테스트 python
- 이것이 취업을 위한 코딩테스트다 with 파이썬
- boostcourse
- [멀티잇]데이터 시각화&분석 취업캠프(Python)
- 정보처리기사
- 빅데이터분석기사
- DB
- Ai
- AI 플랫폼을 활용한 데이터 분석
- 코딩테스트
- 난생처음 R코딩&데이터 분석 저서
- Oracle
- 기초다지기
- SQL
- 데이터 분석 기반 에너지 운영 관리자 양성 및 취업과정
- 파이썬
- 프로그래머스
- r
- 네이버부스트캠프
- 부스트코스
- boostcoures
- 인공지능기초다지기
- 이기적
- 데이터베이스
- Machine Learning
- Today
- Total
매일공부
[sklearn] Naïve Bayes 나이브 베이즈 본문
• 경험적 확률(사전 확률) : 주사위 1000번을 굴렸을 때 1이 나올 횟수에 대해 계산하기 위해 추론한 1/6의 확률
• 빈도론(Frequentism)의 입장
>> 주사위 굴리기에서 1이 나오는 확률은 무한히 많은 주사위 굴리기 경험을 통해 1 이 나오는 빈도가 1/6에 수렴하는 객관적인 사건
• 베이지안(Baysianism)의 입장
>> 주관적으로 사전 확률을 정한 다음 데이터를 관찰하며 가능도를 계산
ex) 주사위는 6면이 있으니 한 번의 시행에서 6은 1/6의 확률을 사전 확률
• 결합 확률 - 두 가지 이상의 사건이 동시에 발생하는 확률
베이즈 정리
- 두 확률 변수의 사전 확률과 사후 확률 사이의 관계를 나타내는 정리
- 뒤 사건이 발생할 확률(posterior probability)는 앞 사건이 발생했던 확률에 어떤 값을 곱해서 나온다.
조건부 확률
- 전체 : 사건 B 발생(Before) => 사건 A 발생(After)
- 정의 : 사건 B가 일어난 후 사건 A가 일어날 확률
- P(A) : 사건 A가 일어날 확률
- P(B) : 사건 B가 일어날 확률 => 사건 A가 발생하기 전 사건 B가 일어날 확률 = 사전 확률
- P(A|B)
: 사건 B가 일어난 후 사건 A가 일어날 확률 = 조건부 확률
: 사전확률 A에 사건 A 가 일어났을 때 사건 B의 확률을 곱한 다음,
사건 B가 일어날 확률로 조정해주면 조건부 확률 P(A|B)를 얻을 수 있다 - P(B|A)
: 사건 A가 일어났을 때 사건 B가 앞서 일어났을 확률 = 사후 확률
: 사전확률 B 에 사건 B가 일어났을때 사건 A의 확률을 곱한 다음
사건 A가 일어날 확률로 조정해주면 사후 확률 P(B|A)를 얻을 수 있다 - P(X, Y) ⇒ 데이터가 X, Y 특징을 모두 가질 확률
- P(X, Y | A) ⇒ 레이블이 A인 데이터가 X, Y 특징을 모두 가질 확률
- P(A | X, Y) ⇒ X, Y 특징을 모두 갖는 데이터가 레이블 A에 속할 확률
문제 참고 : https://m.blog.naver.com/PostView.naver?isHttpsRedirect=true&blogId=vollollov&logNo=220975294633
나이브 베이지안(Naive Bayesian) 알고리즘
- 나이브 Naïve : 모든 사건이 독립사건이라는 순진한(naive) 가정
+
- 베이즈 Bayes : 전체 대비 특정 클래스에 속할 확률
- 지도 학습(supervised learning) >> 큰 데이터셋에 적합
- Prior(특정 결과의 출현확률이 더 많다고 가중치를 주는 행위) 직접 설정 가능 <> 특정 범주 분류 정확성 UP
- P(A, B) = P(B|A) x P(A) = P(B, A) = P(A) x P(B)
나이브 베이즈의 장점
- 간단하고, 빠르며, 정확한 자연어 분류
- computation cost이 작다
- 예측을 위한 추정 확률 쉽게 얻을 수 있음
나이브 베이즈의 단점
- 모든 특징이 동등하게 중요
- 독립이라는 가정이 잘못된 경우가 자주 있음
Naïve Bayes Classification 의 종류
Gaussian Naive Bayes (가우시안 나이브 베이즈)
- 설명변수 : 연속형 변수
- 표본 평균과 표본 분산을 가진 정규분포 가정,
항상 같은 분모를 갖는 조건에 분자의 값이 가장 큰 경우, 확률이 가장 높은 경우 "선택"
- 하이퍼파라미터
var_smoothing: float, default=1e-9
- 예시코드]
from sklearn.naive_bayes import GaussianNB
hyperparameters = {
'var_smoothing': np.logspace(0, -9, num=100)
}
Multinomial Naive Bayes (다항 나이브 베이즈)
- 설명변수 : 이산형 변수
- 하이퍼파라미터
alpha: float, default=1.0 #평활화 파라미터값 설정
fit_prior: bool, default=True #선행 확률 학습 설정 (False인 경우 동일한 사전 정보 사용)
- 예시코드]
from sklearn.naive_bayes import MultinomialNB
hyperparameters = {
'alpha' : [0.5, 1.0, 1.5, 2.0, 5],
'fit_prior' : [True, False],
}
활용방안
- 이진 분류(binary classification) : 스팸필터링, 비정상적인 상황 감지, 질병 진단 등
- 다중 분류(multi-class classification) : 문서 분류 등
* 실습 참고 링크 : https://wikidocs.net/22892
10-05 나이브 베이즈 분류기(Naive Bayes Classifier)
텍스트 분류를 위해 전통적으로 사용되는 분류기로 나이브 베이즈 분류기가 있습니다. 나이브 베이즈 분류기는 인공 신경망 알고리즘에는 속하지 않지만, 머신 러닝의 주요 알고리즘으로 …
wikidocs.net
* 내용참고&출처 : 태그의 수업을 복습 목적으로 정리한 내용입니다.
'IT > ML' 카테고리의 다른 글
[sklearn] kNN(k-Nearest Neighbors) (0) | 2022.11.11 |
---|---|
[Machine Learning] Boost(AdaBoost, GBM, XGBoost, LightGBM, Catboost, Stacking) (0) | 2022.11.11 |
[sklearn] SVM(Support Vector Machine) (0) | 2022.11.09 |
[sklearn] 앙상블학습 > 랜덤 포레스트 (0) | 2022.11.07 |
[sklearn] 의사결정트리(Decision Tree) (0) | 2022.11.03 |