1

トピック モデリングのために gensim を勉強しているだけです。私が使うとき

lda_model = gensim.models.ldamodel.LdaModel(...)

結果の lda_model には、get_topics() と get_document_topics() の 2 つの関数があります。それらによってトピック-単語とドキュメント-トピックを見つけることができます。しかし、私は試してみたい:

hdp_lda_model = gensim.models.hdpmodel.HdpModel(...)

結果に get_topics() があることしかわかりませんが、get_document_topics() のようなものはありません。そのため、ドキュメントとトピックの関係を見つけることができません。しかし、それはどこかにあるはずです。https://radimrehurek.com/gensim/models/hdpmodel.htmlからいくつかの指示を読みました。しかし、私は何も見つけられませんでした(多分私は何かを見逃していますか?)。それで、lda モデルの get_document_topics() のような hdp モデルの関数はありますか?

4

1 に答える 1

2

どちらのモデルにも、必要なことを行う__getitem__メソッドがあります。

LDA の場合、実際にはget_document_topics https://github.com/RaRe-Technologies/gensim/blob/develop/gensim/models/ldamodel.py#L1503のラッパーです

HDP の場合、inferenceメソッドをラップしていますが、それを呼び出すだけではありません

それで、あなたの質問に答えるために。両方のモデルで次のことができます。

lda_model[bow_doc]

また

hdp_lda_model[bow_doc]

次に、トピックの分布を取得しますbow_doc

次のような結果になります。

[(5, 0.05342164806543596),
 (7, 0.04307238446604077),
 (11, 0.5281130394662548),
 (31, 0.28899472194287035),
 (60, 0.07985460856925444)]
于 2020-03-17T11:20:32.353 に答える