問題タブ [lda]
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.
java - マレット:局所Nグラム
オプションを使用してマレットを実行したいのですが、--use-ngrams true
機能しないようです。以下を使用してデータをインポートしました:
今、私は局所的なngramモデルを訓練したいと思います:
しかし、私はこのエラーを受け取ります:
ご覧のとおり、私はマレットをコマンドラインツールとして実行しており、APIをこじ開けて機能させることはしたくありません。助言がありますか?
machine-learning - ニュース記事でldaにgensimを使用するには?
ニュース記事の大規模なコーパスからトピックのリストを取得しようとしています.gensimを使用して、LDAを使用して各ドキュメントのトピック分布を抽出することを計画しています. lda の gensim 実装で必要な加工済み記事のフォーマットと、未加工の記事をそのフォーマットに変換する方法を知りたいです。ウィキペディアのダンプでldaを使用することに関するこのリンクを見ましたが、コーパスが処理された状態であり、そのフォーマットがどこにも言及されていないことがわかりました
python - LDA の代替形式の実装
私は、6 つの異なるソースからのニュース データのコーパスで潜在的ディリクレ配分法を使用しています。私はトピックの進化と出現に興味があり、時間の経過とともにソースがどのように似ているか、どのように異なるかを比較したいと考えています。Author-Topic モデル、Topics Over Time など、多くの修正された LDA アルゴリズムがあることは知っています。
私の問題は、これらの代替モデル仕様のほとんどが標準形式で実装されていないことです。いくつかは Java で利用できますが、ほとんどは会議論文としてのみ存在します。これらのアルゴリズムのいくつかを自分で実装するための最良の方法は何ですか? 私は R とジャグにかなり精通しており、十分な時間があれば Python でつまずくことができます。私は喜んでコードを書きますが、どこから始めたらよいかよくわかりませんし、C や Java についても知りません。原稿の式だけで JAGS や Python でモデルを構築できますか? もしそうなら、誰かがこれを行う例を教えてもらえますか? ありがとう。
machine-learning - スタンフォードトピックモデリングツールキットによって特定された30のトピックが互いに非常に類似しているのはなぜですか?
スタンフォードトピックモデリングツールキット(Twitterユーザーが共有)の19,500件の記事のコーパスで特定された30のトピック(約4時間かかりました)が互いに非常に類似している理由として考えられるものは何ですか?それらはほとんど同じ用語を持っており、頻度=>基本的に、私はただ1つのトピックを持っています:)
識別されたトピックはここで見つけることができます
ストップワードの削除、空白の折りたたみ、すべての小文字化など、段階を学習して推測する前に、テキストドキュメントの標準的な準備を行います。
私のパラメータのいくつか:
- numTopics = 30
- TermMinimumDocumentCountFilter =(10)〜>//<10ドキュメントで発生する用語をフィルタリングする
- TermDynamicStopListFilter(30)〜>//30の最も一般的な用語を除外します
- DocumentMinimumLengthFilter(10)//10語以上のドキュメントのみを取得
- topicSmoothing = SymmetricDirichletParams(0.01)
- termSmoothing = SymmetricDirichletParams(0.01)
- maxIterations = 10
nlp - Stanford Topic Modeling Toolbox が lda-output ディレクトリを生成しないのはなぜですか?
Sarah Palin の 14,500 通の電子メールから 30 のトピックを識別するコードを githubから実行してみました(1-2-3 の手順に従います)。著者が発見したトピックはこちら. ただし、Stanford Topic Modeling Toolbox は lda-output ディレクトリを生成しません。lda-86a58136-30-2b1a90a6 が生成されましたが、このフォルダーの summary.txt には、トピックの最初の割り当てのみが表示され、最終的な割り当ては表示されません。発見されたトピックの最終的な要約で lda-output ディレクトリを作成する方法はありますか? 前もって感謝します!
text-mining - トピック モデルに適した Mallet クラス
Java のプロジェクトでMalletライブラリを使用しています。
それぞれ 400 個のトークンを持つ 15,000 個のドキュメントがあります。使ってみParallelTopicModel
ました。しかし、単一のトークンとトークンのシーケンスの両方を含む一連のトピックが必要です (たとえば、「Java」と「Java 開発者」)。
LDA-HMMの使用を検討しています。どのクラスのマレットを使用できますか?
次に、すべてのトピックをベイジアン ネットワークのノードに変換し、トークンまたは一連のトークンを証拠として受け取り、推論を行います。そのためにどのJavaライブラリを使用できますか?
前もって感謝します。フランチェスコ
ruby - LDA-Ruby に複数の .txt ファイルを読み込ませる方法を概念化する際の問題
構造化されていないプレーン テキスト ファイルのコレクションを参照する Ruby スクリプトを作成しようとしていますが、これらのファイルを処理する最善の方法を考えるのに苦労しています。トピック モデリング用のスクリプトの現在の作業バージョンは次のとおりです。
私が変更しようとしているのは、このプログラムに、単一のファイルではなくプレーン テキスト ファイルのコレクションを読み取らせることです。files.csv
私が理解しているように、lda-ruby は単一のファイルではなく、正しいトピック モデルを実行するために複数のファイルを検索するため、すべてのテキスト ファイルを単一のファイルに放り込むだけでは簡単ではありません。(私がこの結論に達したのは、このスクリプトで、corpus.txt
すべてのテキストを含む単一のテキストfiles.csv
ファイル[たとえば、
それで、私の質問は、lda-ruby でこれらのテキスト ファイルを異なる方法で反復処理するにはどうすればよいかということです。代わりに、ファイルの内容をハッシュに配置する必要がありますか? もしそうなら、どこから始めるべきかについての指針はありますか?または、これを破棄して、別の LDA ライブラリを使用する必要がありますか?
アドバイスをお寄せいただきありがとうございます。
r - Rのドキュメントのコーパスから「空の」文字アイテムを削除しますか?
私はニュース記事のコーパスをトピックモデル化するためにRのtm
andパッケージを使用しています。ただし、トピックを台無しにしているlda
「文字以外の」問題が発生しています。""
これが私のワークフローです:
残念ながら、私がldaモデルをトレーニングすると、最も頻繁に出現する単語が ""であることを除いて、すべてが見栄えがします。以下に示すように語彙から削除し、上記のようにモデルを再推定することで、これを改善しようとしています。
しかし、それはまだそこにあります。
これを削除する方法について何か提案はありますか?ストップワードのリストに追加""
しても役に立ちません。
python - Python でトピック モデルを実装する (numpy)
最近、あるサイトのコードを参考に、numpy を使って Python で LDA トピック モデルの Gibbs サンプリングを実装しました。ギブス サンプリングの反復ごとに、1 つの (現在の) 単語を削除し、LDA モデルから推測された事後条件付き確率分布に従ってその単語の新しいトピックをサンプリングし、次のように単語トピック カウントを更新します。
上記のコードでは、多項式 scipy 関数を使用して新しい (単一の) z をサンプリングします。
ここで、この論文の共同センチメント トピック モデルを実装したいと思います。ここで、必要なカウントを追跡するために次の構造が必要になります。
ここで問題が発生します。この Gibbs サンプラーでは、ドキュメントに表示される単語ごとに、新しいトピックと感情ラベルの両方が条件付き事後分布からサンプリングされます (論文の 4 ページの方程式 5)。Pythonで「これらの2つの値をサンプリングする」にはどうすればよいですか?
前もって感謝します...