読者です 読者をやめる 読者になる 読者になる

#69 Crouching Dirichlet, Hidden Markov Model: Unsupervised POS Tagging with Context Local Tag Generation

機械学習 論文100本ノック LDA HMM EMNLP

Taesun Moon, Katrin Erk, Jason Baldridge, Proceedings of EMNLP-2010.

言語によらず単語には機能語と内容語のようなものが存在するが、教師なしpos taggingでよく使われるHMMではこのような機能語、内容語の違いを捉えられない。このモデル(CDHMMとHMM+)ではそのような性質を生成モデルに明示的に組み込むことで教師なしpos taggingの精度を上げようとしている。

既存手法(Bayesian HMMとLDAHMM)

Bayesian HMMとLDAHMMが教師なしpos taggingのモデルとしてよく使われる。

Bayesian HMMは通常のHMMで最尤推定だとすぐlocal maximumに陥いってしまうので、emission probabilityやtransition probability dirichletにpriorを入れて上げてsmoothingをしている。プレゼンの資料を見ると分かるが、機能語と内容語は分布の仕方の特徴が全然違うので、それらの違いをモデルで考慮したいところだが、HMM baseだとその違いを(priorを変えるなどして)考慮できない。

LDAHMMはGriffithsらがNIPS 2005で提案したモデル。HMMではlocalなsyntaxの情報を見ることができ、LDAではglobalなsemanticな情報を見ることができるが、それぞれのモデルでは両方の情報を見ることができないので、これを合体したモデルを考えましょうという結果、出てきたモデルがLDAHMM。なかなかよさげなモデルなんだけど、意味的なものを考えてしまうせいで、意味としては同じような名詞、動詞、副詞などの単語を同じtaggingにしてしまうので教師なしpos taggingのようなタスクでは性能が低いという問題点があった。

CDHMM

Figure 1のようにfunction word prior、content word priorを明示的に考えるのがCDHMM。LDA的なトピックも入れたいという考えからtopic priorなども入っている。生成過程は3ページ目のところを見ればおk。function wordにはtopicのようなものを考えない、ということに注意しよう。推論はGibbs Samplingでやる(forward-backwardだと計算ができない...?)。

CDHMMをHMMと比較するときにtopic的なものがいるからpos taggingのaccuracyが上がるのか機能語的なものを考えるから上がるのかが分かりづらい。そのような理由からtopic priorの部分を外したモデル(HMM+)をbaseline的な意味で考えている。

実験

4言語5コーパスで実験。3つの指標で評価しているが、状態数を適切にしてあげることでCDHMMはどのコーパスでも指標でも他のモデルよりよい性能を上げている。適切な状態数ってなんぞやと思われるが、goldのtagの数と同じくらいだと一番よい性能を残していることからgoldなtagが分かるならその数を目安にするとよいのかもしれない(そもそもgoldなtagがあるなら教師ありでやれという話かもしれないが。本当に分からないならノンパラベイズで自動推定しろという話になるんだろう)。

初期値を変えて複数回実験した設定では、CDHMMは一番分散が小さいし、性能がデータサイズによらずよい性能を残している。Uspanteko語では性能があんまり変わっていないが、goldのtagの数が83と多いのにデータサイズが全体でもそもそも小さいから性能があまり変わらないのではないか、ということが書いてあった。