web-dev-qa-db-ja.com

LDAのトピック数を決定する方法は?

私はLDAの新入生で、仕事で使いたいと思っています。ただし、いくつかの問題が発生します。

最高のパフォーマンスを得るために、最高のトピック番号を見積もりたいと思います。 「科学的トピックの検索」を読んだ後、最初にlogP(w | z)を計算し、次に一連のP(w | z)の調和平均を使用してP(w | T)を推定できることがわかりました。

私の質問は、「一連の」とはどういう意味ですか?

17
Chelsea Wang

残念ながら、あなたの質問に対する正しい答えを生み出すハードサイエンスはありません。私の知る限りでは、 階層的dirichletプロセス(HDP) は、おそらく最適な数のトピックに到達するための最良の方法です。

より詳細な分析を探している場合は、 HDPに関するこのペーパー は、グループの数を決定する際のHDPの利点を報告します。

7

信頼できる方法は、さまざまな数のトピックのトピックコヒーレンスを計算し、トピックのコヒーレンスが最も高いモデルを選択することです。しかし、時には、最高のものが必ずしも法案に合うとは限りません。

enter image description here

これを参照してください トピックモデリングの例。

4
Selva

最初に、最適なトピック数を見つけるために調和平均を使用する人もいますが、私も試しましたが、結果は不十分です。したがって、私の提案によると、Rを使用している場合は、パッケージ「ldatuning」が役立ちます。最適を計算するための4つのメトリックがあります。パラメータの数。繰り返しになりますが、パープレキシティと対数尤度ベースのV分割交差検証も、最良のトピックモデリングに非常に適したオプションです。V分割交差検証は、大規模なデータセットでは少し時間がかかります。「適切なトピック数を決定するためのヒューリスティックアプローチ」を参照してください。トピックモデリングで」。重要なリンク: https://cran.r-project.org/web/packages/ldatuning/vignettes/topics.htmlhttps://www.ncbi.nlm.nih.gov/pmc/articles/PMC4597325 /

2
Pooja

K =トピックの数とします

最善の方法は1つではなく、これに標準的な方法があるかどうかさえわかりません。

方法1:kのさまざまな値を試して、最も可能性の高い値を選択します。

方法2:LDAの代わりに、HDP-LDAを使用できるかどうかを確認します

方法3:コーパスでHDP-LDAが実行不可能な場合(コーパスのサイズが原因)、コーパスの均一なサンプルを取得し、その上でHDP-LDAを実行し、HDP-LDAで指定されたkの値を取得します。このkの周りの小さな間隔では、方法1を使用します。

0
Ashok Lathwal