[DL輪読会]A Surprisingly Effective Fix for Deep Latent Variable Modeling of Text

>100 Views

December 20, 19

スライド概要

2019/12/20
Deep Learning JP:
http://deeplearning.jp/seminar-2/

シェア

またはPlayer版

埋め込む »CMSなどでJSが使えない場合

関連スライド

各ページのテキスト
1.

DEEP LEARNING JP [DL Papers] A Surprisingly Effective Fix for Deep Latent Variable Modeling of Text Toru Fujino, UTokyo, SCSLab http://deeplearning.jp/ 1

2.

概要 • A Surprisingly Effective Fix for Deep Latent Variable Modeling of Text • EMNLP 2019 (short paper) • 要約 • テキストを扱うVAEで学習上の問題となっていたPosterior collapseに対し, 先行研究 で提案されていた手法を組み合わせて使うことにより問題を軽減し, 従来よりも性能 を大幅に更新. また, テキストにおけるVAEではELBOが不適切であることを指摘.

3.

テキストにおけるVAE [Bowman et al. 2016] • Encoder, DecoderにはRNN (LSTM) を用いるのが一般的. • 潜在表現zをもとにした言語モデルを学習させることにより, 潜在空間での なめらかなサンプリングが可能になる

4.

テキストのVAEにおける課題: Posterior collapse • VAEの目的関数: 再構成誤差 + KL距離 • KL項は再構成誤差項に比べて学習が容易であり, 損失が学習の早い段階で 0になってしまう. • Posterior (事後分布) が事前分布に一致してしまい, Encoderからの情報が 無視されてしまう • テキストを扱うVAEで顕著 [Bowman et al. 2016] • DecoderでRNNを使うと毎ステップで正解データが与えられるため, 潜在表現zに頼 る必要がないのが一因.

5.

Posterior collapseへの様々な対策 • 潜在表現zに有益な情報が埋め込まれるように仕向ける • • • • KL項の係数0から徐々に1に近づけていく [Bowman et al. 2016] KL項の係数をCyclicに調整 [X. Liu et al. 2019] KL項の誤差に閾値 (max) を設ける [Kingma et al. 2016] Encoderの学習周期をDecoderのそれよりも早くする [He et al. 2019] • Decoderの力を弱める • Decoderの各時刻の単語の入力を一定確率で<UNK>に置き換える [Bowman et al. 2016] • Decoderの各時刻の入力に潜在表現zをconcatする [Bowman et al. 2016] • DecoderにDilated CNNを使って情報をsparseにする [Z. Yang et al. 2017]

6.

先行研究の手法それぞれに対する予備実験 • 言語モデルとしての性能 (Perplexity: PPL) とVAEによる表現学習の精度を 両立させたい. • 言語モデルの性能 (PPL) と表現学習の性能 (Recon + AU) を両立させるの は難しい. • PPLが一番低いモデル (FB, ラムダ=3) は AUが低く, 潜在表現を有効活用できていな い. • AUが高いモデル (FB) はPPLが高い

7.

仮説 • AEで事前学習をさせ, Decoderの学習時に最初から有益な潜在表現zをわ たせばDecoderは潜在表現zを活用してくれるのではないか? • AEの事前学習で実験してみた. が, やはりposterior collapseは起こってしまった. • ELBOの勾配がposterior collapseの方向に向かっているので, 初期化しても 意味がない, という著者たちの結論 • AnnealingするとKL項の誤差が0になるのは防げるが, 活性ユニットの数は2だけ

8.

提案手法 • AEでEncoderのみの事前学習を行い, その後に閾値を設定したKL項で学習 させる • AEの事前学習 • 再構成誤差でEncoderを学習 • 潜在表現zに有益な情報を埋め込む • 閾値を設定したKL項 • 誤差が閾値以下になったら学習を諦めるイメージ. • 閾値をKL項全体に設定するパターンと次元ごとに設定するパターンで実験

9.

結果: Posterior collapseを起こすこと無く学習できた • 他手法よりも言語モデルとしての性能が高い (Perplexityが低い). • 表現学習も上手く行っている. • zの活性ユニットの数も上であり, zの情報を有効利用できている • ラムダの大きさにもあまり依らない.

10.

結果: 潜在空間での内挿 (Interpolation) • 他手法よりもなめらかな内挿が可能

11.

まとめ • VAEでテキストを扱う際に問題となるPosterior collapseに対して, シンプ ルな手法の組み合わせで従来手法よりも良い結果を出した. • AEの目的関数での事前学習 + KL項の学習の制限 • NeurIPS 2019にも関連論文あり • “Don’t Blame the ELBO! A Linear VAE Perspective on Posterior Collapse” • TensorFlowで実装: https://github.com/toru34/li_emnlp_2019 • まだ少し未完成

12.

参考文献 • (あとで追加します)