SeqGAN: Sequence Generative Adversarial Nets
with Policy Gradient
Lantao Yu† , Weinan Zhang† , Jun Wang‡ , Yong Yu†
†Shanghai Jiao Tong University, ‡University College London
{yulantao,wnzhang,yyu}@apex.sjtu.edu.cn, j.wang@cs.ucl.ac.ukd
第35回 強化学習勉強会 2016/10/05 関根 嵩之
概要
• GAN(Generative Adversarial Nets)は生成モデルの学習にそれを支
援する識別モデルを用いたもの
• 画像などの現実のデータの生成において大きな成功を収めた
• しかしGANは離散トークンの系列に対しては上手く働かない
• SeqGANという系列の生成の枠組みを提案する
• データの生成器を強化学習における確率的な方策として扱うことでこの問題
を回避
• 合成データや現実のタスクといった幅広い実験で大きな性能向上が見られた
GAN[Goodfellow:2014]
• GANはD(識別器:Descriminator)を用いて学習データセットと
見分けがつかないようなデータを生成するG(生成器:Generator)
を獲得すること
• Gは一様分布などからサンプルされた乱数zを入力とした出力x
を生成する
• DはGが生成したデータが学習データか生成データなのかを識
別する分類器
• 画像などの現実のデータの生成において大きな成功を収めた
GANの課題
• 離散トークンの系列の生成に対しては上手く学習できない
• [問題1]: 連続値を前提としたモデルであるためGからの出力が離散値と
なってしまうと、DからGへの勾配の更新が困難になる
• [問題2]: 生成される系列が部分的なものに対しても、Dは完全な系列し
か評価することができない
• 部分的に生成された系列に対しては評価できない
• そのためDは現在の評価値と将来の評価値のバランスをとるのが難しい
本論文での提案
• GANを系列的な決定プロセスとして、Gを強化学習のエージェ
ントとして扱う
本論文での提案
• [問題1]に対して
• Gをパラメータを含む確率的な方策とみなした
• 直接、方策勾配法による方策(G)を学習するため、今までのGANに
おける離散データの微分の問題を自然と避けることができる
• [問題2]に対して
• 方策勾配法において状態-行動の値を推定するためにモンテカルロ
探索を採用することでDは現在の評価値と将来の評価値のバランス
を取れるようになる
関連研究
• [深層生成モデルの研究の系譜]
• DBN [Hinton.2006], DAE [Bengio:2013] ,VAE(Variational
Autoencoder)
• 最尤推定によりデータの生成を行う
• [Goodfellow: 2014]は尤度最大化は確率的推定計算の困難さを伴うことを指摘
• GAN
• 最尤推定による学習に伴う困難さを回避、自然画像生成においてめまぐるしい成
功[Denton:2015]
• 一方, GANを系列データ生成に用いてもほとんど進歩がない[Huszar:2015]
強化学習の表記
s’以外の他の状態s’’に対しては
sは必ずaを取ると決定的にs’へ遷移する
系列生成において強化学習を適用するために、状態、行動を以下のようにする
1からTまでのトークンの系列
状態と行動と次の状態 遷移確率
G(生成器)とD(識別器)
状態sから行動aをとって遷移する確率、すなわち方策そのもの
(状態は可変長)
Descriminator
Generator
固定長の全系列に対して自動生成か本物かの2値分類の確率を返す。
これがGeneratorへの報酬になる
本物のデータセットからの値をpositive, Gから生成されたおのをnegative
として学習を行う
SeqGAN
※ Gから生成された次の状態は、そのままDには渡せない。
Dは完全な系列を受け取るため、のこりのtからTの系列はモンテカルロ探索を
行い、全系列をシミュレーションしてそれをDにフィードバックする
SeqGAN
中間的な報酬はないため、最後の遷移でもらう報酬を とすると から始まる
最大化する期待累積報酬は
( は初期状態sで行動aをとったのちに方策Gに従った時の行動価値関数 )
行動価値関数(1)
行動価値関数をどう推定するかが問題となるが、 は本物の報酬であるため
最終的な系列に対しては以下とする(REINFORCE algorithm)[Williams:1992]
問題は途中の系列に対してであるが、前までのトークンのみの情報で推定するのではなく
将来の結果を考慮したい。そのため モンテカルロ探索をroll-out policy を用いて使用
( がroll-out policyによってサンプリングされる。Nは回数)
行動価値関数(2)
以上より、完全な系列と途中の系列は合わせて
本研究では roll-out policyはGeneratorの方策と同じにしたが、モンテカルロ探索のスピード向上
のため、Generatorに比べてシンプルな方策が使われることも (AlphaGo[Silver:2016])
Descriminatorの更新
Dを報酬関数とする利点は、反復的に報酬を動的に更新することができることにある。
Gが学習し終わったら以下のようにDを更新する。
データセットから生成:
Gから生成:
交差エントロピーの最小化
両者のデータ数は同じにしている
Generatorの更新
Gは方策勾配法で求めるので(1)式の微分を求める
(決定的な遷移であること、中間報酬がないことから導出できる : Appendix 1)
[Glynn:1990][Sutton:1999]による尤度比を用いるとunbiasedな推定値が求められる
更新式:
アルゴリズム
Gの詳細
・RNN(Recurrent neural network)を使用.
・トークンの系列 の分散表現 を入力値として
へと変換 ( )
・ソフトマックス層zでhをトークンの分布へマップ
・関数gにはLSTMを使用
・別のRNNの亜種としてGRU(gated recurrent unit)[Cho:2014]や
soft attention mechanism[Bahdanau:2014]などをSeqGANのGとしては使用できる
Dの詳細
・近年テキストや系列トークンの識別問題に対して高い性能を示すことで知られる
CNN(Convolutional Neural Network)を使用 [Zhang,LeCun:2015]
・CNNに入れる前にk次元の分散表現を獲得しベクトルを結合してからCNNの入力へ
・異なるwindowサイズのカーネルを多数使用して畳み込み
・プーリングはmax-over-time pooling
・性能向上のためにプーリングにhighway archtecture[Srivastava:2015]を追加
実験1 [Synthetic Data] (1)
・正確に性能評価を行うためまずはモデルがわかっているLSTMをOracleとして使用。
・普通MLEといえば 本物の分布p,予測qとして の最小化だが、
生成モデルの評価ではTuringテストのように、人間の事前知識に基づいた分布
を用いると を最小化するのが適切
・ここではOracleが人間の観測者だとして
を評価基準とする
実験1 [Synthetic Data] (2)
Training:10000系列 , Test:100000系列 (長さは10)
黄色の垂直線より左側がSeqGANのpre-trainingSeqGANが既存のモデルよりも良い評価値
実験1 [Synthetic Data] (3)
(a) ~ (c):
g-steps, d-steps, kなどのメタパラメータが
Gの収束や精度に大きく影響することがわかる
d-stepsに対してg-stepsが多すぎると、Dが適切に
更新されきらない状態になってしまう
(d) :
(a)~(c)では k回のDの更新時に同じ同じデータセット
を使用
(d)では正解データは同じだが不正解データは毎回Gから
生成して異なるものを使用
→ 総じて安定性が向上する
実験2 [Real-world Scenarios]
・系列トークンを扱う問題として
1) Chinese poem Generation
2) Obama speech Generation
3) Music Generation
を扱った。
・比較対象はGからのMLEとSeqGAN
・どのタスクにおいてもSeqGANがMLE
を上回る結果に
・(1)に対してはhuman scoreも実験した
Real dataのスコアと比較できるレベル
結論・今後の計画
・系列の生成手法として方策勾配に基づいたSeqGANを新たに提案
・GANを系列モデルに適応させた初めての例
・合成データによる実験では、他のベースラインに比べてSeqGANが非常に優れていることを
陽に示すために、Oracleを用いての評価を使用した
・現実の3つの異なる問題に対しても、非常に良い性能を示した
・大規模データやより長い系列のデータに対して、行動選択を改良すべく、モンテカルロ木
探索に加えValue Network[Silver:2016]の構築を計画
今後の計画
結論、まとめ

第35回 強化学習勉強会・論文紹介 [Lantao Yu : 2016]