アプリケーションの背景:
自然言語は、タイミング特性を有し、従って自然言語は、ニューラルネットワークのサイクルを介して処理されてもよいです。自然言語は、単語、文章、記事、ユニットとしてこれらの言語要素です。Pythonの最も一般的に使用されるword2vecツールはベクターの利点に単語を変換するために、ベクターに単語を変換することができる2つ以下の通りである:
(1)量子化され、デジタル処理にワード、それによって直接ニューラルネットワークにより算出され;
(2 )異なる単語間の関係は、距離ベクトルで表すことができるように、異なる単語間の距離を計算することができるベクターとの間の計算された距離を使用して。
リマインダー:
訓練前に、次の文でモジュールgensimをインストールする必要があります。
pip install gensim
この例では、次のコード:
#!/usr/bin/env python
# -*- coding:utf-8 -*-
import gensim
sentences = [['this', 'is', 'a', 'hot', 'pie'], ['this', 'is', 'a', 'cool', 'pie'],
['this', 'is', 'a', 'red', 'pie'], ['this', 'is', 'not', 'a', 'hot', 'pie']]
model = gensim.models.Word2Vec(sentences, min_count=1)
print(model.wv['this'])
print(model.wv['is'])
print('vector size:', len(model.wv['is']))
print(model.wv.similarity('this', 'is'))
print(model.wv.similarity('this', 'not'))
print(model.wv.similarity('this', 'a'))
print(model.wv.similarity('this', 'hot'))
print(model.wv.similarity('this', 'cool'))
print(model.wv.similarity('this', 'pie'))
print(model.wv.most_similar(positive=['cool', 'red'], negative=['this']))
コード説明:
(1)文章、本実施の形態における訓練データであり、それは4つのワードであり、すべて小文字に応じて、別の二次元アレイからなる各ワード形式、
(2)= gensim.models.Word2Vecモデル(文章、min_count =公式説明min_count 1パラメータ)である:低い総頻度ですべての単語を無視これより、 それはより少ないmin_countオフが発生するよりも、単語の数の影響を無視することである
。(3)プリント(model.wv [「この」])を出力する「この」単語ベクトル、ベクトルは100桁である;
(4)プリント(model.wv.similarity(「これは」、「である」))出力ワード「この」及び類似度値「である」;
(5)印刷(model.wv.most_similar(陽性= [「冷却 「赤」、」]、陰性= [「この」]))、most_similar 取り出しポジ近い見つけるために指定されたニーズを表し、このモデル最も類似する単語で指定ワード単語の単語、負その類似性は、あなたがこれまでの単語をしたいことを指定します。