33
全脳アーキテクチャ若⼿の会 カジュアルトーク#3 (2016.6.4) Adversarial Networks による画像⽣成に迫る 全脳アーキテクチャ若⼿の会 法政⼤学⼤学院 理⼯学研究科 修⼠課程 島⽥ ⼤樹

Adversarial Networks の画像生成に迫る @WBAFLカジュアルトーク#3

Embed Size (px)

Citation preview

Page 1: Adversarial Networks の画像生成に迫る @WBAFLカジュアルトーク#3

全脳アーキテクチャ若⼿の会 カジュアルトーク#3 (2016.6.4)

Adversarial Networks による画像⽣成に迫る

全脳アーキテクチャ若⼿の会法政⼤学⼤学院 理⼯学研究科 修⼠課程

島⽥ ⼤樹

Page 2: Adversarial Networks の画像生成に迫る @WBAFLカジュアルトーク#3

⾃⼰紹介

島⽥ ⼤樹 (SHIMADA Daiki)

@sheema_sheema (Twitter)

• 法政⼤学⼤学院 理⼯学研究科 M2

• 画像解析による授業受講者の態度推定

• 深層学習関連⼿法の提案

• 全脳アーキテクチャ若⼿の会 副代表

• 会全体の運営 (運営メンバー⼤募集中!!)

• 2014年第2回勉強会 発表者

1

Page 3: Adversarial Networks の画像生成に迫る @WBAFLカジュアルトーク#3

前回のあらすじ

l カジュアルにCNN系⽂献64本ノック!http://www.slideshare.net/sheemap/convolutional-neural-networks-wbafl2

Convolutional Neural Networks (CNN) の研究動向

2

l 今⽇はこの中の画像⽣成をちょっとだけ追ってみます!

Page 4: Adversarial Networks の画像生成に迫る @WBAFLカジュアルトーク#3

⽬次 全脳アーキテクチャ若⼿の会 カジュアルトーク#3

Adversarial Networks による画像⽣成に迫る1. Why 画像⽣成?2. Generative Adversarial Nets (GAN)3. GANとならできること4. まとめ

3

Page 5: Adversarial Networks の画像生成に迫る @WBAFLカジュアルトーク#3

Why 画像⽣成?

l 普通に⾒ていて⾯⽩い

l (絵が下⼿な⼈もクリエイティブになれる…?)

絵を描く機械って⾯⽩くないですか?

Page 6: Adversarial Networks の画像生成に迫る @WBAFLカジュアルトーク#3

Why 画像⽣成?

l 機械に物体のパーツの構成を理解させたい

視覚情報の特徴を学習するための⼿段

5

Page 7: Adversarial Networks の画像生成に迫る @WBAFLカジュアルトーク#3

Why 画像⽣成?

l 機械に物体のパーツの構成を理解させたい

視覚情報の特徴を学習するための⼿段

6

Page 8: Adversarial Networks の画像生成に迫る @WBAFLカジュアルトーク#3

⽬次 全脳アーキテクチャ若⼿の会 カジュアルトーク#3

Adversarial Networks による画像⽣成に迫る1. Why 画像⽣成?2. Generative Adversarial Nets (GAN)3. GANとならできること4. まとめ

7

Page 9: Adversarial Networks の画像生成に迫る @WBAFLカジュアルトーク#3

Generative Adversarial Nets (GAN)

l Generator (⽣成部) と Discriminator (判別部) で構成

Generative Adversarial Nets [1]

8[1] I.J. Goodfellow et al. Generative Adversarial Nets. arXiv:1406.2661, 2014.

GeneratorNetwork (G)

DiscriminatorNetwork (D)

?⽣成画像

Z

G(Z)⼊⼒画像が本物の確率

Page 10: Adversarial Networks の画像生成に迫る @WBAFLカジュアルトーク#3

Generative Adversarial Nets (GAN)

l ⽬標1: Dは⼊⼒が本物の画像がどうか⾒分ける

Generative Adversarial Nets の学習 [1]

9[1] I.J. Goodfellow et al. Generative Adversarial Nets. arXiv:1406.2661, 2014.

DiscriminatorNetwork (D)

…?

⽣成画像

G(Z)

⼊⼒画像が本物の確率

[0, 1]

本物画像 x

X か G(Z)どちらかが⼊⼒される

Page 11: Adversarial Networks の画像生成に迫る @WBAFLカジュアルトーク#3

Generative Adversarial Nets (GAN)

l ⽬標2: GはDを騙すような画像を⽣成する

Generative Adversarial Nets の学習 [1]

10[1] I.J. Goodfellow et al. Generative Adversarial Nets. arXiv:1406.2661, 2014.

GeneratorNetwork (G)

DiscriminatorNetwork (D)

?⽣成画像

Z

