ホームページ  >  記事  >  バックエンド開発  >  Python での gensim ライブラリ word2vec の使用

Python での gensim ライブラリ word2vec の使用

不言
不言オリジナル
2018-05-08 14:24:473517ブラウズ

この記事では主に Python での gensim ライブラリ word2vec の使用方法を紹介します。これを必要な友人に共有します。

pip install gensim ライブラリをインストールしたら、インポートできます。

1. トレーニング モデルの定義

from gensim.models import Word2Vec 
model = Word2Vec(sentences, sg=1, size=100, window=5, min_count=5, negative=3, sample=0.001, hs=1, workers=4)

パラメータの説明:

1.sg=1 は、低周波数に敏感なスキップ グラム アルゴリズムです。単語; デフォルトの sg=0 は CBOW アルゴリズムです。

2.size は出力ワード ベクトルの次元です。値が小さすぎると、競合によりワード マッピングが結果に影響します。値が大きすぎると、メモリが消費され、アルゴリズムの計算が遅くなります。通常、値は 100 ~ 200 の間です。

3.window は、文内の現在の単語とターゲット単語の間の最大距離です。3 は、ターゲット単語の前の 3-b 単語とその後の b 単語を見ることを意味します (b は 0 ~ 3 の間でランダムです)。

4.min_count は、単語のフィルタリングに使用されます。min-count 未満の単語は無視されます。デフォルト値は 5 です。

5. ネガティブとサンプルは、トレーニング結果に基づいて微調整できます。サンプルは、高頻度の単語が設定されたしきい値までランダムにダウンサンプリングされることを意味します。

6.hs=1 は、デフォルトでは階層ソフトマックスが使用され、負が 0 ではない場合、負のサンプリングが選択されることを意味します。

7.workers はトレーニングの並列処理を制御します。このパラメーターは Cpython がインストールされた後にのみ有効です。それ以外の場合は、単一のコアのみを使用できます。

パラメータの詳細な説明については、word2vec ソース コードを参照してください。

2. トレーニング後のモデルの保存と読み込み

model.save(fname) 
model = Word2Vec.load(fname)

3. モデルの使用法(単語の類似度の計算など)

model.most_similar(positive=['woman', 'king'], negative=['man']) 
#输出[('queen', 0.50882536), ...] 
 
model.doesnt_match("breakfast cereal dinner lunch".split()) 
#输出'cereal' 
 
model.similarity('woman', 'man') 
#输出0.73723527 
 
model['computer'] # raw numpy vector of a word 
#输出array([-0.00449447, -0.00310097, 0.02421786, ...], dtype=float32)

他のコンテンツ リピート, 詳細については、gensim の word2vec の公式説明が非常に詳しく説明されているので参照してください。


以上がPython での gensim ライブラリ word2vec の使用の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。