Nlp

論文は、センテンス埋め込みのためのシンプルだがタフなベースラインを読んでいます



Thesis Reads Simple Tough Beat Baseline



このエッセイ 思い付いた SIF文の埋め込み メソッド、作者によって提供されたコードは Github

入る

一種として 監督されない 文間の類似性を計算する方法、 sif文の埋め込み 事前に訓練された単語ベクトルを使用し、加重平均法を使用して、文中のすべての単語に対応する単語ベクトルが計算され、文全体の埋め込みベクトルが取得されます。次に、文ベクトルを使用して類似性を計算します。



この論文の前に、この記事のアイデアに非常に似ているアイデアもあります。つまり、それらはすべて使用されています。 単語ベクトル 、平均法で得られた 文ベクトル 、重み付けするとき 重量計算方法 違いがあります。具体的には:

  • 文中のすべての単語を直接平均し、各単語の重みは同じで、文を埋め込みます
  • 各単語を使用する TF-IDF 値は加重、加重平均、文の埋め込みを取得

この紙を使用しています 滑らかな逆周波数、sif 代わりに、各単語の重みとして TF-IDF 価値、より良い結果を得ました。新しい単語の重み計算方法を使用することに加えて、加重平均の後、失われました 主成分 、最後に文の埋め込みを取得します。



さらに、この論文ではこの方法についても言及しています。 堅牢性

  • 異なるコーパス(マルチフィールド)トレーニングを使用して異なる 単語の埋め込み 、非常に良い結果を達成しており、さまざまなコーパスの親しみやすさを示しています。
  • 異なるコーパスを使用して取得 単語の頻度 単語の重みを計算する要素として、最終結果にはほとんど影響しません。
  • メソッドについて ハイパーパラメータ 広い範囲で、得られる結果は常にその領域にあります。つまり、ハイパーパラメータの選択はあまり影響を与えません。

理論

モデルを生成する

最初から 潜在変数生成モデル (潜在変数生成モデル)。このモデルは次のことを前提としています。コーパスの生成は動的なプロセスです。(t )言葉は最初にあります(t )ステップが生成されました。

すべての単語(に)1つに対応( mathbb {R} ^ d )次元ベクトル。そして、この動的なプロセスは 談話ベクトル (c_t in { mathbb {R} ^ d} )ランダムウォーク 駆動。 談話ベクトル この文を表す 何について話しているのか なので 潜在変数 、文の状態を表します。動的であるため、この状態は時間とともに変化するため、次のように記録されます。(c_t )



(に)ベクター(v_w )現在の時間で 談話ベクトル (c_t )内部製品 、単語と文全体の関係を示します。そして、私たちは仮定します(t )常に言葉を守る(に)この内積の確率 対数線形 (対数線形)関係:

[Pr( text {時間tで放出されたw} | c_t) propto { exp( langle c_t、v_w rangle)} ]

のため(c_t )比較的小さい ランダムウォーク 所有、(c_t )(c_ {t + 1} )それらの間には小さなランダムな差ベクトルしかないので、 隣接する言葉 近似 談話ベクトル 生成されます。追加の計算は、このモデルのランダムウォークが時折可能であることを示しています(c_t )より大きなジャンプがあり、共生確率にはほとんど影響しません。

この方法で生成された単語ベクトル、 word2vec(CBOW)グローブ 生成されたベクトルは類似しています。

2.ランダムウォークモデルの改善

上記のモデルで、私たちは次のように私のために文を取得したいと思っています 文の埋め込み :正解 談話ベクトル 行う 最尤推定 簡単にするために、注意してください(c_t )文全体で単語を生成する過程で、変化は小さいので、すべてのステップを実行します 談話ベクトル 固定ベクトルを仮定します(c_s )証明:はい(c_s )最尤推定値は、ベクトルを埋め込んだすべての単語の平均です。

