2017-06-15 2 views
1

時にはすべてのトピックの確率を返しますが、すべて正常ですが、時には少数のトピックの確率を返します。それは文書によって異なります。一般的に、トピック数が少ない場合、確率は80%以上になるため、最も関連性の高いトピックだけが返されますか?すべての確率を返すように強制する方法はありますか?gensimのget_document_topicsメソッドによって返される確率は1つに加算されません

多分私は何かが不足しているかもしれませんが、メソッドのパラメータのドキュメントを見つけることができません。

答えて

0

私はLDAトピックモデリングに取り組んでいました。 topic1とtopic2という2つのトピックを作成しました。次のように

、各トピックのためのトップ10の言葉は、次のとおりです。0.009*"would" + 0.008*"experi" + 0.008*"need" + 0.007*"like" + 0.007*"code" + 0.007*"work" + 0.006*"think" + 0.006*"make" + 0.006*"one" + 0.006*"get

0.027*"ierr" + 0.018*"line" + 0.014*"0.0e+00" + 0.010*"error" + 0.009*"defin" + 0.009*"norm" + 0.006*"call" + 0.005*"type" + 0.005*"de" + 0.005*"warn

結局、私が最も近いトピックを決定するための1つの文書を取りました。

for d in doc: 
    bow = dictionary.doc2bow(d.split()) 
    t = lda.get_document_topics(bow) 

出力は[(0, 0.88935698141006414), (1, 0.1106430185899358)]です。

あなたの最初の質問に答えるために、確率はドキュメントに対して1.0まで追加され、それがget_document_topicsの機能です。文書は、(topic_id、topic_probability)2タプルのリストとして、指定された文書の弓のトピック分布を返すことを明確に述べている。

さらに、私はキーワードに「IERR

t = lda.get_term_topics("ierr", minimum_probability=0.000001)をget_term_topicsしようとした結果が理にかなっている各トピックを決定するための単語の貢献に過ぎない[(1, 0.027292299843400435)]です。

get_document_topicsを使用して取得したトピックの分布に基づいてドキュメントにラベルを付けることができ、get_term_topicsによって与えられた寄与に基づいてその単語の重要性を判断できます。

こちらがお役に立てば幸いです。

関連する問題