web-dev-qa-db-ja.com

LDAトピックモデリング-トレーニングとテスト

私はLDAを読み、ドキュメントのコレクションを入力したときにトピックがどのように生成されるかの数学を理解しています。

参考文献によると、LDAはドキュメントのコレクションが与えられ、それ以上(監視は不要)であれば、そのコレクション内のドキュメントによって表現される「トピック」を明らかにできるアルゴリズムです。したがって、LDAアルゴリズムとGibbs Sampler(またはVariational Bayes)を使用することで、一連のドキュメントを入力でき、出力としてトピックを取得できます。各トピックは、確率が割り当てられた一連の用語です。

私が理解していないのは、上記が当てはまる場合、なぜ多くのトピックモデリングチュートリアルがデータセットをトレーニングとテストセットに分離することについて話しているのですか?

LDAを使用してモデルをトレーニングし、別のテストデータセットを分析するための手順(基本概念)を誰かに教えてもらえますか?

37
tan

データをトレーニングセットとテストセットに分割することは、学習アルゴリズムのパフォーマンスを評価する一般的な手順です。教師あり学習では、より明確です。トレーニングセットでモデルをトレーニングし、テストセットでの分類が実際のクラスラベルとどの程度一致するかを確認します。教師なし学習の場合、そのような評価は少しトリッキーです。トピックモデリングの場合、パフォーマンスの一般的な尺度は perplexity です。モデル(LDAなど)をトレーニングセットでトレーニングすると、モデルがテストセットでどのように「当惑」したかがわかります。より具体的には、テストドキュメントのWordカウントがトピックによって表されるWord分布によってどの程度表されるかを測定します。

困惑度はモデルやパラメータ設定間の相対的な比較には適していますが、数値はそれほど意味がありません。私は、次のやや手作業の評価プロセスを使用してトピックモデルを評価することを好みます。

  1. トピックを調べる:各トピックで最も可能性の高い単語を確認します。それらはまとまりのある「トピック」を形成しているように聞こえますか、それとも単なるランダムな単語のグループを形成しているように聞こえますか?
  2. トピックの割り当てを確認する:トレーニングからランダムなドキュメントをいくつか取り出し、LDAがそれらに割り当てるトピックを確認します。ドキュメントと割り当てられたトピックの上位の単語を手動で検査します。トピックは、ドキュメントが実際に話していることを本当に説明しているように見えますか?

このプロセスは、希望するほど適切で定量的ではないことを理解していますが、正直なところ、トピックモデルのアプリケーションも定量的であることはほとんどありません。適用する問題に応じてトピックモデルを評価することをお勧めします。

幸運を!

37
gregamis