SlideShare a Scribd company logo
1 of 25
Download to read offline
Generating Informative and Diverse
Conversational Responses via
Adversarial Information Maximization
(NIPS2018)
Yizhe Zhang, Michel Galley, Jianfeng Gao, Zhe Gan,
Xiujun Li, Chris Brockett, Bill Dolan
Microsoft Research, Redmond, WA, USA
紹介者:品川 政太朗(NAIST/RIKEN)
2018/11/11 2018ⒸSeitaro Shinagawa AHC-lab NAIST
※Figures without citation are quoted from the authors’ paper
1/25
2018/11/11 2018ⒸSeitaro Shinagawa AHC-lab NAIST
自己紹介
Favorite model(?):
Interest:
Interaction between human and
machine
Research Topic:
Dialog based Image generation
1989 Born in Sapporo
2009-2015 Tohoku Univ.
2015- NAIST(Ph.D student)
2/25
2018/11/11 2018ⒸSeitaro Shinagawa AHC-lab NAIST
テキスト対話におけるユーザ発話に対して、システム応答の多様性
(diversity)と情報が入っている度合い(informativeness)を改善す
る手法であるAdversarial Information Maximization (AIM)を提案
概要
ポイント
• diversityの向上:GANで発話応答ペアの良さを評価
• informativeさの向上:発話応答間の相互情報量(MI)を最大化
貢献
diverseとinformative両方の向上のため、GANとMIベースの手法をうまく混ぜて
定式化した
• 特にMIベースの手法は、これまで推論時のみの適用だったが、訓練時か
ら可能になるように改善した
• embedding空間での発話応答ペアの距離でGとDを最適化
• cycle consistencyを考慮することで学習の正則化
3/25
2018/11/11 2018ⒸSeitaro Shinagawa AHC-lab NAIST
前置き
雑談対話システムの代表例
マイクロソフトの「りんな」
雑談対話研究の目的:
人間のように応答できるチャットボットの実現
if-thenルールを書いて作りこむのは大変
→そうだ、データから自動的に学習させよう
https://www.mazimazi-party.com/entry/rinna/
4/25
2018/11/11 2018ⒸSeitaro Shinagawa AHC-lab NAIST
Seq2Seqを用いた基本的な発話応答モデル
発話応答モデル
Source
(ユーザ発話)
発話モデル
(encoder)
応答モデル
(decoder)
“ぬるぽ” “ガッ”
Target
(システム応答)
Sourceを入力して対応するTargetを生成する
機械翻訳と違う点
多対多対応:データは発話応答ごとに分かれているが、他の応答
も正解となる可能性がある
一つの発話に対して多様な応答が生成できて欲しい
5/25
2018/11/11 2018ⒸSeitaro Shinagawa AHC-lab NAIST
ニューラルネットベースの発話応答モデルの問題点
無難な応答を学習しやすい(例:“I don’t know.”)
考えられる原因 (品川の考え)
• 汎用性がある
• 人間もよく使うのでデータが偏っている(Twitterデータ)
• 文が短くて学習しやすい
研究背景
6/25
2018/11/11 2018ⒸSeitaro Shinagawa AHC-lab NAIST
著者らの注目点
diverseかつinformativeな応答を生成できるようにしたい
diverse
informative
• I don’t know.
• I haven’t clue.
• I haven’t the foggiest
etc...
I don’t know.
• I like music.
• I like jazz.
etc...
I like music.
発話:”What is your hobby?”に対しての応答例
7/25
2018/11/11 2018ⒸSeitaro Shinagawa AHC-lab NAIST
提案手法の概要
発話Sに対する応答TのペアをDiscriminatorの入力とする
෩TはGenerator 𝑝 𝜃によって
生成された応答文
𝑝 𝑒 𝑆, 𝑇 = 𝑝(𝑆)𝑝 𝜃(𝑇|𝑆)
q 𝜙は逆方向のGenerator
以下の式を最適化
8/25
2018/11/11 2018ⒸSeitaro Shinagawa AHC-lab NAIST
Generator
CNN-LSTMベースのネットワークを提案(𝑝 𝜃, 𝑞 𝜙)
𝑥: 発話単語列𝑥 = 𝑥1, 𝑥2, ⋯ , 𝑥 𝑚
𝑦: 応答単語列y = 𝑦1, 𝑦2, ⋯ , 𝑦𝑛
Z: ノイズから生成した潜在変数
𝑦𝑖はサンプリングするので、back propagationできるようにsoft argmaxを使う
𝜏 → 0でargmax
と等価
9/25
2018/11/11 2018ⒸSeitaro Shinagawa AHC-lab NAIST
Discriminator
Generator(G)のCNNと同じ構造で
embedしたあと、発話と応答の
embeddingsに対してそれぞれ重み
𝑊𝑠, 𝑊𝑡で重みづけする( ෨𝑇と𝑇の重みは
同じ)
real/fakeではなく、Discriminator(D)の出力は発話応答間の距離として定義する
• Dは本物ペアと偽物ペアの距離を最大化
• Gは本物ペアと偽物ペアの距離を最小化
するように学習される
10/25
2018/11/11 2018ⒸSeitaro Shinagawa AHC-lab NAIST
DiscriminatorからGeneratorへの勾配計算
Deterministic policy gradient (DPG)で計算
• Generatorがsoft argmaxなので
11/25
2018/11/11 2018ⒸSeitaro Shinagawa AHC-lab NAIST
相互情報量の最大化=変分加減の最大化
発話𝑆と生成された応答෩Tの相互情報量(MI)を最大化したい
• つまり、𝑆と෩Tがお互いに関係しあうようにしたい
𝑆と෨𝑇の相互情報量𝐼 𝑝 𝑒の最大化は難しいので変分下限を最大化する
(InfoGANと同じ)
ℒ 𝑀𝐼は実は変分下限
12/25
2018/11/11 2018ⒸSeitaro Shinagawa AHC-lab NAIST
余談:InfoGAN [Chen+, NIPS2016]
z
real/fakeGen Dis
real
fake
c
• c: discrete latent code
• z: vector derived from random noise
• c’: predicted latent code
learning to make c and G(z,c) highly correlated
c’
Maximize mutual information 𝐼 𝑐; 𝐺 𝑧, 𝑐
The point for disentanglement
13/25
2018/11/11 2018ⒸSeitaro Shinagawa AHC-lab NAIST
How to maximize I(c;G(z,c)) using Q distro.
z
real/fakeGen Dis
real
fake
c c’
Lemma 5.1
random variable X,Y, function f
𝔼 𝑥~𝑋, 𝑦~𝑌|𝑥, 𝑥′~𝑋|𝑦 𝑓(𝑥′
, 𝑦)
= 𝔼 𝑥~𝑋, 𝑦~𝑌|𝑥 𝑓 𝑥, 𝑦
𝐼 𝑐; 𝐺 𝑧, 𝑐
= 𝐻 𝑐 − 𝐻 𝑐 𝐺 𝑧, 𝑐
= 𝔼 𝑥~𝐺 𝑧,𝑐 𝔼 𝑐′~𝑃 𝑐 𝑥 log 𝑃 𝑐′ 𝑥 + 𝐻 𝑐
= 𝔼 𝑥~𝐺 𝑧,𝑐 𝐷 𝐾𝐿 𝑃 𝑐′ 𝑥 ∥ 𝑄 𝑐′ 𝑥 + 𝔼 𝑐′~𝑃 𝑐 𝑥 log 𝑄 𝑐′ 𝑥 + 𝐻 𝑐
≥ 𝔼 𝑥~𝐺 𝑧,𝑐 𝔼 𝑐′~𝑃 𝑐 𝑥 log 𝑄 𝑐′ 𝑥 + 𝐻 𝑐
= 𝔼 𝑥~𝐺 𝑧,𝑐 𝔼 𝑐′~𝑃 𝑐 𝑥 log 𝑄 𝑐′ 𝑥 + 𝐻 𝑐
= 𝔼 𝑐~𝑃 𝑐 , 𝑥~𝐺 𝑧,𝑐 log 𝑄 𝑐 𝑥 + 𝐻 𝑐
loss between c and c’
14/25
2018/11/11 2018ⒸSeitaro Shinagawa AHC-lab NAIST
𝓛 𝑴𝑰についての勾配計算
𝜃についてはREIFORCEを利用
REINFORCEを使う理由:メモリ効率が良いから(著者談)
ここらへんはよく分かってません
15/25
2018/11/11 2018ⒸSeitaro Shinagawa AHC-lab NAIST
Dual Adversarial Learningによる正則化
発話→応答だけでなく、応答→発話のパスも計算する
著者の気持ち:多対一対応するように学習が進むのを防ぎたい
(例:何にでも”I don’t know”と答える)
16/25
2018/11/11 2018ⒸSeitaro Shinagawa AHC-lab NAIST
実験設定
データセット
Reddit: 2,000,000の発話応答ペア、文長は最大で53単語 (train:val:test=8:1:1)
Twitter: 7,000,000の発話応答ペア
評価尺度
BLEU:翻訳の評価尺度。リファレンス文との単語n-gramの一致率(高いほど良い)
ROUGE:要約の評価尺度。リファレンス文の単語の出現回数の最小共通部分を数
える(高いほど良い)
Greedy:データ全体でリファレンス文とembeddingsのcos similarityの最大値
Average:〃cos similarityの平均
Extreme:文ベクトルを文中のノルム最大の単語のベクトルで置き換えてcosを計算
Dist-1,Dist-2:多様性の評価尺度。リファレンス文全体のn-gramの中で何種類のn-
gramが使われているかの割合(高いほど良い)
Entropy (Ent-t):n-gramの頻度も考慮したDistの改善版(提案手法)
V: n-gramの集合
F(w): 単語wの頻度
17/25
2018/11/11 2018ⒸSeitaro Shinagawa AHC-lab NAIST
Redditの結果
• AIM, Dual AIM (DAIM)が全てのスコアで勝利
• ちなみに、MMIは著者らチームの前の研究(MIベースの手法)
18/25
2018/11/11 2018ⒸSeitaro Shinagawa AHC-lab NAIST
生成結果の比較
19/25
2018/11/11 2018ⒸSeitaro Shinagawa AHC-lab NAIST
生成結果の比較
20/25
2018/11/11 2018ⒸSeitaro Shinagawa AHC-lab NAIST
生成結果の比較
21/25
2018/11/11 2018ⒸSeitaro Shinagawa AHC-lab NAIST
主観評価の結果
• 600サンプルについてクラウドソーシング
• それぞれのサンプルはランダムな7人の評価者によって評価
• Informativeness: “Yes”とか”Sure”みたいな簡素な応答じゃないかどうか
• Relevance: 発話に対して意味的に応答として成立するかどうか
(太字はp<0.00001で有意だった組合せ)
22/25
2018/11/11 2018ⒸSeitaro Shinagawa AHC-lab NAIST
主観評価の結果
• DAIMはMMIやseq2seqに勝てている
• まだ人間にはボロ負け
(太字はp<0.00001で有意だった組合せ)
23/25
2018/11/11 2018ⒸSeitaro Shinagawa AHC-lab NAIST
Twitterデータを用いた結果
Twitterはマルチターンの対話なので、最後の応答以外は合わせてsourceとして扱う
発話1
応答1
⋮
発話n
• 語彙サイズは20kに制約
• 2kのtestセットで評価
AIMとDAIMが強いが、それぞれにトレードオフがあった
24/25
2018/11/11 2018ⒸSeitaro Shinagawa AHC-lab NAIST
結論
テキスト雑談対話における発話応答モデルのdiversityと
infomativenessを改善する方法として
Adversarial Information Maximization (AIM)を提案
 Redittの実験
