X

Embeddingの違いによる後段タスクへの影響推定:Understanding the Downstream Instability of Word Embeddings

MLSys 2020の論文より。Embeddingが異なった場合、後段のNLPタスクに対してどれだけの影響があるかを、後段モデルの訓練を行わないで推定しようという論文の「Understanding the Downstream Instability of Word Embeddings」を読んだ。

概要

トレーニングデータが少し変わっただけでモデルの性能が不安定になったりする現象がある。この論文では、自然言語処理モデルにおいてEmbedding層のサイズとトレーニングデータの変更による性能低下に関係性があることを調査した。
そのような関係性を、理論的に説明するために、eigenspace instability measureという指標を導入して後段の予測がどの程度変わるかを予測することができることを示した。

この手法は、 knowledge graph や contextual word embeddingのような他のembedding手法にも、この指標は拡張できることを示している。

そもそも、word embeddingが近傍何単語でトレーニングするかといったパラメータによって大きくパフォーマンスが変わってくることが分かっている。しかしその影響が、後段のNLPタスクにどの程度の影響が出るかが検討されていなかった。

例えば、embeddingのトレーニングに1%のデータを追加しただけで、感情分析タスクで15%の違いが出るようになった。この論文では、メモリ使用量とのトレードオフも調査されており、2倍のメモリを使うようにしたところ5~37%程の性能低下を抑えることができるようになった。

この論文で提唱されている、eigenspace instability measureは二つのword embeddingの固有空間がどれだけ重なるかを表した指標である。これを用いると、どの程度embeddingが変化したかが分かり、さらに下流のモデルを再学習することなくdimension-precisionパラメータを選択できるようになる。

この指標は他の指標で選んだパラメータに比べて、後段のタスクの性能低下が少なく済んでおり、なおかつ理論的にこの指標とモデルの性能に関係性があることを示している。

前提

WordEmbeddingのアルゴリズムの解説や、 圧縮技術としてuniform quantizationを利用などが解説されている。

また、WordEmbedding同士の距離の測り方として、以下の4種類を活用して比較実験している。

  • k-Nearest Neighbors(k-NN) Measure
    ランダムにサンプルされた単語に対してk個の近い単語を2つのEmbeddingから出して、どれだけ重なりがあるかを測る指標
  • Semantic Displacement
    Orthogonal Procrustes Problemを解いて、二つのEmbeddingが近くなる変換行列を求めて、それをかけたときのコサイン距離の平均を取る指標
  • Pairwise Inner Product Loss
    二つのEmbeddingのグラム行列同士の差分をノルムを取った値
  • Eigenspace Overlap Score
    特異値分解して得られた行列U同士を掛け合わしてノルムを取った値

実験

Semantic AnalysisとNamed Entity Recognition のタスクを後段として実験している。 Embeddingの次元数を25, 50, 100, 200, 400, 800と変化させて実験。Precisionも1bit~32bitまで変化させて性能がどう変わるかを確認している。

コーパスにはWikipediaの17年と18年のデータセットを用いて、コーパスが変わったとみなしてどれだけ相違があったかを示したのが、論文中Figure1。

次元数とPrecisionが上がるにつれて、相違が減る傾向が見て取れる。Precisionが4bitを超えたあたりから影響は小さくなってきている。若干の違いではあるが、2倍精度を上げた方が、2倍の次元数にするよりも性能低下が抑えられている。同じメモリ消費量であっても、トレードオフ関係で相違が3%位出ることもある。

Analyzing Embedding Instability

Eigenspace Instability Measureという指標を定義している。これは、各Embeddingを特異値分解して左特異ベクトルの張る空間がどれだけ重なっているかを示す指標となる。

このように定義するとそれぞれのEmbeddingを利用して訓練した線形モデルの誤差の差分がEigenspace Instability Measureに比例することが証明できるという。

実験してみるとk-NN指標と同等程度の結果となっている。k-NN指標は理論的な裏付けがないため、本提案の方が優れていると主張している。
そのほかにもknowledge graph や contextual word embedding(BERT)のような他のembedding手法にも、この指標は拡張できることを示している。

所感

2つのEmbedding間の後段タスクに与える影響を、後段のモデルをトレーニングすることなしに予測できるのは、どのEmbeddingを使えばよいかの選択に有用だと感じた。理論的なバックグラウンドがあるのが本手法の優れたところと著者らは主張しているが、k-NN Measureも直観的には2つのEmbeddingがどれだけ近しいかを表していると理解できるように思え、なおかつk-NNの方が全体的に精度が良いタスクがあるため、常にこの論文で提案されているEigenspace Instability Measureを使えば良いというわけでもなさそうである。

Hiro: