4. 스팸의 기준
• 단어 (이 장에서 사용하는 방식, 학습의 여지가 있음)
• 텍스트에 포함된 단어 기준
• 예시: 비아그라
• 단점: 단어의 스펠링 수정
• 제목 형식 (규칙 기반)
• 긴제목, 느낌표/기타 문장기호 과다 사용
• 문제: Yahoo! 같은 문장 기호는 예외로 설정해야함
5. 이전 장에서 제시한 방법
• 선형회귀
• 선형회귀는 연속적 결과값을 모형화함 ==> 스팸 필터의 결과값은 이진값.
TRUE 아니면 FALSE
• 규칙기반 처럼 사용한다고 해도 수식에 포함할 단어의 개수가 너무 많음
• kNN
• 단어의 개수가 너무 많음
• (단어의 개수가 많아) 계산량(탐색범위)이 너무 많음
• (단어의 개수가 많아) 가까운 이웃도 먼 것처럼 인식
6. 문제 다시 정리
• 해결하고자 하는 문제: 스팸 필터 찾기
==> TRUE와 FALSE를 판단할 수 있는 모델 (이진 또는 확률)
• 해결하고자 하는 방법: 텍스트에 포함된 단어들을 보고 스팸인지 아닌지
판단
==> 단어들의 집합을 보고 스팸인지 아닌지 판단. (if) 특정 단어(들)가 나
타나면 (then)스팸이다. (조건)
==> 특정 단어(들)이 나타나도 스팸이 아닐 수 있다. (불확실성, 확률)
• 단어의 개수가 많아도 복잡성(탐색범위)이 적어야한다
7. 문제 해결 방법 선택
• 문제 다시 다시 정리: 특정 단어(들)가 나타났을 조건에서 스팸메일일 확
률을 낮은 복잡성으로 찾을 수 있다
• 필요한 방법의 조건: 낮은 복잡성의 조건부 확률 모델
• 저자가 선택한 방법: 나이브 베이즈
9. 베이즈룰 기반 법칙
• 근원 사상: 실험의 기본 결과이며 더 이상 다른 결과에 의해 분해될 수 없다
• 확률의 곱셈법칙: P(A∩B) = P(A|B)P(B) = P(B|A)P(A)
• 조건부 확률: 사상 B가 일어난다는 전제하에 사상 A가 일어날 확률을 구하기 위하여 사
상 A와 B 모두 일어나는 확률을 사상 B가 일어나는 확률로 나눈다.
• 서로 배반 사상: 곱사상 P(A∩B)에 포함된 근원사상이 하나도 없는 두 사상 A와 B를 서
로 배반 사상(mutually exclusive event)라고 한다
• 독립 사상: P(A|B) = P(A)가 성립한다면 사상 A와 사상 B는 독립이다.
출처: Excel을 이용한 분석 공학 자연계를 위한 확률 및 통계(김병휘 외 5명, 자유 아카데미)
10. 베이즈룰(Bayes' Rule)
• 정의: k개의 서로 배반적이며 표본공간을 이루는 의 사상
과 관찰된 사상 E가 주어질때 P(A|E)는
• 조건
• P(A|E): 조건부 확률
• 서로 : 배반 사상, 독립 사상
11. 나이브 베이즈 분류기
• Naive Bayes classifiers are a family of simple probabilistic
classifiers based on applying Bayes' theorem with strong (naive)
independence assumptions between the features.
• 단순한/순진한 베이즈
• 단순한
• 순진한: 사상을 서로 배반/독립이라고 가정
12. 나이브 베이즈 예제
• 어떤 사람이 양성을 보였다면, 이 사람이 정말로 병에 걸렸을 확률은?
13. 나이브 베이즈 예제 풀이
p(+|sick): 0.99 <== 99%
p(sick): 0.01 <== 0.01
p(+): 건강하지만 양성 + 아팠을때 양성<== 0.99 x 0.01 + 0.01 x 0.99
14. 개별 단어에 대한 스팸 필터
• 개별 단어에 대한 베이즈 룰 적용
• 개별 단어에 대한 베이즈 룰 분모
15. 단어들을 결합한 스팸 필터
• 어떤 이메일이 스팸이라는 것을 알때 어떤 주어진 단어 벡터가 나타날
확률(베르누이 나이브 베이즈 사용)
: 한 스팸메일에서 j번째 단어가 존재할 확률
• underflow 방지를 위해 로그방정식으로 변환
16. 단어들을 결합한 스팸 필터(계속)
• 앞서 구한 식 상수 치환
• 베이즈 룰을 이용하여 p(x|c)를 알 수 있기 때문에 p(c|x)를 구할 수 있음
17. 좀 더 멋있게: 라플라스 평활
• 베이즈 룰
• 이슈1: 밑변(P(B))가 0이 되면?
• 이슈2: 불확실성을 좀 더 반영하고 싶으면? (확률 1이 나오지 않도록)
• 라플라스 평활(Laplace smoothing): 이슈들을 해결을 위해 가중치 주기