• 客観・主観評価ともにseq2seqよりも強い
• 人間と比較するとまだまだ(特にinformativeness)
 Twitterの実験
• マルチターンを考慮したノイジーな雑談データでもAIMが強い
My COMMENTs and QUESTIONs
 infomativenessの定義がいまいちしっくりこない(文長の短さに
penaltyくわえるだけじゃダメ?)
• 応答における内容語を抽出して評価するとかがありそう
 生成文の多様性ならDistやEntで良さそうだが、応答の多様性は
潜在空間Zに埋め込まれてると思うので、そちらの分析も見たい
25/25

More Related Content

Similar to 第7回 NIPS+読み会・関西 Generating Informative and Diverse Conversational Responses via Adversarial Information Maximization (NIPS2018)

僕たちがすべきことはリファクタリングなのか
僕たちがすべきことはリファクタリングなのか僕たちがすべきことはリファクタリングなのか
僕たちがすべきことはリファクタリングなのかIto Takumi
 
Generative Adversarial Networks (GAN) @ NIPS2017
Generative Adversarial Networks (GAN) @ NIPS2017Generative Adversarial Networks (GAN) @ NIPS2017
Generative Adversarial Networks (GAN) @ NIPS2017Koichi Hamada
 
SSII2018TS: 大規模深層学習
SSII2018TS: 大規模深層学習SSII2018TS: 大規模深層学習
SSII2018TS: 大規模深層学習SSII
 
safety and security using Raspberry PI
safety and security using Raspberry PIsafety and security using Raspberry PI
safety and security using Raspberry PIKiyoshi Ogawa
 
ディープラーニング入門 ~ 画像処理・自然言語処理について ~
ディープラーニング入門 ~ 画像処理・自然言語処理について ~ディープラーニング入門 ~ 画像処理・自然言語処理について ~
ディープラーニング入門 ~ 画像処理・自然言語処理について ~Kensuke Otsuki
 
STAMP/STPA and UML/HAZOP on the IoT and AI/Deep Learning
STAMP/STPA and UML/HAZOP on the IoT and AI/Deep Learning STAMP/STPA and UML/HAZOP on the IoT and AI/Deep Learning
STAMP/STPA and UML/HAZOP on the IoT and AI/Deep Learning Kiyoshi Ogawa
 
Icml2018読み会_overview&GANs
Icml2018読み会_overview&GANsIcml2018読み会_overview&GANs
Icml2018読み会_overview&GANsKentaro Tachibana
 
パターン認識モデル初歩の初歩
パターン認識モデル初歩の初歩パターン認識モデル初歩の初歩
パターン認識モデル初歩の初歩t_ichioka_sg
 
「C言語規格&MISRA-C:みんなで楽しいCプログラミング」NGK2013B名古屋合同懇親会2013忘年会昼の部
「C言語規格&MISRA-C:みんなで楽しいCプログラミング」NGK2013B名古屋合同懇親会2013忘年会昼の部「C言語規格&MISRA-C:みんなで楽しいCプログラミング」NGK2013B名古屋合同懇親会2013忘年会昼の部
「C言語規格&MISRA-C:みんなで楽しいCプログラミング」NGK2013B名古屋合同懇親会2013忘年会昼の部Kiyoshi Ogawa
 
20180305_ppl2018_演繹から帰納へ~新しいシステム開発パラダイム~
20180305_ppl2018_演繹から帰納へ~新しいシステム開発パラダイム~20180305_ppl2018_演繹から帰納へ~新しいシステム開発パラダイム~
20180305_ppl2018_演繹から帰納へ~新しいシステム開発パラダイム~Preferred Networks
 
畳み込みネットワークによる高次元信号復元と異分野融合への展開
畳み込みネットワークによる高次元信号復元と異分野融合への展開 畳み込みネットワークによる高次元信号復元と異分野融合への展開
畳み込みネットワークによる高次元信号復元と異分野融合への展開 Shogo Muramatsu
 
WI2研究会(公開用) “データ分析でよく使う前処理の整理と対処”
WI2研究会(公開用) “データ分析でよく使う前処理の整理と対処” WI2研究会(公開用) “データ分析でよく使う前処理の整理と対処”
WI2研究会(公開用) “データ分析でよく使う前処理の整理と対処” Hajime Sasaki
 
Hazop and othere analysis method include STAMP and FRAM
Hazop and othere analysis method include STAMP and FRAMHazop and othere analysis method include STAMP and FRAM
Hazop and othere analysis method include STAMP and FRAMKiyoshi Ogawa
 
日本における組み合わせテスト - 歴史、適用状況、技法、ツール -
日本における組み合わせテスト - 歴史、適用状況、技法、ツール -日本における組み合わせテスト - 歴史、適用状況、技法、ツール -
日本における組み合わせテスト - 歴史、適用状況、技法、ツール -Keizo Tatsumi
 
Hazop Safety and Security at Fukui 2017(1/2)
Hazop Safety and Security at Fukui 2017(1/2)Hazop Safety and Security at Fukui 2017(1/2)
Hazop Safety and Security at Fukui 2017(1/2)Kiyoshi Ogawa
 
Synchronized Aggregate Signatures and Computational Assumptions
Synchronized Aggregate Signatures and Computational AssumptionsSynchronized Aggregate Signatures and Computational Assumptions
Synchronized Aggregate Signatures and Computational AssumptionsMASAYUKITEZUKA1
 
PCAの最終形態GPLVMの解説
PCAの最終形態GPLVMの解説PCAの最終形態GPLVMの解説
PCAの最終形態GPLVMの解説弘毅 露崎
 

Similar to 第7回 NIPS+読み会・関西 Generating Informative and Diverse Conversational Responses via Adversarial Information Maximization (NIPS2018) (20)

僕たちがすべきことはリファクタリングなのか
僕たちがすべきことはリファクタリングなのか僕たちがすべきことはリファクタリングなのか
僕たちがすべきことはリファクタリングなのか
 
Generative Adversarial Networks (GAN) @ NIPS2017
Generative Adversarial Networks (GAN) @ NIPS2017Generative Adversarial Networks (GAN) @ NIPS2017
Generative Adversarial Networks (GAN) @ NIPS2017
 
SSII2018TS: 大規模深層学習
SSII2018TS: 大規模深層学習SSII2018TS: 大規模深層学習
SSII2018TS: 大規模深層学習
 
safety and security using Raspberry PI
safety and security using Raspberry PIsafety and security using Raspberry PI
safety and security using Raspberry PI
 
ディープラーニング入門 ~ 画像処理・自然言語処理について ~
ディープラーニング入門 ~ 画像処理・自然言語処理について ~ディープラーニング入門 ~ 画像処理・自然言語処理について ~
ディープラーニング入門 ~ 画像処理・自然言語処理について ~
 
STAMP/STPA and UML/HAZOP on the IoT and AI/Deep Learning
STAMP/STPA and UML/HAZOP on the IoT and AI/Deep Learning STAMP/STPA and UML/HAZOP on the IoT and AI/Deep Learning
STAMP/STPA and UML/HAZOP on the IoT and AI/Deep Learning
 
Icml2018読み会_overview&GANs
Icml2018読み会_overview&GANsIcml2018読み会_overview&GANs
Icml2018読み会_overview&GANs
 
Misrac20150523
Misrac20150523Misrac20150523
Misrac20150523
 
パターン認識モデル初歩の初歩
パターン認識モデル初歩の初歩パターン認識モデル初歩の初歩
パターン認識モデル初歩の初歩
 
「C言語規格&MISRA-C:みんなで楽しいCプログラミング」NGK2013B名古屋合同懇親会2013忘年会昼の部
「C言語規格&MISRA-C:みんなで楽しいCプログラミング」NGK2013B名古屋合同懇親会2013忘年会昼の部「C言語規格&MISRA-C:みんなで楽しいCプログラミング」NGK2013B名古屋合同懇親会2013忘年会昼の部
「C言語規格&MISRA-C:みんなで楽しいCプログラミング」NGK2013B名古屋合同懇親会2013忘年会昼の部
 
20180305_ppl2018_演繹から帰納へ~新しいシステム開発パラダイム~
20180305_ppl2018_演繹から帰納へ~新しいシステム開発パラダイム~20180305_ppl2018_演繹から帰納へ~新しいシステム開発パラダイム~
20180305_ppl2018_演繹から帰納へ~新しいシステム開発パラダイム~
 
畳み込みネットワークによる高次元信号復元と異分野融合への展開
畳み込みネットワークによる高次元信号復元と異分野融合への展開 畳み込みネットワークによる高次元信号復元と異分野融合への展開
畳み込みネットワークによる高次元信号復元と異分野融合への展開
 
はじめての「R」
はじめての「R」はじめての「R」
はじめての「R」
 
WI2研究会(公開用) “データ分析でよく使う前処理の整理と対処”
WI2研究会(公開用) “データ分析でよく使う前処理の整理と対処” WI2研究会(公開用) “データ分析でよく使う前処理の整理と対処”
WI2研究会(公開用) “データ分析でよく使う前処理の整理と対処”
 
Hazop and othere analysis method include STAMP and FRAM
Hazop and othere analysis method include STAMP and FRAMHazop and othere analysis method include STAMP and FRAM
Hazop and othere analysis method include STAMP and FRAM
 
日本における組み合わせテスト - 歴史、適用状況、技法、ツール -
日本における組み合わせテスト - 歴史、適用状況、技法、ツール -日本における組み合わせテスト - 歴史、適用状況、技法、ツール -
日本における組み合わせテスト - 歴史、適用状況、技法、ツール -
 
Hazop Safety and Security at Fukui 2017(1/2)
Hazop Safety and Security at Fukui 2017(1/2)Hazop Safety and Security at Fukui 2017(1/2)
Hazop Safety and Security at Fukui 2017(1/2)
 
Synchronized Aggregate Signatures and Computational Assumptions
Synchronized Aggregate Signatures and Computational AssumptionsSynchronized Aggregate Signatures and Computational Assumptions
Synchronized Aggregate Signatures and Computational Assumptions
 
PCAの最終形態GPLVMの解説
PCAの最終形態GPLVMの解説PCAの最終形態GPLVMの解説
PCAの最終形態GPLVMの解説
 
アイテム分散表現の階層化・集約演算に基づくセッションベース推薦システム
アイテム分散表現の階層化・集約演算に基づくセッションベース推薦システムアイテム分散表現の階層化・集約演算に基づくセッションベース推薦システム
アイテム分散表現の階層化・集約演算に基づくセッションベース推薦システム
 

More from Shinagawa Seitaro

AHC-Lab M1勉強会 論文の読み方・書き方
AHC-Lab M1勉強会 論文の読み方・書き方AHC-Lab M1勉強会 論文の読み方・書き方
AHC-Lab M1勉強会 論文の読み方・書き方Shinagawa Seitaro
 
2018.01.12 AHClab SD-study paper reading
2018.01.12 AHClab SD-study paper reading2018.01.12 AHClab SD-study paper reading
2018.01.12 AHClab SD-study paper readingShinagawa Seitaro
 
Paper reading best of both world
Paper reading best of both worldPaper reading best of both world
Paper reading best of both worldShinagawa Seitaro
 
