問題タブ [topic-modeling]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
nlp - マレットを使用したトピックモデリング
Mallet でトピック モデリングを使用しようとしていますが、質問があります。
モデルをいつ再構築する必要があるかを知るにはどうすればよいですか? たとえば、Web からクロールしたこの量のドキュメントがあり、Mallet が提供するトピック モデリングを使用して、モデルを作成し、それを使用してドキュメントを推測できる可能性があります。しかし、時間の経過とともに、私がクロールした新しいデータにより、新しい主題が現れる可能性があります. その場合、モデルを最初から現在まで再構築する必要があるかどうかはどうすればわかりますか?
毎月クロールするドキュメントに対してそうしようと考えていました。誰かアドバイスしてもらえますか?
したがって、トピック モデリングは、一定量のトピック (入力パラメーター k、トピック数) の下のテキストにより適しています。そうでない場合、使用する番号を実際にどのように決定しますか?
nlp - lda 推論について
現在、MALLET パッケージの LDA トピック モデリング ツールを使用して、ドキュメントのトピック検出を行っています。最初はすべて順調で、そこから 20 のトピックを取得しました。ただし、モデルを使用して新しいドキュメントを推測しようとすると、結果はちょっと不可解です。
たとえば、トピック「FLU」の 1 つからのキーワードのみを含む手動で作成したドキュメントに対して意図的にモデルを実行しましたが、取得したトピック分布はすべてのトピックで <0.1 でした。次に、トピックの 1 つで 0.7 の高いスコアを持つ既にサンプリングされたドキュメントの 1 つで同じことを試します。再び同じことが起こりました。
誰かが理由について手がかりを与えることができますか?
MALLET メーリング リストで質問してみましたが、どうやら誰も返信がありません。
java - マレットにおけるトピックモデリング; ドキュメンテーション
マレット、特にトピックモデリングに関連するクラスのためのいくつかの良いドキュメントを探しています。私はJavaのドキュメントを見てきましたが、あまり役に立ちません。例えば:
この方法が何をするのかまだわかりません(もしそうなら私に知らせてください...)。また、マレットの経験があり、トピックモデル(またはトピックを表す単語グループ)によって学習されたトピックを印刷するのを手伝ってくれる場合は、私に知らせてください。すべてのアドバイスを歓迎します!
getTopWordsメソッドを見たことがありますが、呼び出すことができませんでした...おそらく行方不明のjarファイルですか?
python - 潜在的ディリクレ割り当てを使用したトピック予測
ドキュメントのコーパスで LDA を使用して、いくつかのトピックを見つけました。私のコードの出力は、確率を含む 2 つの行列です。1 つはドキュメント トピックの確率、もう 1 つは単語トピックの確率です。しかし、実際には、これらの結果を使用して新しいドキュメントのトピックを予測する方法がわかりません。ギブスサンプリングを使用しています。誰も方法を知っていますか?ありがとう
text-mining - 保存されたトピックの状態を使用して、マレットでトピックを推測する
次のコマンドを使用して、いくつかのドキュメントからトピック モデルを生成しました。
ただし、--output-model
シリアル化されたトピック トレーナー オブジェクトを生成するオプションは使用していません。状態ファイルを使用して、新しいドキュメントのトピックを推測する方法はありますか? トレーニングは遅く、シリアル化されたモデルをゼロから作成する必要がある場合、再トレーニングに数日かかります。
yahoo - ヤフー!LDA 実装に関する質問
全て、
私は一連のドキュメントに対して Y!LDA (https://github.com/shravanmn/Yahoo_LDA) を実行してきましたが、結果は素晴らしく見えます (または、少なくとも私が期待するもの)。次に、結果のトピックを使用して、コーパスに対して逆クエリを実行したいと考えています。learntopics 実行可能ファイルの実行後に生成される 3 つの人間が読めるテキスト ファイルが、このライブラリの最終出力であるかどうかは誰にもわかりませんか? もしそうなら、それはクエリを実行するために解析する必要があるものですか? この時点で少し肩をすくめたままです...
ありがとう、アダム
nlp - ドキュメントの単一およびバッチの MALLET トピック推論で異なる結果が得られるのはなぜですか?
Mallet 2.0.7 で LDA トピック モデリングを実行しようとしています。トレーニング セッションの出力から判断すると、LDA モデルをトレーニングして良い結果を得ることができます。また、そのプロセスに組み込まれている推論を使用して、トレーニング ファイルを再処理するときに同様の結果を得ることができます。ただし、より大きなトレーニング セットから個々のファイルを取得し、それを推論器で処理すると、非常に異なる結果が得られます。これは良くありません。
私の理解では、推論者は固定モデルを使用し、そのドキュメントにローカルな機能のみを使用する必要があるため、トレーニング セットから 1 ファイルまたは 1k を処理しているときに異なる結果が得られる理由がわかりません。私は、この種の効果を持つグローバルな操作のように見える周波数カットオフを行っていません。以下のコマンドで使用している他のパラメーターを確認できますが、ほとんどがデフォルトです。反復回数を 0 または 100 に変更しても効果はありませんでした。
データのインポート:
訓練:
トレーニング中に特定の 1 つのファイルに割り当てられたトピック、#14 は正しいワインに関するものです。
トレーニング バッチ全体で推論を実行します。
電車での推論スコア -- 非常によく似ています:
その 1 つの txt ファイルのみで構成される別のトレーニング データ ファイルで推論を実行します。
1 つのドキュメントを推論すると、トピック 80 と 36 が生成されますが、これらは大きく異なります (14 はほぼ 0 のスコアが与えられます)。
nlp - トピックの発見/発見に最適なモデル
構造化されていない短いドキュメント内のトピックスポッティングに最適なモデルは何ですか? SMS または Twitter メッセージ?潜在的ディリクレ配分?
machine-learning - Mallet の Topic Model クラスの出力を理解する方法は?
トピック モデリング デベロッパー ガイドのサンプル コードを試しているので、そのコードの出力の意味を理解したいと思っています。
最初に実行プロセス中に、次のように表示されます。
質問1 : 最初の行の「コード化されたLDA: 10 トピック、4 トピック ビット、1111 トピック マスク」とはどういう意味ですか? 「10のトピック」が何であるかしか知りません。
Question2 : " <10> LL/トークン: -9,24097 <20> LL/トークン: -9,1026 <30> LL/トークン: -8,95386 <40> LL/トークン: - 8,75353」というのは、ギブス サンプリングの指標のようです。でも、単調増加じゃないですか?
その後、次のように出力されます。
この部分の最初の行は、おそらくトークン トピックの割り当てですよね?
Question3 : 最初のトピックについては、
0.008は「トピック分布」と言われていますが、コーパス全体でのこのトピックの分布ですか?次に、競合があるようです。上記のトピック 0 は、そのトークンがコーパスに 8+7+6+4+4+... 回出現します。比較すると、トピック 7 では 4+3+3+3+3... 回がコーパスで認識されます。その結果、トピック 7 はトピック 0 よりも分布が低くなるはずです。これが理解できません。さらに、最後の「0 0.55」は何ですか?
この長い投稿を読んでいただき、誠にありがとうございます。あなたがそれに答えてくれることを願っており、これがマレットに興味のある他の人に役立つことを願っています.
一番
nlp - LDA はどのように一貫した結果をもたらしますか?
一般的なトピック モデルである潜在的ディリクレ配分 (LDA) は、コーパスからトピックを抽出するために使用されると、辞書の単語に対してさまざまな確率分布を持つさまざまなトピックを返します。
一方、Latent Semantic Indexing (LSI) は、反復ごとに同じトピックと同じ分布を提供します。
実際、LDA はトピックの抽出に広く使用されています。分類が行われるたびに異なるトピック分布を返す場合、LDA はどのように一貫性を維持しますか?
この簡単な例を考えてみましょう。D がドキュメントを表すドキュメントのサンプルを取得します。
各行はドキュメントを表します。上記のコーパスでは、ドキュメントからトピックを生成するために LDA モデルが使用されています。Gensim は LDA に使用され、選択されたトピック数が 4、パス数が 20 のバッチ LDA が実行されます。
元のコーパスでバッチ LDA が実行され、20 回のパス後に生成されるトピックは次のとおりです。
ここで、同じ元のコーパスに対してバッチ LDA が再度実行され、その場合に生成されるトピックは次のとおりです。
各トピックの単語分布は、両方の場合で同じではありません。実際、単語の分布は決して同じではありません。
では、LSI のようなトピックで同じ単語分布を持たない場合、LDA はどのように効果的に機能するのでしょうか?