深層生成モデルによる統計的推論
福水 健次
統計数理研究所

統計的機械学習研究センター長

統計数理研究所 創立75周年記念チュートリアル講演
2019年6月5日

1

（極私的）統計的機械学習の歴史
1990 - 統計的機械学習

SVM／カーネル法
グラフィカルモデリング
ベイズ推論（近似手法）
etc

1980

1990

2000

1980-90 第２次ニューロブーム

1986 PDP本

理論保証
凸最適化／近似
大規模・高次元に困難2012 ImageNet 物体認識コンペティション
誤認識率 15.3%, ２位 26.2%

2010

2020

ビッグデータの時代
2006– 深層学習2006 - 深層学習

2007(?) NIPS
非公式Mini-Symposium.
Deep Belief Network

高い性能
学習コスト高い（計算時間，チューニング）
理論保証困難大量データが利用できる高い性能
学習コスト高い（計算時間，チューニング）
2
理論保証困難深層学習の隆盛
大量データ

計算能力

高い性能

プラットフォーム

3

講演の概要1. はじめに
2. 深層生成モデル
3. 深層生成モデルによるBayes推論

4. おわりに4GAN: 敵対的生成ネットワーク
Generative Adversarial Nets. (Goodfellow et al. NIPS2014)• 生成モデルの深層学習• 「敵対的学習」という枠組み• 良好な画像の生成に成功

5

深層生成モデルの発展：顔画像2014（Goodfellow et al)

2015(Goodfellow, ICLR2019より)

2016
2017
(Karas et al ProgressiveGAN)
2018(Karas et al StyleGAN)
6

State-of-the-Art
Cycle-GAN (Zhu et al ICCV2017)https://www.youtube.com/watch?v=9reHvktowLY

7

• Everybody Dance Now (Chan et al 2018)

YouTube: Everybody Dance Now.
https://youtu.be/PCBTZh41Ris

8

生成モデル• 生成モデル：Graphical model
Mixture model
カーネル密度推定

データを生成する確率分布のモデル
etc….

• 深層生成モデル
𝑋 = 𝑓𝑤 (𝑍)𝑍

𝑓𝑤 (𝑧)

𝑋

𝑍: 簡単な確率分布 e.g. 𝑁(0, 𝐼𝑑 )𝑓𝑤 𝑧 : 深層ニューラルネット
9生成モデルの学習• 分布を近くすればよい
𝑑: 分布の相違をはかる尺度• f-divergence→ f-GAN (Nowozin et al NIPS2016)• Wasserstein距離→ Wasserstein-GAN

Generator

𝑍𝒇(𝒛; 𝒘)

𝑋𝑤

生成されたサンプルの分布𝒅min 𝑑(𝑃𝐷 , 𝑃𝑤 )𝐷

学習データの分布(Arjovsky et al ICLR2017)• MMD（カーネル法）→ MMD-GAN𝑤(Li et al NIPS2017; Binkowski et al ICLR2018)10

GAN：敵対的学習

𝑝𝐷 : データ（真）の密度関数
𝑝𝑤 : 生成モデルの密度関数 𝑋 = 𝑓𝑤 (𝑍)• 分布の距離：Jensen-Shannon divergence
𝐽𝑆 𝑝𝐷 , 𝑝𝑤 = 𝐾𝐿 𝑝𝐷 ฮ(𝑝𝐷 + 𝑝𝑤 )Τ2+𝐾𝐿 𝑝𝑤 ฮ(𝑝𝐷 + 𝑝𝑤 )Τ2Generator• 生成ネット：分布間距離の最小化
min 𝐽𝑆 𝑝𝐷 , 𝑝𝑤𝑝𝐷𝑓𝑤𝑝𝑤 :𝑋 = 𝑓𝑤 (𝑍)𝐷(𝑥)• 識別ネット：JS-距離は計算困難 → 識別問題に還元
𝐽𝑆 𝑝𝐷 , 𝑝𝑤 =sup
𝐷 𝑥 : DNN

𝐸𝑌~𝑝𝐷 log 𝐷 𝑌－ Logistic loss

− 𝐸𝑋=𝑓𝑤 𝑍 [log(1 − 𝐷 𝑋 )] + 𝑐𝑜𝑛𝑠𝑡.
𝐷 𝑥 ≔𝑝𝐷 (𝑥)が最適
𝑝𝐷 𝑥 +𝑝𝑤 (𝑥)11• GAN：minmaxによる学習• Discriminator: ロジスティック判別
max 𝐸𝑋∼𝑝 log 𝐷(𝑋) − 𝐸𝑋∼𝑞 log 1 − 𝐷(𝑋)

