第1回nips読み会・関西発表資料 篠崎

52
Synthesizing the preferred inputs for neurons in neural networks via deep generator networks Takashi Shinozaki CiNet, NICT Nov 12, 2016 [email protected]

Upload: shinozakitakashi

Post on 16-Apr-2017

91 views

Category:

Engineering


0 download

TRANSCRIPT

Synthesizing the preferred inputs for neurons in neural networks via deep generator networks

Takashi ShinozakiCiNet, NICTNov 12, [email protected]

紹介論文

• A. Nguyen, A. Dosovitskiy, J. Yosinski, T. Brox, J. Clune• “Synthesizing the preferred inputs for neurons in

neural networks via deep generator networks”

• メインはワイオミング大学

• フライブルク大学の可視化技術がベース

• Dosovitskiy & Brox 2016 arXiv• “Generating images with

perceptual similarity metrics based on deep networks”

ワイオミング?

• アメリカの真ん中あたり

• イエローストーン国立公園があるところ

• ソルトレイクシティやデンバーが近い

ざっくり

• DCGAN的な手法で

DNNの内部状態を表現する

解釈可能な画像を生成する

DGN-AMを提案

はじめに

• Deep Neural Network (DNN)の可視化は重要

• 基礎科学として

• DNNの改良のため

• 可視化の基本

• Activation Maximization (AM) [Erhan+2009]• 反応を最大化する入力を探す

• 可視化する先を制限するpriorが必要

• 自然画像なら自然画像のprior

様々なprior

• Hand-designed priors• Gaussian blur [Yosinski+2015]• α-norm [Simonyan+2014]• Total variation [Mahendran+2016]• Jitter [Mordvintsev+2015]• Data-driven patch [Wei+2015]• Center-bias regularization [Nguyen+2016]• Mean images [Nguyen+2016]

• 本研究ではImageNetを学習したCNNをpriorに!!

可視化の為の生成モデル

• これまでの生成モデル

• Probabilistic model [Lee+2009]• Auto-encoder [Alain+2014]• Stochastic model [Kingma+2014]• Recurrent networks [Theis+2015]

• Generative Adversarial Network (GAN)• [Goodefellow+2014]• 最近の流行、特にDCGAN

• Deep Convolutional GAN [Radford+2015]

Ex. Arithmetics over semantic space

• Radford et al., 2016• “Unsupervised Representation Learning with Deep

Convolutional Generative Adversarial Networks”

Ex. mini-Video generation

• Vondrick et al., 2016• “Generating Videos with Scene Dynamics”

DCGANとは、、、

•Autoencoderの新しい形• 逆向き結合のAutoencoder

Realor

Fake

Randominput

DCGAN

Image output

Autoencoder

Imageoutput

Imageinput

本研究の目的

• ImageNetで学習したCNNをpriorとして

• GANのような生成モデルである

Deep Generative Network (DGN)を使って

• Activation Maximization (AM)な画像を生成する

• DGN-AMを開発して、その性能を検証

Fig.1: 画像生成の概要

• CaffeNetを用いた場合の生成画像の例

Fig.2: ネットワーク構造

• 基本的なDCGANの構造

• ネットワークは学習しない?• 赤い部分の分布を学習する?

G Φ

h

ネットワーク詳細 (1/2)

• 前段階でGenerator Gを学習

• VAEGAN的学習?

Realor

Fake

圧縮表現

yi=E(xi)生成画像

G(yi)元画像

xi

DiscriminatorD

ComparatorC

EncoderE

GeneratorG

生成画像

C(G(yi))C(xi)

判別結果

D(G(yi))D(xi)

比較

比較

比較

ネットワーク詳細 (2/2)

• ネットワークは固定して最適な圧縮表現を探索

• yiは [0,3σ]でクリッピング

• あらかじめEncoder Eの出力分布を取っておく

圧縮表現

yi=E(xi)生成画像

G(yi)

target DNNΦ

=可視化するCNNGenerator

G

featureh

ここを最適化

Fig.3: Priorの汎用性 (1/3)

• MIT Places datasetで学習したDNN[Zhou+2014]• Priorは普通のCaffeNet• いずれもいい感じに可視化できた

