티스토리 뷰
"해당 포스팅은 Andew Ng 의 Machine learning class - Naive Bayes Classifier 를 요약한 것입니다."
Discriminative model vs Generative model
Discriminative model 의 대표적인 예는 Logistic regression 이라고 함.
$P(y|x)$ 즉 $x$ features 가 주어졌을 때 바로 $P(y)$ 를 구하는 거임. 아래 그림처럼 Binary classification 에서 두 class 를 구분하는 초록색 선을 찾는게 목표임.
Generative Model 로도 classifier 를 만들 수 있는데 방법이 조금 다름.
일단 formal 하게 말하자면 Generative Model 은 $P(y|x)$ 를 직접 구하는 게 아니라 $P(x|y)P(y)$ 를 통해서 classification 을 수행함. 특히나 중요한 부분이 $P(x|y)$ 부분인데, 클래스가 주어졌을 때 x의 probabilty 를 구하도록 모델링 하는 것.
좀 더 쉽게 설명하자면, 각 클래스에 대해서 x 의 features 를 배운다고 생각하면 됨.
아래 그림처럼 빨간색 원이 malignant tumor 에 대해 모델이 배운 features 라고 하고, 파란색 원이 banign tumor 에 대한 features 라고 하자. 새로운 데이터가 주어졌을 때 (원 안의 점), 이 데이터가 내가 모델링한 빨간원의 데이터와 비슷하면 malignant 파란원이랑 비슷하면 banign. 어쨌든 각 클래스에 대해서 x features 를 배우는 모델인 거임.
Generative model 의 대표적인 예가 Naive Bayes 임.
둘의 차이를 좀 더 formal 하게 설명한 슬라이드
Naives bayes Classification 만들기
Bayes rules 에 의해서 generative model 이 배우는 $P(x|y)$ 를 가지고 classification 에 필요한 $P(y|x)$ 도출 가능함.
내가 헷갈렸던게 그래서 Naive Bayes 가 뭐? 이걸로 neural network 모델링을 할 수 있다는거야? 했는데 naive bayes 는 simple learning algorithm 이라고 함. 실제로 naive bayes classifier 만들 때 필요한 $P(x)$ 랑 $P(x|y)$ 를 배울 때 count 기준으로 함. 근데 Naive bayes 를 neural net 에 적용할 수는 있는데 그게 Naive Bayes Neural Net
- Total
- Today
- Yesterday
- Bert
- Contextual Embedding
- language model
- Pre-trained LM
- transformer
- Statistical Language Model
- neurone
- nlp
- weight vector
- LM
- 벡터
- 워터마킹
- Attention Mechanism
- word embedding
- cs224n
- Elmo
- Neural Language Model
- 언어모델
- 뉴럴넷
- neural network
- GPTZero
- 뉴런
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |