EMUの多言語エンコーダーでは,どのような言語でも文の埋め込みにできれば,アーキテクチャは柔軟に選べる.本論ではLASER (Artetxe and Schwenk 2019b)をベースラインに採用.LASERは93言語以上をカバーする文埋め込みモデル.BiLSTM及びBPEに基づくモデル.このモデルは2カ国の翻訳タスクで学習され,cross-lingualなNLPタスクでSOTA.多言語BERTは使ってない,というのもLASERは多言語BERTより性能が高く,変更なしで文埋め込み器と使えるため.
意味分類器
意味分類器では,入力文の意図を推測する.(例えば,'seeking pool information', 'seeking restaurant informatin'等).意味分類器では,関連文の意味類似度をよく反映することを期待している.
2文の埋め込みの類似度はcos類似度を見ているため,L2-constrained softmax損失 (Ranjan, et al., 2017) 及びcenter loss (Wen 2016) を採用.この組み合わせはおそらく初.// center lossは画像認識でよく使われるらしい
L2-constrained softmax loss
L2-constrained softmax lossでは,softmax lossに対して,入力文埋め込みベクトルのL2ノルムに強い制約を与える.
Emu: Enhancing Multilingual Sentence Embeddings with Semantic Specialization Wataru Hirota, Yoshihiko Suhara, Behzad Golshan, Wang-Chiew Tan AAAI 2020 https://arxiv.org/abs/1909.06731
概要
意図分類器と言語識別器の2コンポーネントによるマルチ言語の文埋め込みフレームワークEMUの提案.意図分類器は,関連文の意味類似度を改善し,言語識別器は多言語敵対学習によって埋め込みの多言語性を高めることができる.実験では,単一言語のラベルデータのみを使って,クロス言語の意図分類タスクにおいて,sotaなマルチ言語埋め込みを示した.
イントロ
多言語文表現の学習はNLPにおける多言語サポートの鍵である.多言語文埋め込みの主なメリットとして,単一言語で1つの分類器を作り,それを他の言語に,その言語のトレーニングなしに適用できることである.更に最近の多言語文埋め込みでは,単一言語の翻訳による2ステージベースのアプローチと比べて,competitiveである.
多言語文埋め込みの主な問題として,表記類似度に敏感であることが挙げられる.下記はその例である.S1とS3が意味的に似ている(意図が似ている)が,S2は異なる意味である.我々は単言語及びクロス言語の設定でこの文の埋め込みを作り比較した.すると,すべてのモデルがS1とS3で残念ならがS2と比べて低類似度を示した.この事例は,表記類似性のビアスを示しており,文の意味類似度を捉えられていないのである.
本研究では,意味類似度を扱うために事前学習型の多言語埋め込みを行う,多言語意味specialization (semantic specialization)を行う.semantic specialization自体はこれまで研究されてきたが,多言語ではやられていなかった.
本論では,どのようなモデルにも適用可能な多言語埋め込みの軽量なsemantic specializationアプローチを開発した.我々のアプローチでは,意味類似度を考慮する分類タスクをベースに,多言語文埋め込みを行う.また損失もいくつか試し,softmax損失のような分類タスクにおいてナイーブな方法では,オリジナルの多言語文埋め込みモデルと比べて明らかなデグレに陥ることを見つけた.
また我々のモデルでは,単一言語の学習データしか使わない(複数言語でのパラレル学習データ収集は高価なため).また多言語性を高めるために,敵対学習を取り入れる.具体的には,入力文埋め込みの言語(英語とか)を識別する識別器を作りつつ,それが混乱するような多言語埋め込みを最適化するようにした.
6言語を含む3つののクロス言語意図分類タスクで実験し,良い結果を示した.
多言語semantic specialization
提案モデルEMUをFig 1に.多言語エンコーダーE,意味分類器C,言語識別器Dの3コンポーネントからなる.実線は,CとEのfine-tuning時のforward propagation,破線はDのforward計算.意味分類器Cと言語識別器Dはfine-tuning時にのみ使われる.fine-tuning後,多言語エンコーダーEは入力文をエンコードし,cosine類似度で2文の類似度を計算する
多言語エンコーダー
EMUの多言語エンコーダーでは,どのような言語でも文の埋め込みにできれば,アーキテクチャは柔軟に選べる.本論ではLASER (Artetxe and Schwenk 2019b)をベースラインに採用.LASERは93言語以上をカバーする文埋め込みモデル.BiLSTM及びBPEに基づくモデル.このモデルは2カ国の翻訳タスクで学習され,cross-lingualなNLPタスクでSOTA.多言語BERTは使ってない,というのもLASERは多言語BERTより性能が高く,変更なしで文埋め込み器と使えるため.
意味分類器
意味分類器では,入力文の意図を推測する.(例えば,'seeking pool information', 'seeking restaurant informatin'等).意味分類器では,関連文の意味類似度をよく反映することを期待している.
2文の埋め込みの類似度はcos類似度を見ているため,L2-constrained softmax損失 (Ranjan, et al., 2017) 及びcenter loss (Wen 2016) を採用.この組み合わせはおそらく初.// center lossは画像認識でよく使われるらしい
L2-constrained softmax loss L2-constrained softmax lossでは,softmax lossに対して,入力文埋め込みベクトルのL2ノルムに強い制約を与える.
Mはクラス数,u_iはi番目の文埋め込み,y_iはi番目のラベル, αはハイパラ. 通常のsoftmaxと違うのは,入力ベクトルuをL2ノルムで正規化し,定数αでスケーリングしているだけで単純.// 同一クラスの特徴ベクトル同士のcos類似度が大きくなり,違うクラスの特徴ベクトル同士のcos類似度が小さくなるように学習することができるらしい.
Center loss これは元々は顔認識タスクで,データから学習した特徴量の安定化に利用された.文埋め込みuiに対して,あるラベルyの文埋め込みの重心を引き算する.これは同じ意図同士は,できるだけコンパクトに集まって欲しいためである.(softmaxにはこのような機能はないため補完的に動く)
この2つのロスは,ハイパラλでくっつけて,最終的な意図分類器の損失とする
言語識別器
意図分類器は,多言語性を考慮するわけではないので,単言語で学習してしまうと,他言語で性能が悪化してしまう恐れがある.そこで多言語敵対学習の仕組みを取り入れる.具体的には言語識別器Dを取り入れ,入力文埋め込みの言語を識別する.そして多言語エンコーダーEは,Dが識別しにくいようなエンコードをするように損失を変える. この言語識別器Dは,2つの入力文の言語が異なるかどうかを識別.同時に言語識別器が識別しにくいようにモデルを学習.そこでWasserstein GANを利用した.// Goodfellow氏のGANよりロバストらしい
Algorithm 1にEMUの学習ステップを示す.学習は2フェーズに分かれており,最初に言語識別器Dを学習し,次に多言語エンコーダーEと意図分類器Cを学習する. ターゲット言語tは学習に使われる言語で,複数言語使われる場合はランダムに選ばれる.敵対言語Lは敵対文に使われる言語のセット.言語識別器Dは,学習言語毎に学習.各ターゲット言語ではk回のイテレーション分のパラメタ更新が行われる(クロスエントロピーロス).
次のフェーズでは,ターゲット言語tと敵対言語lでそれぞれ事例がサンプルされ,言語識別器Dtのパラメタは固定した状態でエンコーダーEと意図分類器Cのパラメタ更新を行う(式4).分類のロスL_C (意味分類器で説明した2種の損失の式)に対して,言語識別器Dtの損失にハイパラ定数Γをかけたものを差し引く.Dtが識別に難しい=多言語埋め込み表現が獲得できたとして,望ましい状況であることを,ここで設定できる.
評価
cross-lingualな意図分類タスクでEMUを評価.このタスクでは,ターゲット言語(英語等)の意図ラベルに関連する文をベースに,ソース言語(ドイツ語等)の意図を予測する.これは類似度ベースで予測する.入力文ともっともcos類似度が近いラベル文の意図を採用する.この手法は,検索ベースのQAなどでよく使われる(学習データがスパースな場合に特に効く).今回意図分類器Cがあり,それを使うのが直感的ではあるが,性能が悪かったためその結果は除いている.
データセット
HotelQ: ホテルのスタッフと客の小規模リアル対話(820質問).28 intents,5つの非英語言語にプロが翻訳されたもの
ATIS: 音声対話での有名なデータ.flightsクラスは75%も締めているため,取り除き,残りの中から,最低5文含む含むものを選んだところ13 intentsとなった.そしてそれごGoogle翻訳で5つの非英語言語に翻訳.
Quora: 質問サイトの重複質問データセット(パラフレーズ).ここから50クラスをフィルターして選択し,これも同様にGoogle翻訳で5つの非英語言語に翻訳
ベースライン
機械翻訳と単言語の埋め込みのパイプライン.埋め込みはsent2vec (Pagliardini, 2018)を採用
意図分類器の学習にsoftmax lossを採用し,埋め込みを調整
メトリックラーニング(データ間の関係性を考慮した特徴量空間を学習する手法)のペアワイズな損失関数としてよく使われる手法.ラベルが同じ場合,2文の2乗距離が最小になるように学習し,違う場合はマージンをとって距離が離れるように学習.エンコーダーはSiamese Networks(ダブルエンコーダーによるアーキテクチャ).重みを共有したエンコーダにいれて文埋め込みを獲得して2文の距離関数を類似度とする.
実験設定
EMU及びベースラインのモデルのfine-tuneには英語の学習データのみを利用.EMUの言語識別器の学習には,非英語(ドイツ語,スペイン語,フランス語,日本語,中国語)のラベルなし学習データを利用.
EMUの変種 ablation studyも兼ねて,言語識別器なしのEMU(EMU w/o LD),言語識別器とcenter損失なしEMU(EMU w/o LD+CL) また,cross-ligual敵対学習のために文をランダムサンプルしていた代わりに,パラレル文を利用するEMU-Paralelも用意
Hyper parameters FB公式のLASERとBPE含む事前学習モデルを利用.識別器は2レイヤーの全結合ネット.他パラメタは論文参照.
評価メトリック testデータでのleave-one-out評価を採用.各文の評価時,テストデータの残りの文をラベル文として扱い,もっとも近い文のラベルを,その評価文のラベルとして採用する.現実世界では実際にパラレル文はなく,ターゲット言語(今回は英語)への翻訳がない.そのためソース言語(非英語)がそのまま入力されるので,リアルな設定となりチャレンジング.評価はAcc@1(テスト文でのintent正解率)
結果と議論 結果はTable 2
Ablation study 言語識別器とcenter lossのablation studyの結果を見る.Table 5にそれぞれを除いた時のスコアの低下を載せる
文埋め込みの可視化 多言語性を見るために可視化による定性評価を行う.ATISの英語とドイツ語に対して文埋め込みを描く手法別に可視化(a: オリジナルLASER,b: softmax loss, c: EMU wo LD, d: EMU)
この結果から,言語識別器は多言語性の獲得に役立っていると言えそうだ. EMUではパラレル文が必要か? パラレル文が多言語の敵対学習をより効率的にするかを確認するために,パラレル文での評価,EMU−parallelも実施していた. Table 2にEMUとEMU-parallelが載せてある.EMU-parallelはEMUと比べて,-0.5, -1.2, -5.9ポイントと各データセットでなっている.この差異はQoraを除いて有意とは認められない.EMUの言語識別器は,パラレル文の用意のようにコストは掛からないし,他言語のラベルなしの非パラレル文を利用することによって性能も向上させることができる
学習にはどの言語を使うべきか? 英語以外で学習したらどうなるか調べた.そのためにEMUが特定言語だけを使うように,言語識別器を外した(EMU w/o LD).そしてオリジナルLASERをHotelQAで比較.これまでの結果でわかるようにタスクに英語が含まれていると,含まれていない場合と比べて性能が良かった.これはそれらの非英語言語での埋め込みは英語と比べて適切にfine-tuningできていない可能性を示す(そもそも学習データは英語しか使っていない). それ故,我々はtarget or source言語と同じ言語を学習に使うのはベストな選択だと仮定する. この仮定をテストするため,英語,ドイツ語,フランスをsource or target言語にし,HotelQAで同様の実験を行った.(学習データにen/de/fr/en+de/En+Fr/De+Fr/En+De+Frのパターン).Table 3にその結果.
関連研究
多言語埋め込みは広く研究されていいるが,単語埋め込みにフォーカスしたものが多い.また多言語文埋め込みはまだまだ少ない. 以下この章では,多言語文埋め込み,center lossや敵対学習のNLP適用に関する関連研究が紹介されている.
結論
多言語文埋め込みであるEMUを提案.パラレル文を利用せずとも多言語性を高めることができた.実験では,多言語文埋め込みのLASERや他ベースラインと比べてもパフォーマンスが良かった.またラベル付き単言語とラベルなしの他言語群でEMUを十分に学習できることを示した.
コメント
参考