このペーパーはこのモデルを改善し、追加しました 2つの平滑化項 、次の考慮事項について:

  • 一部の単語は、指定されたコンテキストの範囲外に表示されます。 談話ベクトル 影響力がある
  • 限られた単語(一般的なストップワードなど)の出現と 談話ベクトル 関係なし

これらの2つの理由から、2つの平滑化項が導入されます。まず、対数線形モデルの加法項です。( alpha p(w))、その中で(p(w))言葉です(に)コーパス全体で発生する確率(単語の頻度角度)、(アルファ)ハイパーパラメータ このように、さらに(c_s )内積は小さく、単語には確率があります。

次に、修正項目を紹介し、 一般的な談話ベクトル (c_0 in { mathbb {R} ^ d} )、その意味は文です 最も頻繁な意味 文と見なすことができます 最も重要な成分 、しばしば 文法 接続されています。記事は一言で言えば、それは一緒に行くと思います(c_0 )方向成分が大きくなり(つまり、ベクトル投影が長くなり)、この修正により、単語が表示される確率が高くなります。

修正後、与えられた 談話ベクトル (c_s )、 語(に)文中で(s )発生の確率は次のとおりです。

[Pr( text {wは文sで出力されます} | c_s) propto { alpha p(w)+(1- alpha) frac { exp( langle tilde {c} _s、v_w rangle )} {Z _ { tilde {c} _s}}} ]

その中で、( tilde {c} _s = beta c_0 +(1- beta)c_s、 c_0 perp c_s )(アルファ)(ベータ)すべて ハイパーパラメータ(Z _ { tilde {c} _s} = sum limits_ {w in {V}} exp( langle tilde {c} _s、v_w rangle))はい 正規化定数 式からわかるように、1つと(c_s )無関係な言葉(に)、次の理由で文に表示されることもあります。

  • から( alpha p(w))アイテムの価値
  • 一般的な談話ベクトル (c_0 )関連性

3.文のベクトルを計算します

文ベクトルは上記のモデルにあります(c_s )、 使用する 最尤法 見積もり(c_s )ベクター。まず、すべての単語のベクトルを想定します(v_s )おおざっぱに 均等に分散 ベクトル空間全体で、ここでの正規化(Z_c )異なる文の値については、ほぼ同じです。( tilde {c} _s )(WITH )値は同じです。この前提の下で、尤度関数が得られます。

[p [s | c_s] = prod limits_ {w in {s}} p(w | c_s)= prod limits_ {w in {s}} [ alpha p(w)+(1 - alpha) frac { exp( langle tilde {c} _s、v_w rangle)} {Z}] ]

対数を取ると、1つの単語が次のように記録されます

[f_w( tilde {c} _s)= log [ alpha p(w)+(1- alpha) frac { exp( langle tilde {c} _s、v_w rangle)} {Z }] ]

上記の式を最大化し、特に論文の詳細な説明に合わせて、最終的な目標は次のとおりです。

[ arg max limits_ {c_s} sum limits_ {w in {s}} f_w( tilde {c} _s)]

取得することができます:

[ tilde {c} _s propto sum limits_ {w in {s}} frac {a} {p(w)+ a} v_w、 a = frac {1- alpha} {アルファZ} ]

だからあなたは得ることができます:

  • 最適な解決策は、文中のすべての単語のベクトルです 加重平均
  • 頻度の高い単語の場合(に)、重量が小さいので、この方法も同等です ダウンサンプリング よくある言葉

最後に、決勝戦を勝ち取るために 文ベクトル (c_s )、見積もりが必要です(c_0 )ベクトルを計算することによって( tilde {c} _s )最初の主成分 (( PCA 主成分)で、次のように解釈します(c_0 )最終的な文のベクトルは( tilde {c} _s )主成分ベクトルを減算します(c_0 )

4.アルゴリズムの概要

アルゴリズムの手順全体は次のように要約されます。

南東

転載:https://www.cnblogs.com/databingo/p/9788244.html