問題タブ [word-embedding]
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.
python - GoogleNews-vectors-negative300.bin 事前トレーニング済みモデルに欠落している単語ベクトルを追加する方法は?
Python で gensim word2vec ライブラリを使用し、事前トレーニング済みの GoogleNews-vectors-negative300.bin モデルを使用しています。しかし、
コーパスに単語ベクトルがない単語があり、そのために keyError を取得しています。この問題を解決するにはどうすればよいですか?
これが私がこれまでに試したことです、
GoogleNews-vectors-negative300.bin
1:トレーニング済みモデルごとの読み込み:
2: ツイート内のすべての単語ベクトルの平均値を使用してトレーニング セットの単語ベクトルを構築し、スケーリングします。
事前トレーニング済みの Word2vec モデルに新しい単語を追加する方法を教えてください。
python - tf.nn.embedding_lookup 関数は何をしますか?
この機能の役割が理解できません。ルックアップテーブルのようなものですか?各 ID (ID 内) に対応するパラメーターを返すことを意味するのはどれですか?
たとえば、skip-gram
モデルで を使用するtf.nn.embedding_lookup(embeddings, train_inputs)
と、それぞれtrain_input
に対応する埋め込みが見つかりますか?
python - Tensorflow のembedding_lookup
TensorFlow 関数を使用して、imdb データセットの単語表現を「ゼロから」学習しようとしていtf.nn.embedding_lookup()
ます。私がそれを正しく理解していれば、他の隠れ層の前に埋め込み層を設定する必要があり、勾配降下を実行すると、層はこの層の重みで単語表現を「学習」します。ただし、これを実行しようとすると、埋め込み層とネットワークの最初の完全に接続された層の間で形状エラーが発生します。
私が得るエラーは次のとおりです。
gensim - Word 埋め込みを使用して大規模なコーパスから概念を見つける
コンカニ語のコーパスで新しい概念を見つけようとしています。1) ドメイン固有のコーパス 2) 新聞コーパスで 2 つのモデルをトレーニングしました。
Gensim word2vec を使用してモデルをトレーニングしましたが、ベクトル空間で近接して同様の意味を持つ用語を取得できません。
終わりの言葉は互いに同義語の関係を示しません。それらの類似性は、ランダムな単語と同じくらい優れています。
私は何を間違っていますか?
machine-learning - 単語埋め込みを正しく使用していますか?
中心的な質問: 単語埋め込みを使用してテキストを表現する正しい方法は?
ツイートの感情分類アプリケーションを構築しています。ツイートをネガティブ、ニュートラル、ポジティブに分類します。私は、theano の上に Keras を使用し、単語埋め込み (Google の word2vec または Stanfords GloVe) を使用してこれを行っています。
ツイートのテキストを表すために、次のようにしました。
- 事前トレーニング済みのモデル (word2vec-twitter モデルなど) [ M ] を使用して、単語を埋め込みにマッピングしました。
- テキスト内の単語を使用してMをクエリし、対応するベクトルを取得します。したがって、つぶやき ( T ) が "Hello world" で、Mが単語 'Hello' と 'World' に対してベクトルV1とV2を与えるとします。
- ツイートTは、( V ) V1 + V2 (ベクトルを追加) またはV1V2 (ベクトルを連結) として表すことができます[これらは 2 つの異なる戦略です] [連結は並置を意味するため、V1、V2が d 次元ベクトルである場合、私の例Tは 2 次元ベクトルです]
- 次に、つぶやきTはベクトルVで表されます。
上記に従った場合、My Dataset はベクトル (使用する戦略に応じて単語ベクトルの合計または連結) に過ぎません。このデータセットでFFN、LSTMなどのディープネットをトレーニングしています。しかし、私の結果は素晴らしいものではありません。
これは単語埋め込みを使用してテキストを表現する正しい方法ですか? 他のより良い方法は何ですか?
あなたのフィードバック/批評は非常に役立ちます。
tensorflow - Tensorflow の単語埋め込み行列の一部のみを更新する
トレーニング中に事前トレーニング済みの単語埋め込みマトリックスを更新したい場合、単語埋め込みマトリックスのサブセットのみを更新する方法はありますか?
Tensorflow API ページを調べたところ、次のことがわかりました。
ただし、それを単語埋め込みマトリックスに適用するにはどうすればよいですか。私がそうするとします:
元の埋め込み行列を使用opt.apply_gradients
して更新するにはどうすればよいですか? (また、 の 2 番目の引数がでないtf.scatter_update
場合、tensorflow はエラーをスローします)compute_gradient
tf.Variable