More Related Content Similar to Non-autoregressive text generation (20) More from nlab_utokyo (18) Non-autoregressive text generation3. 機械翻訳
質問応答
対話応答
要約生成
画像/動画像キャプショニング
3
https://headline.okazakilab.org/
https://support.apple.com
/ja-jp/HT204389
https://www.amazon.co.jp
/dp/B00X4WHP5E https://robo.meicom.jp/use/first.html
[Vinyals et al., 2015]
4. 吾輩は猫である I am a cat
MT Model
𝑝𝑝 𝑌𝑌|𝑋𝑋
sample
4
𝑌𝑌 = 𝑦𝑦1, 𝑦𝑦2, ⋯ , 𝑦𝑦𝑇𝑇𝑋𝑋 = 𝑥𝑥1, 𝑥𝑥2, ⋯ , 𝑥𝑥𝑇𝑇′
入力系列から出力系列を予測する問題(sequence to sequence)
条件付き確率を表す確率モデルの学習(多くは教師付き学習)
𝑝𝑝 𝑌𝑌|𝑋𝑋 = 𝑝𝑝 𝑦𝑦1, 𝑦𝑦2, ⋯ , 𝑦𝑦𝑇𝑇|𝑋𝑋
6. 条件付き同時確率を左から右方向にかけて分解(ベイズルール)
6
𝑦𝑦2𝑦𝑦1 𝑦𝑦3 𝑦𝑦4
𝑋𝑋
𝑝𝑝𝜃𝜃 𝑦𝑦1, 𝑦𝑦2, ⋯ , 𝑦𝑦𝑇𝑇|𝑋𝑋
= �
𝑡𝑡
𝑇𝑇
𝑝𝑝𝜃𝜃 𝑦𝑦𝑡𝑡|𝑦𝑦1, ⋯ , 𝑦𝑦𝑡𝑡−1, 𝑋𝑋
(𝑝𝑝 𝑦𝑦1|𝑋𝑋 for 𝑡𝑡 = 1)
𝑋𝑋 =“吾輩は猫である”
𝑦𝑦1, ⋯ , 𝑦𝑦𝑡𝑡−1 = “I am a”
word
apple
burger
cat
dog
frog
rice
pen
horse
…
0.05
0.02
0.80
0.03
0.01
0.06
0.09
0.01
…
𝑝𝑝 𝑦𝑦𝑡𝑡|𝑦𝑦1,⋯ , 𝑦𝑦𝑡𝑡−1, 𝑋𝑋
11. 自己回帰型モデル(AR)
11
𝑝𝑝 𝑦𝑦1, 𝑦𝑦2, ⋯ , 𝑦𝑦𝑇𝑇|𝑋𝑋 ≅ �
𝑡𝑡
𝑇𝑇
𝑝𝑝 𝑦𝑦𝑡𝑡|𝑋𝑋
𝑦𝑦2𝑦𝑦1 𝑦𝑦3 𝑦𝑦4
𝑋𝑋
𝑦𝑦2𝑦𝑦1 𝑦𝑦3 𝑦𝑦4
𝑋𝑋
𝑝𝑝 𝑦𝑦1, 𝑦𝑦2, ⋯ , 𝑦𝑦𝑇𝑇|𝑋𝑋
= �
𝑡𝑡
𝑇𝑇
𝑝𝑝 𝑦𝑦𝑡𝑡|𝑦𝑦1, ⋯ , 𝑦𝑦𝑡𝑡−1, 𝑋𝑋
非自己回帰型モデル(NAR)
◦ 並列な単語予測が可能
◦ 一般に、性能はARモデルより劣る
◦ 同じ単語の繰り返しが起きやすい
◦ 複数のモードの混在が起きやすい
モード: 文の代表的な「型」
13. 何を潜在変数にとるか?
◦ 文の大域的構造をうまく捉えた表現が必要
◦ テキストは可変長なのも厄介
周辺化計算の近似(特に推論時)
◦ あまり時間がかかっては意味がない
13
𝑝𝑝 𝑌𝑌|𝑋𝑋 = � 𝑝𝑝 𝑌𝑌|𝑋𝑋, 𝑍𝑍 𝑝𝑝(𝑍𝑍|𝑋𝑋)
≥ 𝑝𝑝 𝑌𝑌|𝑋𝑋, ̂𝑍𝑍 𝑝𝑝( ̂𝑍𝑍|𝑋𝑋)
どうやって求める?(推論アルゴリズム)
𝑋𝑋
𝑌𝑌
𝑍𝑍
15. Transformer ベース
ソースの各単語の生産性(fertility)を潜在変数と考える
◦ デコーダへの入力にコピーする回数
出力文長を推定しつつ、ラフなアラインメントをとる
15Gu et al., NON-AUTOREGRESSIVE NEURAL MACHINE TRANSLATION, ICLR 2018.
普通の (non-causal)
self-attention
𝑋𝑋
𝑌𝑌
𝑍𝑍
𝑍𝑍で条件づけられた𝑋𝑋
17. 穴埋め [Ghazvininejad et al., EMNLP 2019][Lawrence et al., EMNLP 2019]
◦ 自信のない部分にマスクをかけ、繰り返しながら埋めていく
17
Mask-Predict [Ghazvininejad et al., EMNLP 2019]
編集操作(挿入・削除など)[Stern et al., ICML 2019][Welleck et al.,
ICML 2019] [Gu et al., TACL 2019][Gu et al., NeurIPS 2019]
◦ 動的に出力文のサイズを調整しつつ編集
Insertion Transformer [Stern et al., ICML 2019]
18. よりデータドリブンで低次元な潜在表現の導出
期待される効果
◦ 出力文のスケッチとして優れた表現が得られる
◦ 推論時における入力からの予測や、refinementが容易
18
log 𝑝𝑝 𝑦𝑦|𝑥𝑥
≥ 𝔼𝔼𝑞𝑞 𝜙𝜙 𝑧𝑧|𝑦𝑦,𝑥𝑥 log 𝑝𝑝𝜃𝜃 𝑦𝑦|𝑧𝑧, 𝑥𝑥 − KL 𝑞𝑞𝜙𝜙 𝑧𝑧|𝑦𝑦, 𝑥𝑥 || 𝑝𝑝𝜃𝜃 𝑧𝑧|𝑥𝑥
変分下限(ELBO)
approximate
posterior
priordecoder
𝜃𝜃𝜙𝜙
refinementに活用
19. [Kaiser et al., 2018][Roy et al., 2018]
◦ posterior: VQ-VAEにより𝑥𝑥, 𝑦𝑦から離散潜在変数𝑧𝑧の系列を生成 (訓練時のみ)
◦ prior: Transformerにより𝑥𝑥から𝑧𝑧を予測
◦ decoder: Transformerにより𝑥𝑥, 𝑧𝑧から𝑦𝑦を予測
◦ 各関数は独立に学習(すなわち、全体の尤度最大化には直接結びつかない)
FlowSeq [Ma et al., 2019]
◦ Generative flowを使った変分学習
◦ 潜在変数のrefinementはしていない(やろうと思えばできるはず)
19
Roy et al., Theory and Experiments on Vector Quantized Autoencoders, arXiv preprint
arXiv:1805.11063, 2018.
Kaiser et al., Fast Decoding in Sequence Models using Discrete Latent Variables, ICML 2018.
Ma et al., FlowSeq: Non-Autoregressive Conditional Sequence Generation with Generative Flow,
EMNLP 2019.
21. decoder
length predictor
approximate posteriorprior
Transformerで各関数を構築
(length predictor以外)
21
デコード時に潜在変数の
系列長を変換
Gaussian
(reparameterization
trickを適用)
Shu et al., Latent-Variable Non-Autoregressive Neural Machine Translation with Deterministic
Inference Using a Delta Posterior, AAAI 2020.
22. 潜在変数の系列長 𝑧𝑧 は入力の単語数 𝑥𝑥 に等しい
→ 必ずしもターゲットの単語数 𝑦𝑦 とは一致しない!
デコード時に、位置に基づくアテンションによ
り潜在変数の系列を長さ 𝑦𝑦 へ変換する
◦ テスト時は予測された系列長𝑙𝑙𝑦𝑦を用いる
22
26. データセット
◦ ASPEC Japanese-English translation (3M pairs)
◦ WMT’14 English-German translation (4.5M pairs)
自己回帰型モデルには劣るが、潜在変数のrefinementにより
顕著な性能向上
26
ARモデル
(ベースライン)
潜在変数の
refinementを
行う場合
p(z|x)から複数の
z(シード)をサンプ
リングした場合
29. Refinementはどんな場合でもpriorが与える z よりも精度 (BLEU)
を向上させるのだろうか?
Reference (答)の y を入れた q(z|x,y) から得られるオラクルと線形
補完した初期値でrefinementの効果を経験的に評価
29
オラクルprior
右に行くほどより良い潜在変数
refinement なし
refinement あり
36. 非自己回帰型(NAR)テキスト生成モデル
◦ 速度を重視した近似的なアプローチ
◦ 今のところ精度はARモデルに劣る
◦ 潜在変数(表現)をどのように設計するかが大事
実用的には潜在変数のrefinementが重要
◦ 出力結果を再帰的に入力(この点は結局ARモデルに似ている)
◦ 出力全体を入力し、全体を一度に更新
ARモデルからの知識蒸留が現在は必須
◦ データセットのmodeを減らし、NARモデルで学習しやすくさせる
◦ モデルに応じたデータのcomplexityを考えるのが重要
今後の(個人的な)展望
◦ いずれNARモデルがARモデルを上回るのではないか?
◦ 単にキャパシティの大きなモデルを使えばよいというオチになるかも?
36