𝑞𝑝𝐷𝐷(𝑥) の値： 𝑝 で 1 , 𝑞 で 0 が有利

𝐷(𝑥)• Generator: 判別できなくしたい
min max 𝐸𝑋∼𝑝 log 𝐷(𝑋) − 𝐸𝑋∼𝑞 log 1 − 𝐷(𝑋)
𝑞:𝑋=𝑔(𝑍)𝐷

𝐷 𝑥 = 1 の領域で確率大が有利

𝑞𝐷(𝑥)
12

サンプリング• 高次元で高性能なサンプラーができた！

DNN

Generated by http://www.whichfaceisreal.com/ （StyleGAN)
by Jevin West and Carl Bergstrom, U. Washington
13• 画像、映像の生成
アニメーション、実写、アート、etc

Yanghua Jin et al (Comiket 92, 2017)

Edmond de Belamy (Oblivious)

Cycle GAN (Zhu et al 2017)

Crypkoby Preferred Networks• サンプリングによる統計的推論

14

深層生成モデルによるBayes推論

15

Beyes推論

事後確率𝑝 𝑦 𝜃 𝜋(𝜃)𝑞 𝜃𝑦 =‫𝜃𝑑 𝜃 𝜋 𝜃 𝑦 𝑝 ׬‬𝜋 𝜃 : 事前確率（prior）
𝑝 𝑦 𝜃 : 尤度 （likelihood）
𝑦: 観測データ

Thomas Bayes (1701-1761)16

𝑝 𝑦 𝜃 𝜋(𝜃)𝑞 𝜃𝑦 =‫𝜃𝑑 𝜃 𝜋 𝜃 𝑦 𝑝 ׬‬
大問題「どう計算するか？」• サンプリング： Markov Chain Monte Carlo (MCMC), Sequential MC /粒子法, ...
• 近似計算： Laplace近似，変分ベイズ，etc→

GANによるサンプリングを使おう！

(Tran et al NIPS 2017; Yang et al NeurIPS2018)17

生成モデルによるベイズ推論• 同時分布の比較
𝑝 𝜃, 𝑦 = 𝑝 𝑦 𝜃 𝜋(𝜃)𝑞 𝜃, 𝑦 ≔ 𝑞 𝜃 𝑦 𝑝 𝑦 , 𝑝 𝑦 = ‫𝜃𝑑 𝜃 𝜋 𝜃 𝑦 𝑝 ׬‬𝜋𝑝 𝑦𝜃

モデルによる 𝐷𝑦𝑖 , 𝜃𝑖
サンプリング…
(𝑦𝑛 , 𝜃𝑛 )𝑝 𝜃, 𝑦 = 𝑞(𝜃, 𝑦) ならば 𝑞 𝜃 𝑦 は事後確率
相違尺度

サンプリング → GAN的学習𝑝 𝜃, 𝑦 : 𝜃𝑖 ∼ 𝜋 𝜃 𝑑𝜃,𝑦𝑖 ∼ 𝑝 𝑦|𝜃𝑖 𝑑𝑦𝑞 𝜃, 𝑦 : 𝜃෨𝑖 = 𝑓𝑤 (𝑦𝑖 , 𝑧𝑖 ), DNN生成モデル
𝑧𝑖 ∼ 𝑝0 𝑧 𝑑𝑧 (ガウスなど)

𝑍

𝑋
𝑧1…
𝑧𝑛𝒇𝒘 (𝒚, 𝒛)
生成モデルによる
サンプリング𝑦𝑖 , 𝜃෨𝑖…
(𝑦𝑛 , 𝜃෨𝑛 )18

• 分布の違いをどう測るか？
1. KL-divergence (Yang et al NeurIPS2018)
学習データ

𝑝 𝑦, 𝜃‫𝑦(𝑞 ׬‬, 𝜃) log𝑑𝜃𝑞 𝑦, 𝜃生成データ

2. 変分Bayesからの導出（Tran et al NIPS 2017）19