• ネットの基本構造が同じなため?

Fig.4: Priorの汎用性 (2/3)

• 全く異なるDNN [Donahue+2015]• 動画像(UCF101)で学習

• 先のものと比べると性能が悪い?

• ネットのせい?データのせい?

Fig.5: Priorの汎用性 (3/3)

• もっと根本から異なるネットワークでも検証

• 学習データは同一(ImageNet)• GoogLeNet [Szegedy+2015], ResNet [Zhang+2016]• 構造が違うほど性能は低下

Fig.6: 中間層(5層目)の可視化

その他の応用の可能性

• ネットワークの学習過程の可視化

• 動画の可視化

• 意味レベルでの合成

Fig.S12: 画像の合成 (1/2)

Fig.S12: 画像の合成 (2/2)

• 様々なものに「火」を灯す

• 意味的な合成が適切に行われている

• 新規画像を生成するための新しい手法?

まとめ

• DGN-AMを提案

• Priorを使って可視化

• 解釈しやすいリアルな画像を生成

• DNNの研究に有効

• テキストからの可視化も促進?

• ネットワークを超えた一般性も持つ?

学習過程での生成画像の変化

• 動画

• https://goo.gl/p9P2zE

Fig.S7: canonical imagesについて

• よくわからないです

Fig.S8: 訓練データの多様性の影響

• 訓練データが単調だと生成画像も単調

Fig.S9: priorのデータ量の影響

• 少データだと正答率もクオリティも低下

Fig.S10: 正答率とクオリティ(1/2)

• 正答率が高いとクオリティも高い

Fig.S10: 正答率とクオリティ(1/2)

• 正答率が低くてもそこまで悪くない

動画の生成

• LRCN DNN[Donahue+2015]で生成モデル

• LSTMでUCF-101を判定するDNN• 動画

• https://goo.gl/pCPIHA

Fig.S11: 画像の合成 (1/2)

Fig.S11: 画像の合成 (2/2)

• 特徴ベクトルのL2の差を損失に追加

• 様々なレベル(画像、意味)での合成

• 科学的にも芸術的にも面白い?

Fig.S12: 画像の合成 (1/2)

Fig.S12: 画像の合成 (2/2)

• 様々なものに「火」を灯す

• 意味的な合成が適切に行われている

• 新規画像を生成するための新しい手法?

Fig.S13: 様々な層での表現 (1/2)

• 上段:conv3、下段:conv5

Fig.S13: 様々な層での表現 (2/2)

• 上段:fc6、下段:fc7

Fig.S14: 各層での表現の詳細 (1/2)

Fig.S14: 各層での表現の詳細 (2/2)

• 上段は従来のhand-designed priorによるもの

• 下段が提案手法

• よりリアルな色とテクスチャを実現

Fig.S15: 場所CNNでの各層 (1/2)

Fig.S15: 場所CNNでの各層 (2/2)

• 場所判定CNN[Zhou+2015]の学習表現

• 3-5層は物体検出に対応?

• fc6,fc7層では複数の表現が混ざり合う?

学習過程での各層の表現の変化

• 動画

• https://goo.gl/p9P2zE

Fig.S17: 従来手法との比較

Fig.S18: 様々な生成結果 (1/2)

Fig.S18: 様々な生成結果 (2/2)

変形への対応

• (1) ベースライン (2) cut-upの影響

• (3) 色変換の影響 (4) blurの影響

Fig.S19: cut-upの影響 (1/2)

• 上段:元画像、下段:cut-up画像

Fig.S19: cut-upの影響 (2/2)

• 上段:元画像での生成、下段:cut-upでの生成

Fig.S20: 色変換の影響 (1/2)

• 上段:元画像、下段:色変換画像

Fig.S20: 色変換の影響 (2/2)

• 上段:元画像での生成、下段:色変換での生成

Fig.S21: blurの影響 (1/2)

• 上段:元画像、下段:blur画像

Fig.S21: blurの影響 (2/2)

• 上段:元画像での生成、下段:blurでの生成

Fig.S22: 画像の記憶かの検証

• 単なる記憶であるという明瞭な証拠はない?