2
3

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 5 years have passed since last update.

[論文紹介]Convolutional Neural Network with Layer Reuse

Last updated at Posted at 2019-03-01

CNNの畳み込み層を再利用することにより、パラメータ数とメモリ使用量の大幅な削減を可能にする論文を読んだので要点をまとめます

論文リンク

最初にリンクを貼っておきます
pdf
https://arxiv.org/pdf/1901.09615.pdf
github
https://github.com/okankop/CNN-layer-reuse/tree/master/models

論文の概要

1. Introduction

AlexNetの最初の層の重みを可視化すると、色付けしたところのように、かなり似た重みが多い(Fig 2)
image.png

そのため、多くのConvolution層を用意してもそれは無駄なのではないか?
下の図のように、Convolution層を再利用すれば、パラメータの数やメモリ使用量の削減に繋がるのではないか? (Fig 1)
これを以降、Layer Reuse Network (LruNet) と呼ぶことにする。
image.png

2. Approach

2.1 Layer Reuse (LRU)

層の再利用(Layer Reuse)は以下のように行う(Fig 3)
DwConvとPwConvを順に作用させ、それと入力をconcatさせて、Channelをシャッフルする

  • PwConvのgroup=8は実験的に求められた値である
  • Channel Shuffleは、suffleNet を参考にしたが、元々の実装では最初と最後のチャンネルがシャッフルされないままだったので、単純にチャンネルの前半と後半を入れ替えてシャッフルした

(注) DwConvとPxConvについて参考
DwConv(depth wise convolution)
https://www.robotech-note.com/entry/2017/12/27/084952
PxConv(pixel wise convolution)
https://www.robotech-note.com/entry/2017/12/24/191936
image.png

2.2 NetworkArchitecture

LruNetのアーキテクチャは以下のようになっている (Table 1)

  • Nは何回LRU Blockを繰り返すかを示している。
  • この表には記載されていないが、$\alpha$(width multiplier)という変数があり、これは最初のConv層の出力を何倍にconcatして広げるかという値である。(githubにwidth_multという変数名で書かれているのでそちらを参照するとわかりやすい)

これらをまとめて、N-LruNet- αxという名前で呼ぶこととする。

3. Experiments

Table 2は各種類のLruNetのCIFAR10での精度を示している。
14-LruNet-1xがもっとも精度が良く、それ以上にNを大きくしても精度の向上は見られなかった。
Convolution層のパラメータ数はどれも等しく125kであるが、Nの値が大きくなるにつれパラメータ数が増加しているのは、Bach Normalization層が増えていくからである。

Table 3はchannel shufflingを加えた場合を加えなかった場合の精度を示している。
channel shufflingを行なったほうが精度が良くなることがわかる。

Table 4: パラメータ数をかなり抑えて同等の精度が出せる

Table 5: CIFER-100で実行した結果
width multiplierを2にしてdropoutを0.7にあげて実行している

Table 6: Fashion MNISTでの結果

Table 7:各データセットでの実行結果のまとめ
LruNetはパラメータ数は小さいが、ほかのモデルとほぼ同等の性能を持っている

2
3
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
2
3

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?