G(Z)⼊⼒画像が本物の確率

D(G(Z)) のフィードバック

D(G(Z))

Page 12: Adversarial Networks の画像生成に迫る @WBAFLカジュアルトーク#3

Generative Adversarial Nets (GAN)

Generative Adversarial Nets の学習 [1]

11[1] I.J. Goodfellow et al. Generative Adversarial Nets. arXiv:1406.2661, 2014.

… …?⽣成画像

Z

G(Z)

⼊⼒画像が本物の確率

本物画像 x

D(x)

Page 13: Adversarial Networks の画像生成に迫る @WBAFLカジュアルトーク#3

Generative Adversarial Nets (GAN)

Generative Adversarial Nets の学習 [1]

12[1] I.J. Goodfellow et al. Generative Adversarial Nets. arXiv:1406.2661, 2014.

… …?⽣成画像

Z

G(Z)

⼊⼒画像が本物の確率

本物画像 x

D(G(Z))

Page 14: Adversarial Networks の画像生成に迫る @WBAFLカジュアルトーク#3

Generative Adversarial Nets (GAN)

Laplacian Pyramid of Generative Adversarial Nets [2]

13[2] E. Denton, S. Chintala et al. Deep Generative Image Models using a Laplacian Pyramid of Adversarial Networks. arXiv:1506.05751, 2015.

l 画像処理のテクニックと組み合わせて画像⽣成へ周波数帯ごとに画像を⽣成していく

Page 15: Adversarial Networks の画像生成に迫る @WBAFLカジュアルトーク#3

Generative Adversarial Nets (GAN)

Laplacian Pyramid of Generative Adversarial Nets [2]

14[2] E. Denton, S. Chintala et al. Deep Generative Image Models using a Laplacian Pyramid of Adversarial Networks. arXiv:1506.05751, 2015.

l 画像処理のテクニックと組み合わせて画像⽣成へ周波数帯ごとに画像を⽣成していく

Page 16: Adversarial Networks の画像生成に迫る @WBAFLカジュアルトーク#3

Generative Adversarial Nets (GAN)

Deep Convolutional Generative Adversarial Nets [3]

15

[3] A. Radford et al. Unsupervised Representation Learning with Deep Convolutional Generative Adversarial Netwroks. arXiv: 1511.06434, 2015.

l ネットワークを Convolutional Neural Net にすることでより複雑な,よりリアルな画像が⽣成出来るように

Page 17: Adversarial Networks の画像生成に迫る @WBAFLカジュアルトーク#3

Generative Adversarial Nets (GAN)

Deep Convolutional Generative Adversarial Nets [3]

16

[3] A. Radford et al. Unsupervised Representation Learning with Deep Convolutional Generative Adversarial Netwroks. arXiv: 1511.06434, 2015.

l ネットワークを Convolutional Neural Net にすることでより複雑な,よりリアルな画像が⽣成出来るように

Page 18: Adversarial Networks の画像生成に迫る @WBAFLカジュアルトーク#3

Generative Adversarial Nets (GAN)

Deep Convolutional Generative Adversarial Nets [3]

17

[3] A. Radford et al. Unsupervised Representation Learning with Deep Convolutional Generative Adversarial Netwroks. arXiv: 1511.06434, 2015.

l Zの値を変えていくと,部屋の家具や背景が徐々に変化する

Page 19: Adversarial Networks の画像生成に迫る @WBAFLカジュアルトーク#3

Generative Adversarial Nets (GAN)

Deep Convolutional Generative Adversarial Nets [3]

18

[3] A. Radford et al. Unsupervised Representation Learning with Deep Convolutional Generative Adversarial Netwroks. arXiv: 1511.06434, 2015.

l ある属性の画像を⽣成するZ の平均ベクトルの演算で⽣成される画像の操作が可能

Page 20: Adversarial Networks の画像生成に迫る @WBAFLカジュアルトーク#3

⽬次 全脳アーキテクチャ若⼿の会 カジュアルトーク#3

Adversarial Networks による画像⽣成に迫る1. Why 画像⽣成?2. Generative Adversarial Nets (GAN)3. GANとならできること4. まとめ

19

Page 21: Adversarial Networks の画像生成に迫る @WBAFLカジュアルトーク#3

Generative Adversarial Nets (GAN) とならできること

Style Extraction [4]

20

l Autoencoder の中間層表現がある分布っぽいかどうかをDが判断する構造

l データ表現を任意の分布に落とし込める

[4] A. Makhzani et al. Adversarial Autoencoders. arXiv: 1511.05644, 2015.

Ex.) ここの表現を正規分布にしたい!

Page 22: Adversarial Networks の画像生成に迫る @WBAFLカジュアルトーク#3

Generative Adversarial Nets (GAN) とならできること

Style Extraction [4]

