word2vec(転載)

出典:https://www.cnblogs.com/iloveai/p/word2vec.html

word2vec過去と現在

2013年には、Googleのオープンソース・ツールは、ベクトル計算--word2vec単語のために、産業界と学界の注目を集めました。まず、word2vecを効率的に辞書データセットの何百万のために訓練することができ、第二に、ツールによって得られた訓練結果 - ワードベクトル(ワード埋め込み)は、単語間の良好な尺度であることができます類似。自然言語処理の深い学習(ディープ・ラーニング)の普及とアプリケーションで、多くの人が誤ってword2vecが深い学習アルゴリズムであると思います。実際には、背後にあるword2vecアルゴリズムが浅く、ニューラルネットワークです。また、強調するword2vecはの計算単語ベクトルへのオープンソースのツールである、ということです。我々はword2vecアルゴリズムまたはモデルを言うとき、実際に単語ベクトルを計算するCBoWと​​スキップ-gramモデルのための基礎となるモデルを参照する場合、。多くの人々は、これは誤謬である、word2vecがモデルまたはアルゴリズムを指しだと思います。次に、我々は、統計的言語モデルから開始し、モデルは可能なツールword2vec多くの詳細背後にあるアルゴリズムのインとアウトを説明しています。

統計的言語モデル

深word2vecアルゴリズムの詳細の前に、自然言語処理の基本的な問題で、我々初見:特定の言語でテキスト列が表示される確率を計算する方法?それは多くのNLPタスクが重要な役割を果たしているため、合計が、根本的な問題と呼ばれています。私たちがターゲット言語におけるすべての単語の確率を知っていれば翻訳結果が返される例えば、機械翻訳の問題は、あなたが最も合理的なセンテンスから候補セットから選ぶことができます。

統計的言語モデルは、この種の問題に対処するための基本的なフレームワークを提供します。テキストのシーケンスS = W1、W2、...、WTS = W1、W2、...、WTは、その確率は次式で表すことができます。

 

P(S)= P(W1、W2、...、WT)=πT= 1TP(重量| W1、W2、...、WT-1)、P(S)= P(W1、W2、.. 。、WT)=πT= 1TP(重量| W1、W2、...、WT-1)


条件付き確率の一連の製品に今後の同時確率配列。(| W1、W2、...、WT-1重量)、P(重量| W1、W2、...、WT-1)の質問は下に与えられた前の単語の確率p条件を予測する方法になります。

その巨大なパラメータ空間のため、実際には、このような元のモデルと任意の卵を使用していませんでした。私たちは、より簡易版--Ngramモデルを使用しています:

 

P(重量| W1、W2、...、WT-1)≈p(重量| WT-N + 1、...、WT-1)、P(重量| W1、W2、...、WT-1 )≈p(重量| WT-N + 1、...、WT-1)


共通のバイグラムモデル(N = 2 N = 2)、トライグラムモデル(N = 3N = 3)。実際には、モデルや予測精度の複雑さのために、我々はほとんどのN>モデル3N> 3を検討していません。

各nグラムの単語頻度統計条件に相当 - 私たちは、NGRAMモデルパラメータを解決するために最尤法を使用することができます。

