DCGAN(Deep Convolutional GAN)|DeepLearning論文の原文を読む #12

f:id:lib-arts:20190221181450p:plain

#11ではGAN(Generative Adversarial Networks)について取り扱いました。

 #12では#11のGANの学習の安定化をはかったDCGAN(Deep Convolutional Generative Adversarial Networks)について取り扱います。(必要以上に固く書きたくなく90%〜95%程度の確信度で書きますので、もし間違いなどがあれば気軽にご指摘いただけたらと思います。)

[1511.06434] Unsupervised Representation Learning with Deep Convolutional Generative Adversarial Networks
以下論文の目次です。基本的な書き方の流れとしてはAbstractは和訳&補足、それ以外の章に関しては要約を中心にまとめます(省く章もあるかもしれません)

0. ABSTRACT
1. INTRODUCTION
2. RELATED WORK
3. APPROACH AND MODEL ARCHITECTURE
4. DETAILS OF ADVERSARIAL TRAINING
5. EMPIRICAL VALIDATION OF DCGANS CAPABILITIES
6. INVESTIGATING AND VISUALIZING THE INTERNALS OF THE NETWORKS
7. CONCLUSION AND FUTURE WORK

 

 

0. ABSTRACT

In recent years, supervised learning with convolutional networks (CNNs) has seen huge adoption in computer vision applications. Comparatively, unsupervised learning with CNNs has received less attention.

和訳:『ここ数年、CNNを用いた教師あり学習はコンピュータビジョンの領域で大きな成功を収めた。それに比較すると、CNNを用いた教師なし学習はあまり注目されていない。』
大体の論文は上記のようにCNNの成功から話が始まり、本題に入るにあたって着目したテーマに関する現状の課題についてまとめる論旨展開とされることが多いです。今回読むDCGANの論文では、教師なし学習(unsupervised learning)に対する課題について言及されています。

In this work we hope to help bridge the gap between the success of CNNs for supervised learning and unsupervised learning. We introduce a class of CNNs called deep convolutional generative adversarial networks (DCGANs), that have certain architectural constraints, and demonstrate that they are a strong candidate for unsupervised learning.

和訳:『この研究によってCNNにおける教師あり学習教師なし学習の間にある溝に橋を架けることができれば望ましいと我々は考えている。特定のネットワークの構造の制約を設けたDCGANというCNNを導入し、それらが教師なし学習における強力な候補(candidate)となることを示す。』
前の文を受けてDCGANがこれまで比較的注意が向けられて来なかった教師なし学習に、CNNを用いて取り組む有力な候補だとまとめられています。

Training on various image datasets, we show convincing evidence that our deep convolutional adversarial pair learns a hierarchy of representations from object parts to scenes in both the generator and discriminator. Additionally, we use the learned features for novel tasks - demonstrating their applicability as general image representations.

和訳:『様々な学習データによって学習させることで、我々はDCGANが生成モデルや識別モデルの双方において物体の部分から風景(scences)までの階層的な表現を学習させることの確たる証拠(evidence)を示す。加えて、我々は新しいタスクに対して学習した特徴量を適用し、画像の汎用的な表現として応用性を示す。』
hierarchy of representationsは最初は意味が掴めなかったのですが、ざっと調べた感じだとDeepLearningで特徴表現をすることを階層的に表現しているとしているようでした。この辺はWord2Vecにおける局所表現(local representation)から分散表現(distributed representation)への変換のイメージと近いものがあると考えて良いのではと思われます(要出典)。

 

1. INTRODUCTION
大量のラベル付けされていないデータから再利用可能な特徴量表現(reusable feature representations)を抽出することは活発に研究されている分野だとされており、画像の分野では画像識別(image classification)タスクに用いられる良い中間表現であると言及されています。次にこれを画像認識の文脈で実現している例としてGANについて言及している一方で、学習が安定しない欠点を挙げこれを解決している例が少ないということを述べています。
それを踏まえた上で、DCGANの論文の貢献(contribution)について以下の四点がまとまっています。

・学習を安定させるために制約を盛り込んだ、DCGANというネットワーク構造
・Discriminatorの画像の中間表現(intermediate representation)を画像認識タスクに導入し、他の教師なし学習の手法と比べても競争力のある結果を出したこと
・GANで学習したフィルタを可視化することで、特定のフィルタが特定のオブジェクトに対応していると示すことができたこと
・Generatorの入力のzをいじることで画像に関する面白いベクトルの属性(interesting vector arithmetic properties)を示すことができたこと

 

2. RELATED WORK
2.1ではラベル付けされていないデータからの表現の学習、2.2では画像の生成、2.3ではCNNの内部構造の可視化についての関連研究がまとまっています。

 

3. APPROACH AND MODEL ARCHITECTURE
一番下にネットワークを構築を行うにあたってのガイドライン(Architecture guidelines)についてまとまっています。

f:id:lib-arts:20190222121114p:plain
上図がガイドラインのキャプチャを撮ったものです。下記の5点がDCGANを安定させるためのガイドラインとしてまとまっています。

・プーリング層をストライドのある畳み込みで置き換えること
・生成モデルと識別モデルの双方でバッチ正規化を用いること
・全結合(FC)層を取り去ること
・生成モデルにおいては出力層をTanh、その他の層にReLUを活性化関数として用いること
・識別モデルにおいては全てのレイヤーにおいてLeakyReLUを用いること

 

 4. DETAILS OF ADVERSARIAL TRAINING
4節では1stパラグラフで三つのデータセットを用いた学習に対して言及されており、(1)LSUN(Large-scale Scene Understanding)、(2)FACES、(3)Imagenet-1kがその詳細で、それぞれ4.1~4.3節でまとめられています。
2ndパラグラフでは学習の詳細について、またFigure1ではGeneratorのネットワーク構造についてまとまっており、実装の際にはこの辺を参照すると良さそうです。

f:id:lib-arts:20190222121735p:plain

上図のようなネットワーク構造でDCGANは画像を生成する流れになっています。

 

5. EMPIRICAL VALIDATION OF DCGANS CAPABILITIES
5節ではDCGANを画像からの特徴量抽出器(feature extractor)として捉えて、その他の特徴量抽出との比較を行なっています。

 

6. INVESTIGATING AND VISUALIZING THE INTERNALS OF THE NETWORKS
6節では学習済みのGeneratorとDiscriminatorの中身の探索を行なっています。
6.1では4節で出てきた図の入力にあたるzを動かすことで出力の挙動を確認しています。

f:id:lib-arts:20190222205552p:plain
上図がパラメータのZの値を動かした結果についてまとまっています。
6.2ではguided backpropagationという手法を用いて識別モデルにおける活性が強い所の可視化を行なっています。

f:id:lib-arts:20190222205630p:plain
上図の右図においてベッドや窓などのベッドルームに特徴的に出てくるものが確認されます。
6.3ではGeneratorの情報の可視化について述べられており、6.3.1では生成モデルのアウトプットから窓を取り去る取り組みについて言及されています。ネットワークの内部の挙動に着目することで、窓に関するフィルタを特定することでその影響をなくすことで窓の消去を行っているようです。
6.3.2では潜在変数のzの足し算引き算について取り扱っており、この辺はWord2Vecに近い処理を行っているようです。

 

7. CONCLUSION AND FUTURE WORK
将来研究に対して、(1)学習の不安定さ、(2)videoやaudioなどの別ドメインの問題への適用、(3)潜在空間の探索などが課題としては面白いとされていました。