変分ベイズとしての見方 Hierarchical Implicit Models andLikelihood-Free Variational Inference (Tran, Ranganath, Blei, NIPS2017)• 変分Bayes：事後確率の有力な近似手法
log 𝑝 𝑦 = ‫𝜃𝑑 𝜃 𝜋 𝜃 𝑦 𝑝 ׬‬
≥ −𝐾𝐿 𝑞 𝜃 𝑦 ||𝜋 𝜃+ 𝐸𝑞 𝜃 𝑦 log 𝑝 𝑦 𝜃Evidence lower bound(ELBO)𝑞(𝜃|𝑦) は任意の分布．等号成立 ⇔ 𝑞 𝜃 𝑦 = 𝑝(𝜃|𝑦)ELBOを最大にする 𝑞 によって事後確率を近似する
𝑝 𝑦, 𝜃• ELBO = ‫ 𝑦 𝜃 𝑞 ׬‬log𝑑𝜃 + log 𝑝(𝑦)𝑞 𝑦, 𝜃→ 生成モデルの目的関数！
20

＊深層生成モデルの尤度関数は計算不能 （c.f. Autoregressive flow, Glow）

𝑝 𝜃,𝑦• log𝑞 𝜃,𝑦

命題の推定 →Logistic判別により可能 （≒ GANの識別機）

識別問題

max 𝐸𝑝 𝑦,𝜃 log 𝜎 𝑟 𝑌, 𝜃𝑟− 𝐸𝑞(𝑦,𝜃) log 1 − 𝜎 𝑟 𝑌, 𝜃の解は 𝑟𝑜𝑝𝑡 𝑦, 𝜃 = log 𝑝 𝑦, 𝜃𝑞 𝑦, 𝜃𝜎(𝑡) =1
1 + 𝑒 −𝑡𝑦, 𝜃Logistic loss
𝒓𝒖 𝒚, 𝜽Generator𝑟(𝑦, 𝜃) をDNNで構成する𝑍

𝒇𝒘 (𝒛)

Discriminator𝑦, 𝜃෨

変分Bayes ≒ GAN
21

変分ベイズとGAN𝑟(𝑦, 𝜃)• 変分Bayes + 深層生成モデル𝑝• Discriminator: ロジスティック判別
max 𝐸 𝑦,𝜃 ∼𝑝 log 𝜎(𝑟 𝑦, 𝜃 )𝜎(𝑟 𝑦, 𝜃 )𝑟(𝑦,𝜃)−𝐸 𝑦,𝜃෩ ∼𝑞 log 1 − 𝜎 𝑟 𝑦, 𝜃෨𝑞𝑟(𝑦, 𝜃)𝑟 の値：𝑝 で + , 𝑞 で – が有利• Generator: 変分Bayes（max ELBO）
max∗ ‫ ∗ 𝑦 𝑟 ∗ 𝑦 𝜃 𝑞 ׬‬, 𝜃 𝑑𝜃𝑞𝑝𝑞:𝜃=𝑓 𝑦 ,𝜉22• GAN（振り返り）• Discriminator: ロジスティック判別
max 𝐸𝑋∼𝑝 log 𝐷(𝑋) − 𝐸𝑋∼𝑞 log 1 − 𝐷(𝑋)

𝑞𝑝

𝐷

𝐷(𝑥)

𝐷(𝑥) の値： 𝑝 で 1 , 𝑞 で 0 が有利• Generator: Discriminatorの与える値が目的関数
min max 𝐸𝑋∼𝑝 log 𝐷(𝑋) − 𝐸𝑋∼𝑞 log 1 − 𝐷(𝑋)𝑞:𝑋=𝑓(𝑍)𝐷

𝐷 𝑥 = 1 の領域で確率大が有利

𝑞
𝐷(𝑥)
23

近似Bayes推論（ABC）における比較
Lotka-Volterra Predator-Prey Simulator (確率微分方程式)
See Tran et al NIPS201724

おわりに： 興味ある方向性• GANによるサンプリング＋Bayes推論
シミュレーター
時系列解析（粒子フィルター）etc• 非線形時系列モデル• センサーデータなど、多くのデータは時系列• HMM/時空間モデルを超えた時系列解析• NEDOプロジェクト「確率深層コンピューティング」（理研・泰地代表，アルゴリズム：樋口，福水，今泉）25• より計算量の少ないモデルへ• 社会の隅々までのAI化には必要• よりよい関数族、関数空間？
• 可変基底 vs 固定基底を超えられるか？
（参考）学習時間 CycleGANの顔画像：
Tesla V100 GPU ８個で1週間• 学習ダイナミクスと汎化誤差• 確率降下法の理解• 汎化誤差とFlat minimaの関係?

(Fukumizu et al 2019, in preparation)

26