MS COCO Dataset Introduction
MS COCO Dataset IntroductionMS COCO Dataset Introduction
MS COCO Dataset IntroductionShinagawa Seitaro
 
How to calculate back propagation
How to calculate back propagationHow to calculate back propagation
How to calculate back propagationShinagawa Seitaro
 

More from Shinagawa Seitaro (7)

DTLC-GAN
DTLC-GANDTLC-GAN
DTLC-GAN
 
AHC-Lab M1勉強会 論文の読み方・書き方
AHC-Lab M1勉強会 論文の読み方・書き方AHC-Lab M1勉強会 論文の読み方・書き方
AHC-Lab M1勉強会 論文の読み方・書き方
 
2018.01.12 AHClab SD-study paper reading
2018.01.12 AHClab SD-study paper reading2018.01.12 AHClab SD-study paper reading
2018.01.12 AHClab SD-study paper reading
 
Paper reading best of both world
Paper reading best of both worldPaper reading best of both world
Paper reading best of both world
 
MS COCO Dataset Introduction
MS COCO Dataset IntroductionMS COCO Dataset Introduction
MS COCO Dataset Introduction
 
How to calculate back propagation
How to calculate back propagationHow to calculate back propagation
How to calculate back propagation
 
150829 kdd2015読み会
150829 kdd2015読み会150829 kdd2015読み会
150829 kdd2015読み会
 

