형태소분석기에 왜 CRF가 쓰이는지 이해하기 위해 정리한 슬라이드입니다. Graphical Models의 필요성부터 시작해 방향성(Bayesian Networks), 비방향성(Markov Random Fields) Graphical Models의 정의와 조건부독립 성질을 살펴보고, Generative와 Discriminative 모델의 차이점을 정리한 뒤 Discriminative + Undirected 모델로서 Conditional Random Fields를 소개합니다. 끝으로 형태소분석에 CRF를 사용하는 테크닉을 간단히 소개합니다.
22. 전략
• 표현representation 학습learning 추론inference이 모두 필요함
• 먼저 가장 간단한 경우부터
• 이산(discrete)확률변수
• 완전히 관측된 모델
• 정확한(exact) 학습과 추론
• 그리고 일반화
• 연속(continuous)확률변수
• 부분적으로 관측된 모델 (latent/hidden variables)
• 근사적인(approximate) 학습과 추론
23. 순서
1. Directed Graphical Models (Bayesian Networks)
2. Undirected Graphical Models (Markov Random Fields)
3. Generative vs Discriminative Models
4. Conditional Random Fields
5. POS Tagging with CRF
24. 기본개념
확률공간probability space 확률probability 사건events
확률변수random variables 확률분포probability distributions 기대값expectation
독립independence 종속dependence 조건부독립conditional independence
조건부확률conditional probability 결합확률분포joint probability distribution
연쇄법칙chain rule 베이즈 정리Bayes Rule 전체확률의 정리Law of Total Probability
𝑃 𝑌 𝑋 =
𝑃 𝑋 𝑌 𝑃(𝑌)
𝑃(𝑋)
𝑃 𝑋, 𝑌 = 𝑃 𝑋 𝑃(𝑌|𝑋) 𝑃(𝑋) = 𝑃 𝑋 𝑦 𝑃(𝑦)
29. 그러니까 독립을 이용하자
• 만약 모든 변수가 서로 독립이면
𝑝 𝑥 , 𝑥 , … , 𝑥 = 𝑝 𝑥 𝑝 𝑥 … 𝑝 𝑥
• (binary인 경우) 2 개 대신 2𝑛개의 숫자만으로 표현가능
• 모두 독립이면 그다지 쓸모가 없다:
• 𝑋 를 아는 것이 𝑋 를 아는 것에 아무런 도움이 되지 않음
• 대신 조건부독립을 활용해 보자!
47. Bayesian Network 정리
• Bayesian Network 는 확률변수들의 조건부확률분포CPD로 주어진다.
• 생성 모델Generative Model로 볼 수 있다.
• D-Separation 을 이용하여 조건부 독립을 확인할 수 있다.
• 특정 사건이 일어날 확률은 CPD를 곱하는 것으로 얻을 수 있다.
• 조건부 확률을 얻으려면 베이즈 법칙Bayes Rule을 사용하면 된다.
• 추론Inference은 필요한 계산량이 많아 어려울 때가 많다.
• Viterbi Algorithm, Max-Product Belief Propagation, Sum-Product Algorithm, …
• 예: Naïve Bayes, Hidden Markov Model, Latent Dirichlet Analysis
48.
49. Undirected Graphical Models
• 확률변수들 사이에 방향성이 있는 것이 어색한 경우가 있음
• 픽셀을 격자로 표현하려면 방향이 없는 것이 자연스러움
• 판별discriminative모델은 방향성이 없을 때 대개 성능이 좋음 (CRF)
60. 스팸필터링 예제
• 스팸이면 Y = 1 , 스팸이 아니면 Y = 0
• 𝑤 ~𝑤 : 모든 (영어) 단어
• 단어 𝑤 가 이메일에 포함되면 𝑋 = 1 , 아니면 𝑋 = 0
61. • 두 그림은 결국 같은 확률분포 𝑃(𝑋, 𝑌)를 표현함
• 하지만 Y를 예측하기 위해선 𝑃 𝑌 𝑋)만 알면 충분
• 왼쪽의 경우 𝑃(𝑌)와 𝑃(𝑋|𝑌)를 모두 알아야 함
• 오른쪽 모델에선 𝑃(𝑌|𝑋)만 알면 충분함!
• 𝑃(𝑋)에 대해선 알 필요가 없음
• 𝑋중 일부만 관찰할 경우 𝑃(𝑋)도 필요해짐
• 𝑌의 값을 판별하는데만 쓸 수 있어서 판별 모델
생성generative VS 판별discriminative 모델
62. • 각 모델에서 선택해야 하는 것
• 생성 모델에서: 𝑃(𝑋 |𝑿 ( ), 𝑌)를 파라미터화하는 방법
𝑋 ⊥ 𝑋 | 𝑌 라고 가정하기 (Naïve Bayes)
• 판별 모델에서: P(Y|𝐗)를 파라미터화하는 방법
𝑃 𝑌 = 1 𝒙; 𝑤) =
( ∑ )
라고 가정하기 (Logistic Regression)
생성generative VS 판별discriminative 모델
63. 판별모델은 강력하다
• Logistic Regression은 조건부독립을 가정하지 않음
• “bank account”처럼 항상 같이 사용하는 두 단어가 많은데
• 그러면 𝑋 = 𝑋 , 즉 조건부독립이 아니지만
• Naïve Bayes는 P(𝑋 |𝑌) = 𝑃(𝑋 |𝑌) 로 두 번씩 카운트
• 조건부독립이 아닌 Feature들을 사용할 수 있어서
• 보다 유연한 Feature 선택이 가능
64. 생성모델은 쓸모있다
• 𝑿가 모두 측정가능할 때에만 판별모델을 쓸 수 있다.
• 𝑿중 일부만 있더라도 생성모델에서는 P(Y|𝑿 )를 계산가능
• 더 효율적으로 파라미터를 학습할 수 있음
• 충분히 좋은 결과를 얻기 위해 필요한 트레이닝 데이터의 수:
• Naïve Bayes는 O(log n)개의 샘플이 필요함
• Logistic Regression은 O(n)개의 샘플이 필요함
• Naïve Bayes가 (부정확할 수도 있지만) 더 빠르게 수렴함
80. ML Parameter Estimation :
Regularization
• Regularization
• Occam’s Razor로 동작하는 일종의 Prior
• 더 간단한 해법에 많은 가중치를 두는 결과
• L1-norm과 L2-norm의 차이
• L1-norm은 극히 일부의 Feature 들만이 relevant한 결과
• L2-norm은 거의 모든 Feature들이 relevant하다는 결과
81.
82. References
On Discriminative vs. Generative classifiers: A comparison of logistic regression and naive Bayes (Ng Jordan 2001)
Conditional Random Fields: Probabilistic Models for Segmenting and Labeling Sequence Data (Lafferty et. al. 2001)
Applying Conditional Random Fields to Japanese Morphological Analysis (Kudo et. al. 2004)