LoginSignup
22
18

More than 5 years have passed since last update.

[Survey]Inception-v4, Inception-ResNet and the Impact of Residual Connections on Learning

Posted at

ImageNet classification challengeのTest Setの結果がMicrosoftのResNetを超えたgoogleの論文
Microsoftはtop-5 errorが3.57%だったが、こちらは3.08%

論文のポイント
Residual connectionを使った
・Residual connectionに改良を入れた(bottleneckを1x7と7x1にした)
不安定対策scalingを入れた

Residual Connection
MicrosoftのResNetはこんな感じ

範囲を選択_108.png

Architecture

3つのArchitectureで評価を行っている。
Architecture毎の違いは下記の通り

Inception-ResNet-v1: InceptionとResNetのhybridで計算コストが少ない方
Inception-ResNet-v2: InceptionとResNetのhybridで計算コストが多い方
Inception-v4: ResNetなしでInceptionを改良したもの

Inception-v4

範囲を選択_109.png

Inception-ResNet-v1 and Inception-ResNet-v2

ResNetを使ったVersionの全体図は下記の通り
範囲を選択_116.png

各ブロックの図は論文にあるが数が多いので割愛。
ちなみにresidual connectionを使ったブロックは下記のような感じになっている。
範囲を選択_119.png

scaling

filter数が1000を超えると、学習が不安定になる(値が0になる)。
Microsoftの論文のようにwarm-upをしても改善しない。
この論文では、下の図のように残差を0.1から0.3の間で値をscale downしたら安定したらしい。
このScale downは不必要なものだけど、trainingの安定には役立ったと書いてあった。

範囲を選択_117.png

Training Methodology

momentum 0.9
RMSProp decay 0.9 epsion 1.0
learning rate 0.045で2 epochごとに0.94倍

Experimental Results

・validationの時に、性能が悪くなる1700 blacklistデータを除いたもので行った。
・これらはbenchmarkを測定するときだけ使えばいい。
・最初の論文では含まれているので、差がtop-1で0.3%、top-5で0.15%でるけど、差が一定だからcurveの比較には問題ないと思う。

論文にはたくさん結果が掲載されているが、代表的なものだけ

Inception-v4とInception-ResNet-v2の比較
最終的な性能は同じぐらいだが、ちょっとだけresidual versionの方が性能がいい。あと、学習の収束が速い。
範囲を選択_121.png

single modelの結果
範囲を選択_120.png

ensembleの結果
Top-5 Errorで3.08%で、1位だったMicrosoftを上回っている

範囲を選択_118.png

最後に

ものすごい力技のような気がするのは気のせいか。

22
18
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
22
18