第7回 NIPS+読み会・関西 Generating Informative and Diverse Conversational Responses via Adversarial Information Maximization (NIPS2018)

  • 1. Generating Informative and Diverse Conversational Responses via Adversarial Information Maximization (NIPS2018) Yizhe Zhang, Michel Galley, Jianfeng Gao, Zhe Gan, Xiujun Li, Chris Brockett, Bill Dolan Microsoft Research, Redmond, WA, USA 紹介者:品川 政太朗(NAIST/RIKEN) 2018/11/11 2018ⒸSeitaro Shinagawa AHC-lab NAIST ※Figures without citation are quoted from the authors’ paper 1/25
  • 2. 2018/11/11 2018ⒸSeitaro Shinagawa AHC-lab NAIST 自己紹介 Favorite model(?): Interest: Interaction between human and machine Research Topic: Dialog based Image generation 1989 Born in Sapporo 2009-2015 Tohoku Univ. 2015- NAIST(Ph.D student) 2/25
  • 3. 2018/11/11 2018ⒸSeitaro Shinagawa AHC-lab NAIST テキスト対話におけるユーザ発話に対して、システム応答の多様性 (diversity)と情報が入っている度合い(informativeness)を改善す る手法であるAdversarial Information Maximization (AIM)を提案 概要 ポイント • diversityの向上:GANで発話応答ペアの良さを評価 • informativeさの向上:発話応答間の相互情報量(MI)を最大化 貢献 diverseとinformative両方の向上のため、GANとMIベースの手法をうまく混ぜて 定式化した • 特にMIベースの手法は、これまで推論時のみの適用だったが、訓練時か ら可能になるように改善した • embedding空間での発話応答ペアの距離でGとDを最適化 • cycle consistencyを考慮することで学習の正則化 3/25
  • 4. 2018/11/11 2018ⒸSeitaro Shinagawa AHC-lab NAIST 前置き 雑談対話システムの代表例 マイクロソフトの「りんな」 雑談対話研究の目的: 人間のように応答できるチャットボットの実現 if-thenルールを書いて作りこむのは大変 →そうだ、データから自動的に学習させよう https://www.mazimazi-party.com/entry/rinna/ 4/25
  • 5. 2018/11/11 2018ⒸSeitaro Shinagawa AHC-lab NAIST Seq2Seqを用いた基本的な発話応答モデル 発話応答モデル Source (ユーザ発話) 発話モデル (encoder) 応答モデル (decoder) “ぬるぽ” “ガッ” Target (システム応答) Sourceを入力して対応するTargetを生成する 機械翻訳と違う点 多対多対応:データは発話応答ごとに分かれているが、他の応答 も正解となる可能性がある 一つの発話に対して多様な応答が生成できて欲しい 5/25
  • 6. 2018/11/11 2018ⒸSeitaro Shinagawa AHC-lab NAIST ニューラルネットベースの発話応答モデルの問題点 無難な応答を学習しやすい(例:“I don’t know.”) 考えられる原因 (品川の考え) • 汎用性がある • 人間もよく使うのでデータが偏っている(Twitterデータ) • 文が短くて学習しやすい 研究背景 6/25
  • 7. 2018/11/11 2018ⒸSeitaro Shinagawa AHC-lab NAIST 著者らの注目点 diverseかつinformativeな応答を生成できるようにしたい diverse informative • I don’t know. • I haven’t clue. • I haven’t the foggiest etc... I don’t know. • I like music. • I like jazz. etc... I like music. 発話:”What is your hobby?”に対しての応答例 7/25
  • 8. 2018/11/11 2018ⒸSeitaro Shinagawa AHC-lab NAIST 提案手法の概要 発話Sに対する応答TのペアをDiscriminatorの入力とする ෩TはGenerator 𝑝 𝜃によって 生成された応答文 𝑝 𝑒 𝑆, 𝑇 = 𝑝(𝑆)𝑝 𝜃(𝑇|𝑆) q 𝜙は逆方向のGenerator 以下の式を最適化 8/25
  • 9. 2018/11/11 2018ⒸSeitaro Shinagawa AHC-lab NAIST Generator CNN-LSTMベースのネットワークを提案(𝑝 𝜃, 𝑞 𝜙) 𝑥: 発話単語列𝑥 = 𝑥1, 𝑥2, ⋯ , 𝑥 𝑚 𝑦: 応答単語列y = 𝑦1, 𝑦2, ⋯ , 𝑦𝑛 Z: ノイズから生成した潜在変数 𝑦𝑖はサンプリングするので、back propagationできるようにsoft argmaxを使う 𝜏 → 0でargmax と等価 9/25
  • 10. 2018/11/11 2018ⒸSeitaro Shinagawa AHC-lab NAIST Discriminator Generator(G)のCNNと同じ構造で embedしたあと、発話と応答の embeddingsに対してそれぞれ重み 𝑊𝑠, 𝑊𝑡で重みづけする( ෨𝑇と𝑇の重みは 同じ) real/fakeではなく、Discriminator(D)の出力は発話応答間の距離として定義する • Dは本物ペアと偽物ペアの距離を最大化 • Gは本物ペアと偽物ペアの距離を最小化 するように学習される 10/25
  • 11. 2018/11/11 2018ⒸSeitaro Shinagawa AHC-lab NAIST DiscriminatorからGeneratorへの勾配計算 Deterministic policy gradient (DPG)で計算 • Generatorがsoft argmaxなので 11/25
  • 12. 2018/11/11 2018ⒸSeitaro Shinagawa AHC-lab NAIST 相互情報量の最大化=変分加減の最大化 発話𝑆と生成された応答෩Tの相互情報量(MI)を最大化したい • つまり、𝑆と෩Tがお互いに関係しあうようにしたい 𝑆と෨𝑇の相互情報量𝐼 𝑝 𝑒の最大化は難しいので変分下限を最大化する (InfoGANと同じ) ℒ 𝑀𝐼は実は変分下限 12/25
  • 13. 2018/11/11 2018ⒸSeitaro Shinagawa AHC-lab NAIST 余談:InfoGAN [Chen+, NIPS2016] z real/fakeGen Dis real fake c • c: discrete latent code • z: vector derived from random noise • c’: predicted latent code learning to make c and G(z,c) highly correlated c’ Maximize mutual information 𝐼 𝑐; 𝐺 𝑧, 𝑐 The point for disentanglement 13/25
  • 14. 2018/11/11 2018ⒸSeitaro Shinagawa AHC-lab NAIST How to maximize I(c;G(z,c)) using Q distro. z real/fakeGen Dis real fake c c’ Lemma 5.1 random variable X,Y, function f 𝔼 𝑥~𝑋, 𝑦~𝑌|𝑥, 𝑥′~𝑋|𝑦 𝑓(𝑥′ , 𝑦) = 𝔼 𝑥~𝑋, 𝑦~𝑌|𝑥 𝑓 𝑥, 𝑦 𝐼 𝑐; 𝐺 𝑧, 𝑐 = 𝐻 𝑐 − 𝐻 𝑐 𝐺 𝑧, 𝑐 = 𝔼 𝑥~𝐺 𝑧,𝑐 𝔼 𝑐′~𝑃 𝑐 𝑥 log 𝑃 𝑐′ 𝑥 + 𝐻 𝑐 = 𝔼 𝑥~𝐺 𝑧,𝑐 𝐷 𝐾𝐿 𝑃 𝑐′ 𝑥 ∥ 𝑄 𝑐′ 𝑥 + 𝔼 𝑐′~𝑃 𝑐 𝑥 log 𝑄 𝑐′ 𝑥 + 𝐻 𝑐 ≥ 𝔼 𝑥~𝐺 𝑧,𝑐 𝔼 𝑐′~𝑃 𝑐 𝑥 log 𝑄 𝑐′ 𝑥 + 𝐻 𝑐 = 𝔼 𝑥~𝐺 𝑧,𝑐 𝔼 𝑐′~𝑃 𝑐 𝑥 log 𝑄 𝑐′ 𝑥 + 𝐻 𝑐 = 𝔼 𝑐~𝑃 𝑐 , 𝑥~𝐺 𝑧,𝑐 log 𝑄 𝑐 𝑥 + 𝐻 𝑐 loss between c and c’ 14/25
  • 15. 2018/11/11 2018ⒸSeitaro Shinagawa AHC-lab NAIST 𝓛 𝑴𝑰についての勾配計算 𝜃についてはREIFORCEを利用 REINFORCEを使う理由:メモリ効率が良いから(著者談) ここらへんはよく分かってません 15/25
  • 16. 2018/11/11 2018ⒸSeitaro Shinagawa AHC-lab NAIST Dual Adversarial Learningによる正則化 発話→応答だけでなく、応答→発話のパスも計算する 著者の気持ち:多対一対応するように学習が進むのを防ぎたい (例:何にでも”I don’t know”と答える) 16/25
  • 17. 2018/11/11 2018ⒸSeitaro Shinagawa AHC-lab NAIST 実験設定 データセット Reddit: 2,000,000の発話応答ペア、文長は最大で53単語 (train:val:test=8:1:1) Twitter: 7,000,000の発話応答ペア 評価尺度 BLEU:翻訳の評価尺度。リファレンス文との単語n-gramの一致率(高いほど良い) ROUGE:要約の評価尺度。リファレンス文の単語の出現回数の最小共通部分を数 える(高いほど良い) Greedy:データ全体でリファレンス文とembeddingsのcos similarityの最大値 Average:〃cos similarityの平均 Extreme:文ベクトルを文中のノルム最大の単語のベクトルで置き換えてcosを計算 Dist-1,Dist-2:多様性の評価尺度。リファレンス文全体のn-gramの中で何種類のn- gramが使われているかの割合(高いほど良い) Entropy (Ent-t):n-gramの頻度も考慮したDistの改善版(提案手法) V: n-gramの集合 F(w): 単語wの頻度 17/25
  • 18. 2018/11/11 2018ⒸSeitaro Shinagawa AHC-lab NAIST Redditの結果 • AIM, Dual AIM (DAIM)が全てのスコアで勝利 • ちなみに、MMIは著者らチームの前の研究(MIベースの手法) 18/25
  • 19. 2018/11/11 2018ⒸSeitaro Shinagawa AHC-lab NAIST 生成結果の比較 19/25
  • 20. 2018/11/11 2018ⒸSeitaro Shinagawa AHC-lab NAIST 生成結果の比較 20/25
  • 21. 2018/11/11 2018ⒸSeitaro Shinagawa AHC-lab NAIST 生成結果の比較 21/25
  • 22. 2018/11/11 2018ⒸSeitaro Shinagawa AHC-lab NAIST 主観評価の結果 • 600サンプルについてクラウドソーシング • それぞれのサンプルはランダムな7人の評価者によって評価 • Informativeness: “Yes”とか”Sure”みたいな簡素な応答じゃないかどうか • Relevance: 発話に対して意味的に応答として成立するかどうか (太字はp<0.00001で有意だった組合せ) 22/25
  • 23. 2018/11/11 2018ⒸSeitaro Shinagawa AHC-lab NAIST 主観評価の結果 • DAIMはMMIやseq2seqに勝てている • まだ人間にはボロ負け (太字はp<0.00001で有意だった組合せ) 23/25
  • 24. 2018/11/11 2018ⒸSeitaro Shinagawa AHC-lab NAIST Twitterデータを用いた結果 Twitterはマルチターンの対話なので、最後の応答以外は合わせてsourceとして扱う 発話1 応答1 ⋮ 発話n • 語彙サイズは20kに制約 • 2kのtestセットで評価 AIMとDAIMが強いが、それぞれにトレードオフがあった 24/25
  • 25. 2018/11/11 2018ⒸSeitaro Shinagawa AHC-lab NAIST 結論 テキスト雑談対話における発話応答モデルのdiversityと infomativenessを改善する方法として Adversarial Information Maximization (AIM)を提案  Redittの実験 • 客観・主観評価ともにseq2seqよりも強い • 人間と比較するとまだまだ(特にinformativeness)  Twitterの実験 • マルチターンを考慮したノイジーな雑談データでもAIMが強い My COMMENTs and QUESTIONs  infomativenessの定義がいまいちしっくりこない(文長の短さに penaltyくわえるだけじゃダメ?) • 応答における内容語を抽出して評価するとかがありそう  生成文の多様性ならDistやEntで良さそうだが、応答の多様性は 潜在空間Zに埋め込まれてると思うので、そちらの分析も見たい 25/25