問題タブ [gensim]

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.

0 投票する
1 に答える
1765 参照

python - Gensim はドキュメントのトピックを取得します (ドキュメントを参照)

gensim の lda モデルをトレーニングした後、次の方法で、目に見えないドキュメントのトピックを取得できることがわかっています。

しかし、すでにトレーニングに使用されているドキュメントはどうでしょうか? 新しいドキュメントのように扱わずに、トレーニングで使用されたコーパス内のドキュメントのトピックを取得する方法はありますか?

0 投票する
1 に答える
1209 参照

python - 各ドキュメントの特徴をスコアリングするために Gensim を使用します。また、Python メモリの問題

私はGENSIM、約 4000 の機能の辞書と共に 50000 のドキュメントのコーパスを使用しています。またLSI、同じモデルをすでに準備しています。

ここで、追加された各ドキュメントについて、最も一致する特徴を見つけたいと考えています。特定のドキュメントで最適な機能を見つけるために、すべてのドキュメントの各機能に対して gensim の類似性モジュールを実行しています。これにより、後で使用する各機能のスコアが得られます。しかし、ご想像のとおり、50000 以上のインデックスを反復処理し、それぞれに対して 4000 回の類似性の反復を実行する必要があるため、これはコストのかかるプロセスです。

約 1000 回の反復でシステムの 8 GB メモリが不足するため、これを行うためのより良い方法が必要です。反復中にメモリを再割り当てしているだけなので、メモリが増加し続ける理由は実際にはありません。驚くべきことに、メモリは約 200 回の反復後にのみ増加し始めます。

  1. なぜメモリの問題?どうすれば解決できますか?
  2. 特定のドキュメント (トピックではない) で最高スコアの機能を見つけるより良い方法はありますか?

メモリ不足になるコードのスニペットを次に示します。

編集:

メモリの問題は、メモリ プロファイラを使用して解決されました。そのループには、それを劇的に上昇させる別の何かがありました.

趣旨を詳しく説明します。さまざまなレシピ (各レシピはドキュメント) を扱っており、辞書の各項目は材料であると想像してください。以下の6つのそのようなレシピを見つけてください.

corpus = [[Olive Oil, Tomato, Brocolli, Oregano], [Garlic, Olive Oil, Bread, Cheese, Oregano], [Avocado, Beans, Cheese, Lime], [Jalepeneo, Lime, Tomato, Tortilla, Sour Cream], [Chili Sauce, Vinegar, Mushrooms, Rice], [Soy Sauce, Noodles, Brocolli, Ginger, Vinegar]]

そのようなレシピは何千もあります。私が達成しようとしているのは、各成分に 0 から 100 の間の重みを割り当てることです (重みの大きい成分が最も重要または最もユニークです)。これを達成するための最良の方法は何でしょうか。

0 投票する
3 に答える
750 参照

python - Python MySQLdb 変更文字列エンコーディング

私の問題は、PythonがSQLテーブルの列の文字エンコーディングでうまく機能しないことだと思います:

上記は、この列の出力を示しています。タイプvarchar(255)があり、エンコーディングがありますlatin1_swedish_ci.

このデータで Python を再生しようとすると、次のエラーが発生します。

gsgensimトピック モデリング ライブラリです。問題は、gensim が Unicode エンコーディングを必要とすることだと思います。

  1. データベース内のこの列の文字エンコーディング (照合?) を変更するにはどうすればよいですか?
  2. 代替ソリューションはありますか?

助けてくれてありがとう!

0 投票する
2 に答える
940 参照

topic-modeling - トピックモデリングとトピックの類似点の発見

問題文: いくつかのドキュメント (20k ドキュメント) があります。トピック モデリングを適用して類似のドキュメントを見つけ、それらの類似のドキュメントを分析して、それらが互いにどのように異なっているかを見つける必要があります。Q: これを達成するためのトピック モデリング パッケージを提案してくれる人はいますか? Mallet と Gensim Python を調べています。どちらが私の要件に最も適しているかわかりません。

どんな助けでも大歓迎です。

0 投票する
2 に答える
8995 参照

nlp - ウィキペディアの Gensim train word2vec - 前処理とパラメーター

gensimイタリアのウィキペディア「http://dumps.wikimedia.org/itwiki/latest/itwiki-latest-pages-articles.xml.bz2」を使用して word2vec モデルをトレーニングしようとしています。

しかし、このコーパスに最適な前処理が何であるかはわかりません。

gensimモデルは、トークン化された文のリストを受け入れます。私の最初の試みは、の標準WikipediaCorpusプリプロセッサを使用することgensimです。これにより、各記事が抽出され、句読点が削除され、スペースで単語が分割されます。このツールを使用すると、各文がモデル全体に​​対応することになりますが、この事実がモデルに与える影響については確信が持てません。

この後、デフォルトのパラメーターを使用してモデルをトレーニングします。残念ながら、トレーニングの後、私は非常に意味のある類似性を得ることができなかったようです.

このタスクにウィキペディアのコーパスで最も適切な前処理は何ですか? (この質問が広すぎる場合は、関連するチュートリアル/記事を参照してください)

これは私の最初の試行のコードです:

0 投票する
1 に答える
2170 参照

python - LDAトピックモデリングにgensimを使用したpython IndexError

別のスレッドに私のものと同様の質問がありますが、再現可能なコードは除外されています。

問題のスクリプトの目標は、できるだけメモリ効率の良いプロセスを作成することです。corpus()そこで、gensims の機能を利用するクラスを作成しようとしました。ただし、作成時に解決方法がわからない IndexError が発生していlda = models.ldamodel.LdaModel(corpus_tfidf, id2word=checker.dictionary, num_topics=int(options.number_of_topics))ます。

私が使用しているドキュメントは、gensim チュートリアルで使用したものと同じで、tutorial_example.txt に配置しました。

エラーを受け取りました

以下はgensim_topic_modeling.pyスクリプトです。

結果のtopic-modeling-logファイルは次のとおりです。助けてくれてありがとう!

トピックモデリングログ

0 投票する
2 に答える
14146 参照

nlp - トレーニング前のコーパスのword2vec見出し語化

Word2vec は、主に未加工のコーパス データでトレーニングされているようです。ただし、見出し語化は、多くの意味的類似性タスクの標準的な前処理です。word2vec をトレーニングする前にコーパスを見出し語化した経験があるかどうか、またこれが有用な前処理ステップであるかどうか疑問に思っていました。

0 投票する
0 に答える
324 参照

python - 「ValueError: 配列が大きすぎます」の処理方法。LDAを実行するとGensimで?

195145 個のドキュメント、6636308 個の機能、188901082 個のゼロ以外のエントリで LAD を実行する gensim チュートリアルを行います。コードは簡単です:

しかし、私は値のエラーを満たしています:

gensim はメモリ フレンドリーですが、なぜこのようなことが起こるのでしょうか? どうすれば乗り切れますか?