Xception|DeepLearning論文の原文を読む #16

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

#15はU-Netについて取り扱いました。

 #16では軽量化にあたってのモデル構造について検討を行ったXceptionについて取り扱います。

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

0. Abstract
1. Introduction
2. Prior work
3. The Xception architecture
4. Experimental evaluation
5. Future directions
6. Conclusions

 

0 Abstract
Abstractは論文の要旨がまとまっているので一文ずつ精読していければと思います。

We present an interpretation of Inception modules in convolutional neural networks as being an intermediate step in-between regular convolution and the depthwise separable convolution operation (a depthwise convolution followed by a pointwise convolution). In this light, a depthwise separable convolution can be understood as an Inception module with a maximally large number of towers. This observation leads us to propose a novel deep convolutional neural network architecture inspired by Inception, where Inception modules have been replaced with depthwise separable convolutions.

和訳:『我々は畳み込みニューラルネットワークにおけるInceptionモジュールが通常の畳み込みと"depthwise separable convolution"の中間段階であるとして解釈できることを提唱する。この点において、"depthwise separable convolution"はInceptionモジュールの中で最もtowerの数が大きなケースだと理解されうる。この洞察はInceptionに触発された新しいDeepLearningのネットワーク構造を我々に示唆してくれ、その新しいネットワーク構造ではInceptionの代わりに"depthwise separable convolutions"を用いている。』
"depthwise separable convolutions"がInceptionモジュールの特殊なケースとして言及されています。この辺の議論が1節の1.1〜1.2でされています。

We show that this architecture, dubbed Xception, slightly outperforms Inception V3 on the ImageNet dataset (which Inception V3 was designed for), and significantly outperforms Inception V3 on a larger image classification dataset comprising 350 million images and 17,000 classes.

和訳:『我々はXceptionと名付けたこの構造がImageNetデータセットを用いてInceptionV3をわずかに上回り、また3.5億枚の1.7万クラスのより大きなデータセットにおいてははるかに高いパフォーマンスを出したことを示す。』
実際にパフォーマンスに関して、同様規模のモデルであるInceptionV3と比較して言及されています。通常のImageNetのデータセットでは同様のパフォーマンス、さらに大きなデータセットではInceptionV3を大きく上回る結果を出したとされています。

Since the Xception architecture has the same number of parameters as Inception V3, the performance gains are not due to increased capacity but rather to a more efficient use of model parameters.

和訳:『Xceptionの構造はInceptionV3と同様のパラメータ数を持つため、パフォーマンス向上の要因は容量の増加というよりもモデルのパラメータの効率性によると考えられる。』
結論として、"depthwise separable convolutions"の効率性について言及されています。

 

1. Introduction
1stパラグラフではCNNの成功に関してLeNet[1989]からAlexNet[2012]、VGGNet[2014]などについて言及がなされています。2ndパラグラフでは2014年頃からそれまでのオーソドックスなネットワークとは違い、InceptionモジュールをベースにしたGoogLeNetやショートカットを取り入れたResNetなどの出現について言及されています。3rdパラグラフではVGGのようなオーソドックスなモデルからの脱却の第一歩としてFigure1のようなInceptionV3について言及されています。4thパラグラフではInceptionモジュールのCNNとの類似性について述べた後にどのようにそれが機能したり通常のCNNと違うのかなどについて言及し、この論文におけるテーマを示唆しています。
1.1ではInceptionモジュールについての考察を行っています。1stパラグラフではfilterを用いた3次元の空間は2次元の画像方向と1次元のチャネル方向に分けられ、1つのフィルタは画像方向に関する相関とチャネル方向に関する相関を持つとされています。2ndパラグラフではこれを受けて処理の分解について言及されています。

f:id:lib-arts:20190224203843p:plain
3rdパラグラフでは2ndパラグラフを踏まえた上で、上図のFigure2や下図のFigure3について話を進めています。

f:id:lib-arts:20190224203813p:plain
1.2では1.1の議論を受けて、下図のFigure4やその究極である"depthwise separable convolutions"として言及を行っています。

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


2. Prior work
4点まとまっており、(1)VGG16のようなオーソドックスなネットワーク構造の研究、(2)Inception構造などの研究、(3)depthwise separable convolutionについての経緯の研究、(4)拡張としてResNetのようなコネクション関連の研究が言及されています。


3. The Xception architecture
3節ではこれまでの議論を踏まえた上でXceptionのネットワーク構造に関して言及されています。
1stパラグラフでは、空間方向(画像方向)の畳み込みとチャネル方向の畳み込みの相関は分けられるという仮説をベースにその究極版として、“Extreme Inception”ということでXceptionと名付けたことについて言及されています。2ndパラグラフではXceptionの全体のネットワーク構造に関して言及されており、Figure5で表される36層の畳み込みネットワークであるとされています。3rdパラグラフではXceptionネットワークは容易に定義や修正ができ、VGG16などと同様にKerasやTensorFlow-Slimで30~40行程度で実装できることについて言及されています。

 

4. Experimental evaluation
ImageNetとJFTの二つのデータセットで検証実験が行われています。


5. Future directions
今回の検証の結果では良い成果を示したものの、将来的な課題としてdepthwise separable convolutionsが最適という根拠はないので検証が必要であるとされています。


6. Conclusions
割愛します。