l 途中でカテゴリ情報を⼊れてやると,Autoencoderはカテゴリに関係しない特徴 (Style)を獲得

[4] A. Makhzani et al. Adversarial Autoencoders. arXiv: 1511.05644, 2015.

途中でどのカテゴリか教えてやる

スタイル情報を好きな分布に落としこむ

(イメージ)

Page 23: Adversarial Networks の画像生成に迫る @WBAFLカジュアルトーク#3

Generative Adversarial Nets (GAN) とならできること

Style Extraction [4]

22

l ⽣成したいカテゴリ情報 + 好きなスタイル特徴から任意のスタイルの数字画像が⽣成できる

[4] A. Makhzani et al. Adversarial Autoencoders. arXiv: 1511.05644, 2015.

Page 24: Adversarial Networks の画像生成に迫る @WBAFLカジュアルトーク#3

Generative Adversarial Nets (GAN) とならできること

Text to Image [5]

23

l Character-level convolutional-recurrent network でコードされたテキストをGとDへ付与

l G はテキスト情報と乱数から画像を⽣成,D は画像とテキストのマッチングも含めて判断

[5] S. Reed et al. Generative Adversarial Text to Image Synthesis. arXiv:1605.05396, 2016.

Page 25: Adversarial Networks の画像生成に迫る @WBAFLカジュアルトーク#3

Generative Adversarial Nets (GAN) とならできること

Text to Image [5]

24[5] S. Reed et al. Generative Adversarial Text to Image Synthesis. arXiv:1605.05396, 2016.

l CUB(bird), Oxford-102(flower), MS-COCO で実験

Page 26: Adversarial Networks の画像生成に迫る @WBAFLカジュアルトーク#3

Generative Adversarial Nets (GAN) とならできること

Text to Image [5]

25[5] S. Reed et al. Generative Adversarial Text to Image Synthesis. arXiv:1605.05396, 2016.

l CUB(bird), Oxford-102(flower), MS-COCO で実験

Page 27: Adversarial Networks の画像生成に迫る @WBAFLカジュアルトーク#3

Generative Adversarial Nets (GAN) とならできること

Text to Image [5]

26[5] S. Reed et al. Generative Adversarial Text to Image Synthesis. arXiv:1605.05396, 2016.

l CUB(bird), Oxford-102(flower), MS-COCO で実験

Page 28: Adversarial Networks の画像生成に迫る @WBAFLカジュアルトーク#3

Generative Adversarial Nets (GAN) とならできること

Text to Image [5]

27[5] S. Reed et al. Generative Adversarial Text to Image Synthesis. arXiv:1605.05396, 2016.

l テキストとスタイル画像から所望の画像を⽣成する

Gと逆向きの (Zを推定する)⽅向の学習器を作る

Page 29: Adversarial Networks の画像生成に迫る @WBAFLカジュアルトーク#3

Generative Adversarial Nets (GAN) とならできること

Inpainting [6]

28[6] D. Pathak et al. Context Encoders: Feature Learning by Inpainting. arXiv: 1604.07379, 2016.

l G が⼀部がマスクされた画像を⽳埋めするように学習à “真の画像との誤差(L2)”と”Dを騙したかの誤差”を最⼩化

l L2だけではボケた画像が⽣成されるが,Adversarial Nets を使うことでシャープな inpainting

GeneratorNetwork (G)

EncoderNetwork

DiscriminatorNetwork (D)

L2 loss

real/fake

Page 30: Adversarial Networks の画像生成に迫る @WBAFLカジュアルトーク#3

Generative Adversarial Nets (GAN) とならできること

Inpainting [6]

29[6] D. Pathak et al. Context Encoders: Feature Learning by Inpainting. arXiv: 1604.07379, 2016.

Page 31: Adversarial Networks の画像生成に迫る @WBAFLカジュアルトーク#3

⽬次 全脳アーキテクチャ若⼿の会 カジュアルトーク#3

Adversarial Networks による画像⽣成に迫る1. Why 画像⽣成?2. Generative Adversarial Nets (GAN)3. GANとならできること4. まとめ

30

Page 32: Adversarial Networks の画像生成に迫る @WBAFLカジュアルトーク#3

まとめ

GAN の学習の概要と最近の研究事例

l “敵対的な” 2つの学習器を戦わせるという発想

l データの投げ⽅次第で⾊々なことができる

GAN で機械は芸術家の夢をGANGANみれるか?

l まだまだ低解像 (64x64程度) の画像までしか上⼿くいかない

l 最適化にすさまじい⼈智 (=テクニック) が必要

l しかし,〜っぽさという定量化が難しい問題に対してのアプローチの選択肢になりつつあるのでは?

Page 33: Adversarial Networks の画像生成に迫る @WBAFLカジュアルトーク#3

Fin.

32