(トレーニングセットNGRAMセグメントで前に見たことがないいくつかは、シーケンス全体の確率は00になります)が発生ゼロ確率統計的な問題を回避するためには、さらに低レベルの元のモデルNGRAMバックオフトライグラムモデル(に基づいて開発されています条件付き確率ユニグラム、バイグラム、トリグラム3つの線形関数)として表現バイグラム、代わりにゼロのトリグラムのユニグラム確率)と補間トライグラムモデル(。ここではそれらを繰り返すわけではありません。興味のさらなる関連文献[3]を読み取ることができます。

分散表現

しかし、NGRAMモデルには限界があります。まず、原因パラメータ空間の爆発的な成長のために、それは長いプロセスのコンテキスト(N> 3N> 3)を処理することはできません。第二に、それは単語間の固有のつながりを考慮していません。例えば、この文「猫が寝室に歩いている」ことを検討してください。私たちは「犬は寝室に歩いている」と同様、訓練コーパスに多くのことを見れば、我々はこの文を見ていないので、場合でも、または「catからも、このような文「猫が寝室で実行されています」 「および」犬「(」歩行「と」走行「)、この文の推定確率[3]との間の類似性。しかし、NGRAMモデルができません。

単語がNGRAM性を処理するために、単離されたユニット原子(原子単位)であるように、これはあります。数学的な形へのこのアプローチの対応は、離散ワンホットベクター(00辞書インデックス付き文字相当の方向以外は図11に示すように、残りの方向である)です。例えば、辞書55のサイズのために:{「I」、「愛」、「自然」、「luaguage」、「処理」}、「自然」ワンホットベクトルに対応する:[0、0、 0,0] [0,0,1,0,0]。明らかに、寸法のワンホットベクトルは、辞書のサイズに等しいです。これは辞書数千または数百万もの何百もの実用的なアプリケーションであり、大きな問題(次元の呪い)に面し、災害の大きさ

だから、人々は自然に連続密ベクトルそれの特性を記述するために単語を持つかどうか、を考えるのだろうか?このように、我々は直接ワード間の類似性を記述することができるだけでなく、ワードはまた、ベクターからの同様の単語ベクトルが類似した確率空間にマッピングすることができる確率の平滑関数にモデルを構築することができます。このベクターはまた、緻密な連続ワードが表現[3]に分布していると呼ばれています。

実際には、情報検索(情報検索)の分野でこの概念は長い間、広く使用されています。しかし、IRフィールドに、この概念は、ベクトル空間モデル(ベクトル空間モデル、以下VSMと呼ぶ)として知られています。

統計的言語は、隠された意味情報を提供しています(人間の言葉の使用状況の統計的パターンは、人々が何を意味するかを把握するために使用することができます):VSMは、統計的仮説セマンティクス[4]に基づいています。例えば、類似文書分布を有する2つの単語は、同様のテーマと考えることができます。仮説派生バージョンがたくさんあります。このうち、2良く知られているバージョンは、単語仮説と分布的仮説のバッグです。前者は、(代わり語順の)文書の単語頻度は、文書のテーマを表すと言われ、後者は二つの単語同様のコンテキストは、同様の意味を有している、と言うことです。その後、我々が表示されます、word2vecアルゴリズムは、分布的の仮定に基づいています。

だから、VSMは、それの密な連続分布表現方法スパース離散ワンホットワードベクトルマッピングですか?

単語仮説のバッグに基づいて簡単な言葉では、我々は用語 - ドキュメント行列AAを構築することができます:愛のラインマトリクス,:愛、:単語の辞書に対応する、行列の列をA:、JA:、jの対応訓練を文書コーパスに、マトリックスは、要素AijAijは文書DjDjに現れるwiwi時間(又は周波数)の単語の数を表します。そこで、我々は、(実際には、より多くの私たちは、テーマベクトル列ベクトルとしてドキュメントを使用している、が)意味ベクトルワードとして行ベクトルを抽出することができます。

同様に、我々は、ワード文脈分布的仮説に基づいて行列を構築することができます。このとき、ワードコンテキストに行列の列だけでなく、行列の要素のコンテキストウィンドウの単語の共起の数に。

マトリクスの行ベクトルのこれらの2つのタイプが微妙な違いと類似性を計算することを注:用語 - ドキュメントマトリックスはしばしば2つのワード内の文書との高い類似性を与えます;とワードコンテキストがマトリックスになりますこれら二つは同じコンテキスト類似度の高い所定の単語を持っています。類似度の高い順である前者に関しては、それは、より広く、従来の情報検索に使用されています。

しかし、この共起行列は、データスパース性と災害の大きさの問題がまだあります。この目的のために、一連の方法は、マトリックスの寸法を小さくする(例えば、LSI / LSA等)が提案されています。これらのメソッドは、SVD大きなアイデア、2つの低階数行列の形に元の疎行列に基づいています。

VSMの詳細な説明は、エンド[4]でさらに読み出し参照テキストであることができます。

ニューラルネットワーク言語モデル

次に、私たちは、統計的言語モデルの議論に戻りましょう。神経の確率的言語モデル[3]:不足NGRAMと他のモデル、2003年には、Bengio、精液記事を掲載考えます。この記事では、彼らが基礎を築いたコンセプトを埋め込むワード(いないその名前かかわらず)を、ニューラルネットワーク(以下、NNLMと呼ばれるニューラルネットワーク言語モデル)を用いて統計的言語モデルの確立のための枠組みをまとめ、初めて基本的な単語表現学習のフォローアップ調査を含めword2vec含みます。

次のように基本的な考え方のNNLMモデルを要約することができます。

  1. 連続特徴ベクトルに各語彙の対応を想定。
  2. 滑らかな連続した確率モデルを仮定すると、入力シーケンスベクトルワードの期間は、このシーケンスの出力結合確率であってもよいです。
  3. 学びながらパラメータの重みと確率モデルの右の単語ベクトルを。

注目に値するポイントは、ここではパラメータベクトル単語が学習するということです。

2003の論文では、簡単な前方フィードバックニューラルネットワークFを使用Bengio、(重量-N + 1、...、重量)は、f(重量-N + 1、...、重量は)に意向一緒に条件付き確率pの単語列(重量| W1、W2、...、WT-1)P(重量| W1、W2、...、WT-1)。ネットワーク全体の構造モデルは以下の通り:

ニューラルネットワーク言語モデル

我々は2つの部分に分割することができ、モデル全体を理解します:

  1. 第線形埋め込み層です。N-1N-1がCC D×VD×VはN-1N-1番目のワードベクトル分散(分散ベクトル)にマッピングされる共有マトリックスを通して、単語を入力したワンホット番目のベクター。ここで、VVは、辞書のサイズであり、DDは、埋め込み次元ベクトル(先験的パラメータ)です。単語ベクトルに保存されているCC行列を学習します。
  2. ニューラルネットワークへのシンプルなフロントのGGのフィードバックが続きます。これは、双曲線正接隠れた層と出力層のソフトマックスで構成されています。長分布のためVVベクトルを埋め込む出力層にマッピングされた単語のN-1N-1ベクターによる確率、それによって、辞書の単語入力がコンテキストで条件付き確率の推定を行いました。

    P(のWi | W1、W2、...、WT-1)≈f(WI、WT-1、...、WT-N + 1)= G(WI、C(WT-N + 1),. ..、C(WT-1))P(のWi | W1、W2、...、WT-1)≈f(WI、WT-1、...、WT-N + 1)= G(WI、 C(WT-N + 1)、...、C(WT-1))

我々は、モデルパラメータθθを調整するために、クロスエントロピー正則損失関数を最小化することによって行うことができます

 

L(I)= 1TStlogf(WT、WT-1、...、WT-N + 1)+ R(I)L(I)=1TStlog⁡f(WT、WT-1、... 、WT-N + 1)+ R(I)

前記素子CCを埋め込むマトリックスを含むモデルパラメータθθ層、及びフィードバックニューラルネットワークモデルの重みで再GG前。これは、巨大なパラメータ空間です。しかし、パラメータSGDは、学習のモデルを更新したときに、すべてのパラメータ(例えば、ワードベクトルに対応する単語が文脈入力に表示されない)を調整する必要があります。主なボトルネックが正規機能ソフトマックス層に基づいて計算される(再び辞書単語の全ての条件付き確率を計算する必要があります)。

しかし、このような単純なモデルでは、それの大成功となりますなぜ私たちが求める必要があり、複雑なパラメータ空間を誓いましたか?

注意深い観察は、実際には、同時に2つの問題を解決するため、このモデルは、ことがわかります:1は、確率pで統計的言語モデルの状態を心配さ| P(重量文脈)|(重量コンテキスト)を計算するステップと、ベクトル空間モデルでは、懸念されます単語の発現ベクター。本質は、これらの2つの問題を分離されていません。私たちすることができますので、データのスパース性の問題と根本的に次元の呪いを容易に、連続したシーケンス確率モデリング空間に連続してスムーズなベクトルの確率モデルを導入した単語。一方、条件付き確率をP(重量|コンテキスト)P(重量|コンテキストが)より指導で、学習目標ベクトル重いを更新する権利言葉ですが、また、分配的仮説でVSMと一致しています。

CBoW&スキップ-gramモデル

そんなに寝具、ついに果たした主人公を回します。

しかし、主人公正式デビュー前に、我々はいくつかの問題NNLMを見てください。

一つの問題は、nグラムモデルのように、NNLMモデルのみの固定長配列を扱うことができる、ということです。比較バイグラム及びトライグラムが大幅に向上するが、依然として柔軟性を欠いてきたが2003年の論文では、NNモデルの配列の長さであろうBengioは、55までの処理が可能です。

したがって、代わりにニューラルネットワークへのリカレントニューラルネットワークのフィードバックを前に元のモデル、及び埋め込み層の2010年RNNLMモデルを提案しMikolov、[7]は、長いを解決するように、隠された層にRNNと合わせました一連の質問。

もう一つの問題はより深刻です。NNLMトレーニング遅すぎます。でも、データセットの数百万人の順で、でも訓練のためのCPU 40によって、NNLMも少し飛ぶに対する解決策を与えることを数週間かかるする必要があります。もちろん、今のところ、何百万または実際のコーパスのにも数千億で、NNLMトレーニングモデルはほとんど不可能使命です。

このとき、またはMikolovが目立つこと。彼は、元NNLMトレーニングモデルは、実際には2つの段階に分けることができる次のように述べています。

  1. 継続的な研修ベクトル・ワードの単純なモデル。
  2. Wordの発現ベクターベース、NGRAMニューラルネットワークモデルの継続的な研修。
    主に第2段階の演算ボトルネックNNLMモデル。

私達はちょうど連続特徴ベクトルの単語を取得したい場合には、ニューラルネットワークモデル、その中に第2工程を簡素化することができないのですか?

Mikolovは同じことをやった、そう思います。彼の息は2013年に2枚の紙を立ち上げ、および計算単語ベクトルへのオープンソースツール - これまでのところ、word2vecは、主人公のデビューを判明しました。

以下は、私はあなたにword2vecアルゴリズムの下で、単純な分析原理をリードします。上記の基本で、理解word2vecアルゴリズムは非常に簡単になります。

まず、我々は、元NNLMモデルの次の変換を行います。

  1. ニューラルネットワークの隠れ層に非線形フィードバックを除去する前に、直接ソフトマックス層埋め込み層と出力層は、中間層に接続されています。
  2. 配列情報のコンテキスト無視:同一の埋め込み層の体積のすべての入力ワードのまとめ。
  3. コンテキストに将来の言葉

得られたCBoWモデルと呼ばれるモデル(連続バッグ-のワードモデル)word2vec最初のモデルアルゴリズムです。

モデルcbow

数学的な観点から、CBoWモデルは、連続的な埋め込みベクトルを生じる、行列、ベクトル埋め込みの単語モデルのバッグと同等です。また、これはモデル名のCBoWの原点です。

CBoW予測モデルは、まだ発現ベクター中の単語へのターゲット単語の文脈から学んでいます。ターンでは、我々はそれを学習に単語ベクトルにターゲット単語の文脈を予測することができますか?明白な答えが可能です:

スキップ-gramモデル

このモデルは、スキップ-gramモデル(モデルの名前に由来し、トレーニング中の単語の文脈でサンプリングします)と呼ばれています。

旧スキップ-gramモデルは、数学的な計算の形で書かれている場合は、我々が得ます:

 

P(WO | WI)=eUo⋅ViΣjeUj⋅Vip(WO | WI)=eUo⋅ViΣjeUj⋅Vi


層は、マトリクスの列ベクトルで埋め込み、前記ビビは、またwiwi入力ベクトルをいいます。UjUjソフトマックス層はまた、出力ベクトルwjwjと呼ばれる、行列の行ベクトルです。

したがって、スキップグラムモデルの性質は、入力ワードと目標出力ベクトルのワード、及びソフトマックス正規化を計算する入力ベクトルとの間のコサイン類似度私たちは、モデルパラメータから学ぶべき正確用語ベクトル、これらの2つのタイプです。

しかし、単語の辞書への直接の類似度を計算し、正規化VV、明らかに非常に時間がかかることは不可能の使命です。階層ソフトマックス(階層ソフトマックス)と陰性試料(陰性サンプリング):この目的のために、Mikolovは、2つの最適化アルゴリズムを導入します。

階層ソフトマックス[5]

ソフトマックス・レベルのアプローチは、第一言語モデルにBengioによって2005年に導入されました。基本的な考え方は、条件付き確率の形で製品のシリーズに複雑な正規確率です。

 

P(V |コンテキスト)=πI= 1MP(BI(V)| B1(V)、...、BI-1(V)、コンテキスト)P(V |コンテキスト)=πI= 1MP(BI(V )| B1(V)、...、BI-1(V)、コンテキスト)


前記単純なロジックによりバイナリ分類問題の条件付き確率に対応する各層は、回帰関数をフィットします。このように、我々は確率logVlog⁡Vワードに変換問題を正規化確率VVの言葉は、問題に適合します。

私たちは、直感的に、バイナリツリー分類を構築することにより、このプロセスを理解することができます。P(wt∈D1|コンテキスト)物流の対象|まず、我々は、元の辞書は2つのサブセットD1D1、D2D2に分割され、所与のコンテキストの下で、ターゲットワードがD1D1確率p(コンテキストwt∈D1)のサブセットに属すると仮定されているDDよフォームの機能:

 

P(wt∈D1|コンテキスト)= 11 +電子UDroot⋅Vwtp(wt∈D1|コンテキスト)= 11 +電子UDroot⋅Vwt


どこのパラメータはUDrootUDrootとVwtVwtモデルです。

次に、我々はさらに細分D1D1とD2D2を設定することができます。コレクション、1つの単語だけになるまで、このプロセスを繰り返します。このように、私たちは辞書DD VVの元のサイズがlogVlog⁡Vバイナリツリーの深さになった変換されます。リーフは、ワード1の対応の元の辞書ツリーのノード;非リーフノードは、単語の特定のタイプのコレクションに対応します。もちろん、ルートノードから任意の葉ノードに開始することは一つだけのユニークなパスである - このパスもエンコードリーフノードは、このカテゴリに属します。

同時に、リーフノードのプロセスにルートノードから始まることはランダムウォークです。したがって、我々は、バイナリツリーのリーフノードは風雲ベース現れるの可能性の確率を計算することができます。例えば、ターゲットワードwtwtためのトレーニング試料において、{1,0,1、...、1}、{1,0,1、...、1}として符号化された対応するバイナリを仮定し、我々が構築します尤度関数は次のようになります。

 

P(重量|コンテキスト)= P(D1 = 1 |コンテキスト)P(D2 = 0 | D1 = 1)、...、P(重量| Dk値= 1)P(重量|コンテキスト)= P(D1 = 1 |コンテキスト)P (D2 = 0 | D1 = 1)、...、P(重量| Dk値= 1)


私たちは、それぞれのロジスティック回帰の積の関数です。

非リーフノード上のベクトル、子ノードへの散歩の確率を計算するために使用される - 私たちは、尤度関数を最大化することにより、バイナリツリーのパラメータを解決することができます。

ソフトマックスのレベルは非常に巧妙なモデルです。これは、計算の複雑さは、VVへの初期から、バイナリツリーを構築することにより、注文logVlog⁡Vの確率を低減対象となります。しかし、価格が人為的に単語と単語間の結合強化されて支払いました。例えば、単語の発生の条件付き確率の変化は、それが間接的に別の単語の発生の条件付き確率に影響の様々な程度をもたらす、変化のパス上のすべての非リーフノードの確率に影響を与えます。そのため、意味のある二分木構造は非常に重要です。練習は、ほとんどのアプリケーションシナリオのニーズを満たすためにコーディングバイナリツリーハフマンに基づいて、実用的なアプリケーションでは、それを証明しています。

負のサンプリング[6]

アイデアは、本来の正規化推定問題になることができない確率モデルのパラメータを解決するためにもともとノイズ対照推定アルゴリズム[6]と呼ばれる負試料から来ました。出力確率レベルソフトマックスアルゴリズム変換モデル異なるが、NCEの再構成アルゴリズムは、モデルの尤度関数です。

スキップ - グラムをモデル化するために、例えば、元の尤度関数の対応する多項分布に。最尤法を使用して、この尤度関数を解くことで、我々はのクロスエントロピー損失関数を取得します:

 

J(θ)= - =1TΣt1TΣ-c≤j≤c、J≠0logp(重量+ J |重量)J(θ)= - =1TΣt1TΣ-c≤j≤c、J≠ 0log⁡p(重量+ J |重量)


式P(重量+ J |重量)のp(重量+ jを|重量)は、確率の全体正規の辞書です。

NCEのアルゴリズムでは、我々はこのような問題を構築:学習サンプル<コンテキスト、単語>、私たちが知りたいのセットの場合、目標駆動のコンテキスト、または前提バックグラウンドノイズドライブからある単語が登場しましたか?もちろん、我々は質問に答えるためにロジスティック回帰関数を使用することができます。

 

(|コンテキスト)-logkpn(W)のlogP(W)、P(D = 1 | W + KPN(W)=σP(D = 1 | W、コンテキスト)= P(W | |コンテキスト)(コンテキストW)p 、コンテキスト)= P(W |コンテキスト)P(W |コンテキスト)+ KPN(W)=σ(log⁡p(W |コンテキスト)-log⁡kpn)(W)


この式は、対象の単語が文脈主導からWWという確率を与えます。前記、KKは、ノイズのサンプリング周波数を示す先験的パラメータです。pは(W |コンテキスト)P(W |コンテキスト)分子部分本明細書にソフトマックス正規化関数を使用して、非正規確率分布です。PN(W)PN(W)されたバックグラウンドノイズワード分布。ユニグラム分布の一般的に使用される言葉。

<コンテキスト、単語、ラベル>:サンプリングによってKKのノイズ分布は、私たちは、新しいデータセットを取得します。これは、ラベルソース(実際のデータ分布のか、バックグラウンドノイズ分布を?)マーキングデータを。この新しいデータセットでは、我々は、尤度関数式ロジスティック回帰を最大化することにより、モデルのパラメータを解決するために来ることができます。

論文が提唱し、2013年に負のサンプリングアルゴリズムMikolovは、NCEの簡易版です。、Mikolovは、雑音分布に依存NCE尤度関数を放棄し、このアルゴリズムでは、元の分子ソフトマックス関数の直接使用は、計算を簡素化し、ロジスティック回帰に関数を定義します。

 

P(D = 1 | WO、WI)=σ(Uo⋅Vi)、P(D = 1 | WO、WI)=σ(Uo⋅Vi)


この場合、目的関数を対応するモデルは次のようになります。

J(I)=ログ(Uo⋅Vi)+ Sjに= 1kEwj〜PN(W)[ログ(-Uj⋅Vi)] J(I)=log⁡s(Uo⋅Vi)+ Sjに= 1kEwj〜PN [log⁡s(-Uj⋅Vi)](W)

ダウンサンプリング(サブサンプリング):ソフトマックスと陰性サンプルはここに提示アルゴリズムのレベルを最適化することに加えて、13年の論文でMikolovはまた、別のトリックを導入しました。基本的な考え方は、確率ランダム廃棄、それらの高頻度語での訓練です。

 

pdiscard(W)= 1-TF(W)-----√pdiscard(W)=(W)1-TF


ここで、TTパラメータは、一般的に10-510-5に連れて行かれ、先験的です。F(W)は、f(W)は、コーパスWWにおける出現頻度です。

実験は、このダウンサンプリング技術が大幅に低頻度語の単語ベクトルの精度を向上させることができることを示しています。

Wordのベクトルを越えて

モデルの応用 - アルゴリズムと原則word2vecモデルの概要は、のは、気軽トピックのいくつかを説明しましょう。

13年後word2vecモデルは、ほとんどの話の一つは、意味と構文の類似点におけるベクターの使用は、それを学んで、判明 - 特に、この類似性は、数学的な意味で加減算に実際にある[8 ]!V( "男")+ V( "女")= V( "女王")、V( "キング") - - V( "男")+ V(最も古典的な例は、V( "王")であります"女")= V( "女王")。しかし、この例では、あまり実用には思えません。

また、word2vecモデルは、機械翻訳システムで使用されると、エリアをお勧めします。

機械翻訳[9]

後で提案し、word2vecモデルと文レベルでの機械翻訳のRNN異なるモデルは、主にワードサイズの機械翻訳のために使用されています。

具体的には、まず、各言語のword2vec式にモノリンガルコーパスの大多数から学び、その後、小さなバイリンガルコーパスを持つ2つの言語の線形マッピング関係WW word2vec表現を学びます。次のように損失関数を構築しました:

 

J(W)=Σiは= 1N || Wxi-ZI || 2J(W)=Σiは= 1N || Wxi-ZI || 2

変換プロセスでは、まずword2vecベクトルソース言語はマトリックスWWを介して、ターゲット言語のベクトル空間にマッピングされ、次いで、ターゲット言語のベクトル空間における投影ベクトルに最も近いワードとリターンから翻訳されるような結果を見つけます。

原理は、さまざまな言語に幾何学的に一定の同型を持つword2vecベクトル空間を学ぶことです。WWをマッピングする空間配向本質的に線形変換行列です。

Item2Vec [11]

本質的に、word2vecモデルは、単語のコンテキストに基づいて、共起行列に設定されています。したがって、共起行列に基づいて、任意のアルゴリズムモデルは、アイデアを向上させることword2vecアルゴリズムを適用することができます。

例えばアルゴリズムの分野において、協調フィルタリング推薦システム。

協調フィルタリングアルゴリズムは、行または列ベクトルの類似性によって推薦に基づいて、ユーザ項目マトリックスの共起に基づいています。私たちは、コンテキストと同じユーザのアイテムを購入した場合は、アイテムのコンテキストのマトリックスを作成することができます。さらに、モデルは、項目にこのマトリックスを発現するベクターを計算するために高次で算出されたアイテムの類似性をCBoWまたはスキップグラムモデルを描画することができます。

このword2vecより多くのアプリケーションについて、この文書[10]をさらに参照します。

Wordの埋め込み

最後に、私はシンプルな推敲の埋め込み言葉に私の反射を考えます。必ずしも正確ではない、我々はまた、異なる意見をお待ちしております。

Wordは最初Bengio 2003 [3]に掲載された精液の記事に登場埋め込みます。、およびタスク言語モデルを介して線形射影行列(射影行列)、緻密な連続ベクトルをマッピング元のワンホットベクトルを埋め込むことによって、この重みベクトル研究します。このアイデアは広くでNLPを含むword2vecを含め、様々なモデルで使用されるようになりました。

トレーニング方法を埋め込む語は、2つのカテゴリーに分けることができる:一つは教師なしまたは教師弱い事前訓練され、教師の端に一端(エンドツーエンド)。

word2vecと自動エンコーダに何ら事前トレーニングや監督と弱い監視は表しません。手動ラベルされたサンプルの多くを必要としないこのタイプのモデルの特徴は、あなたは、埋め込みベクトルの良い品質を得ることができます。しかし、理由の不足のタスク指向、そしてかなりの距離を解決するために、我々が持っている問題かもしれません。したがって、我々は微調整にサンプルマニュアル注釈少量のモデル全体で、事前に訓練された埋め込みベクトルで取得する傾向があります。

近年では対照的に、より多くのエンド教師モデルともっと注意。教師なしモデル機種と比較すると、多くの場合、構造が複雑です。それと同時に、また、明確なタスク指向があるので、ベクトルを埋め込むのエンド・ツー・学ぶモデルもより正確になる傾向があります。例えば、複数の層によって相互に接続されており、文章の感情的な分類を達成するために深さ畳み込みニューラルネットワークを埋め込む、あなたは言葉より豊かな発現ベクターの意味を学ぶことができます。

別の研究Wordの埋め込みは、より高いレベルでのベクトルの文を埋め込むモデル化されています。

私たちは、単語が文の基本単位である、知っています。CBoWモデルのように - 最も簡単で最も直接的な方法の一つは、すべてからなるすべての単語の文がアップ追加埋め込むベクトルを埋め込む文を取得することです。

明らかに、この単純な情報の多くを失う粗製の方法。

word2vecアイデア学ぶためのもう一つの方法 - そしてCBoWモデルやスキップグラムと訓練、特殊な単語として、文や段落を[12]。このアプローチの問題はある、新品のため、常に新しいsentence2vecを再教育する必要があります。また、word2vecと同様に、このモデルは、教師のトレーニングガイドの欠如です。

訓練終了ワード埋め込むベース - 個人的な感情は、第三のアプローチより信頼性の高いです。これは、シーケンスの文自然の言葉です。したがって、埋め込みワードに基づいて、我々は、ワード埋め込み、それによって文の埋め込みの配列をコードする、複数のRNN又は畳み込みニューラルネットワークモデルを接続することができます。

この分野での作業が多くなっています。機会を持って、私は文の埋め込みについてのレビューを書きます。

リファレンス

[1]:Mikolov、T.、チェン、K.、コラード、G.、&ディーン、J.(2013 1月17日)。ベクトル空間でWord表現の効率的な推定。arXiv.org。

[2]:Mikolov、T.、Sutskever、I.、チェン、K.、コラード、G.、&ディーン、J.(2013、10月17日)。単語と例文とそのCompositionalityの分散表現。arXiv.org。

[3]:Bengio、Y.、Ducharme、R.、ヴィンセント、P.、&Janvin、C.(2003)。神経の確率的言語モデル。機械学習研究のジャーナル、3、1137年から1155年。

[4]:Turney、PD、&Pantel、P.(2010)。周波数から意味へ:セマンティクスのベクトル空間モデル。人工知能学会誌、37(1)。

[5]:モリン、F.、&Bengio、Y.(2005)。階層的確率的ニューラルネットワーク言語モデル。Aistats。

[6]:Mnih、A.、&Kavukcuoglu、K.(2013)。ノイズ対照推定、2265-2273で効率的に単語の埋め込みを学びます。

[7]:Mikolov、T.、Karafiát、M.、Burget、L.、&Cernocký、J.(2010)。リカレントニューラルネットワークに基づく言語モデル。Interspeech。

[8]:Mikolov、T.、儀、W.、&ツヴァイク、G.(2013)。連続空間Wordの表現で言語規則性。HLT-Naacl。

[9]:Mikolov、T.、ル、QV、&Sutskever、I.(2013年9月17日)。機械翻訳のための言語間の類似性を悪用。arXiv.org。

[10]:Collobert、R.、ウェストン、J.、Bottou、L.、Karlen、M.、Kavukcuoglu、K.、&Kuksa、P.(2011)。スクラッチからの自然言語処理(ほぼ)。機械学習研究のジャーナル、12(8月)、2493年から2537年。

[11]:Barkan、O.、&ケーニヒシュタイン、N.(2016年3月14日)。Item2Vec:神経アイテム協調フィルタリングのための埋め込み。arXiv.org。

[12]:ル、QV、&Mikolov、T.(2014年5月16日)。文章やドキュメントの分散表現。arXiv.org。

公開された44元の記事 ウォン称賛16 ビュー10000 +

おすすめ

転載: blog.csdn.net/YYIverson/article/details/103928157