- Perplexity
- log-likelihood
- predictive log-likelihood
- HDP (Hierarchical Dirichlet Process)
Perplexityはモデルがどのくらい単語を絞ることができるかという指標。小さいほど良い。これを最小とするトピック数を最適なトピック数と考える。
![]() |
図1.Perplexityのトピック数依存性 |
図1はDPCデータに対してPerplexityのトピック数依存性を描いたものである。トピック数が500になってもまだPerplexityは減少傾向にある。
log-liklihoodは訓練データを用いて作成したモデルのパラメタを使って訓練データの対数尤度(の調和平均)を求めたものである。あるブログ記事を読むと、GriffithとSteyvers (2004) によってこの近似法が提案されたとのことである。
DPCデータに対してこの値のトピック数依存性を描いたものを図2に示す。
![]() |
図2.log-likelihoodのトピック数依存性 |
predictive log-likelihoodは前回のブログにも書いたように、未知のデータに対して求めた対数尤度である。訓練データで求めた対数尤度はデータにオーバーフィッティングする可能性があるのでこれを避けるのがpredictive log-likelihoodである。
しかし、LDAに対してこれを計算するライブラリが見当たらず計算しあぐねている。
HDPはデータから自動的に最適なトピック数を求める手法である。まだ勉強していないので詳細はわからない。
これら以外に、先に紹介したあるブログ記事にIdtuningというRパッケージで最適なトピック数を求めることができると紹介されていた。
ここでは、次の4つの指標が紹介され、それらを計算してトピック数依存性をグラフ表示する例が掲載されている。
上述したブログ記事によれば最初の3つ(1~3)はトピック間の単語分布の類似性に注目した手法であるとのこと(2はcosine類似性、3はKLダイバージェンスによって類似性を計算し、1も何らかの距離を計算しているらしい)。そして4はlog-likelihoodを用いる方法と同じである。
DPCデータに対してこのIdtuningを使って4つの指標のプロット依存性をプロットしたものを図3に示す。
![]() |
図3.Idtuningの結果 |
図3によるとArun2010とCaoJuan2009はトピック数が250~300あたりで最小(最適)になっており、Deveaud2014はトピック数が100で最大(最適)になっている。そしてGriffiths2004はトピック数が450で最大(最適)になっている。
ドキュメントに相当する病院数が1600程度しかないのにトピック数が300~400というのはあまりに多すぎはしないだろうか。
0 件のコメント:
コメントを投稿