조건부 확률과 베이즈 정리를 이해하고, AI가 증거를 바탕으로 믿음을 업데이트하는 방식을 배운다.
조건부 확률이란?
조건부 확률은 "사건 B가 일어났다는 조건 하에 사건 A가 일어날 확률"입니다.
P(A|B) = P(A 그리고 B) / P(B)
# 읽는 법: "B가 주어졌을 때 A의 확률"
예시: 비가 오는 날 우산을 가져올 확률 vs. 날씨와 무관하게 우산을 가져올 확률은 다릅니다. 이것이 조건부 확률입니다.
직관적인 예시
# 스팸 메일 분류기
# P(스팸) = 0.3 — 이메일 중 30%가 스팸
# P("당첨"|스팸) = 0.8 — 스팸의 80%에 "당첨" 포함
# P("당첨"|정상) = 0.05 — 정상 메일의 5%에 "당첨" 포함
# "당첨"이 포함된 메일이 스팸일 확률은?
# → 베이즈 정리로 계산!
베이즈 정리(Bayes Theorem)
베이즈 정리는 새로운 증거를 바탕으로 기존의 믿음(확률)을 업데이트하는 공식입니다.
P(A|B) = P(B|A) × P(A) / P(B)
# 용어 정리:
# P(A) : 사전 확률 (증거 전의 믿음)
# P(A|B) : 사후 확률 (증거 B를 본 후의 믿음)
# P(B|A) : 우도 (A가 참일 때 B를 관측할 확률)
# P(B) : 주변 확률 (정규화 상수)
스팸 필터 예시 계산
P(스팸) = 0.3
P("당첨"|스팸) = 0.8
P("당첨"|정상) = 0.05
P(정상) = 0.7
P("당첨") = 0.8×0.3 + 0.05×0.7 = 0.24 + 0.035 = 0.275
P(스팸|"당첨") = (0.8 × 0.3) / 0.275 = 0.24 / 0.275 ≈ 0.873
# "당첨"이 포함된 메일이 스팸일 확률: 87.3%
나이브 베이즈 분류기
베이즈 정리를 텍스트 분류에 적용한 것이 나이브 베이즈(Naive Bayes) 분류기입니다. "나이브"라는 말은 각 단어가 서로 독립이라는 단순한(naive) 가정에서 옵니다.
from sklearn.naive_bayes import MultinomialNB
model = MultinomialNB()
model.fit(X_train, y_train) # 이메일 텍스트로 학습
predictions = model.predict(X_test)
단순하지만 빠르고, 텍스트 분류에서 놀라울 정도로 잘 동작합니다.
베이즈적 사고의 가치
베이즈 정리의 핵심은 "증거를 볼수록 믿음이 업데이트된다"는 것입니다. 이는 AI 모델이 새 데이터를 볼수록 더 정확해지는 방식과 본질적으로 같은 논리입니다. 현대 LLM의 파인튜닝도 넓은 의미에서 베이즈적 업데이트입니다.
핵심: P(A|B) = P(B|A) × P(A) / P(B). 새로운 증거(B)가 있을 때 기존 믿음(P(A))을 어떻게 수정할지 알려주는 공식입니다.
관련 검색어 · 조건부 확률, 베이즈 정리, 나이브 베이즈, 스팸 필터 원리, 사전확률 사후확률, 머신러닝 베이즈