Synthesizing the preferred inputs
for neurons in neural networks
via deep generator networks
Takashi Shinozaki
CiNet, NICT
Nov 12, 2016
tshino@nict.go.jp
紹介論文
• 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
Real
or
Fake
Random
input
DCGAN
Image output
Autoencoder
Image
output
Image
input
本研究の目的
• 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的学習?
Real
or
Fake
圧縮表現
yi=E(xi)
生成画像
G(yi)
元画像
xi
Discriminator
D
Comparator
C
Encoder
E
Generator
G
生成画像
C(G(yi))
C(xi)
判別結果
D(G(yi))
D(xi)
比較
比較
比較
ネットワーク詳細 (2/2)
• ネットワークは固定して最適な圧縮表現を探索
• yiは [0,3σ]でクリッピング
• あらかじめEncoder Eの出力分布を取っておく
圧縮表現
yi=E(xi)
生成画像
G(yi)
target DNN
Φ
=可視化する
CNN
Generator
G
feature
h
ここを最適化
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: 画像の記憶かの検証
• 単なる記憶であるという明瞭な証拠はない?

第1回NIPS読み会・関西発表資料