Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Learning Efficient Convolutional Networks through Network Slimming #13

Open
ryoherisson opened this issue Jan 28, 2021 · 0 comments
Open
Assignees

Comments

@ryoherisson
Copy link
Contributor

一言でいうと

Batchnormのスケーリング因子にL_1ロスを課して学習する,チャンネルレベルの自動剪定手法.

論文リンク

https://openaccess.thecvf.com/content_ICCV_2017/papers/Liu_Learning_Efficient_Convolutional_ICCV_2017_paper.pdf

著者/所属機関

Zhuang Liu, Jianguo Li, Zhiqiang Shen, Gao Huang, Shoumeng Yan, Changshui Zhang,
(Tsinghua University, Intel Labs China, Fudan University, Cornell University)

投稿日付(yyyy/MM/dd)

2017/08/22

概要

チャンネルレベルの自動剪定手法.
Batchnormのスケーリング因子γにL_1ロスを課して学習し,γが小さいチャネルを削除したのちFineTune.
VGGNetでは,モデルサイズを20倍,計算量を5倍削減.

新規性・差分

  • モデルサイズ,実行時メモリ,計算処理の削減および学習プロセスのオーバーヘッドを最小限に抑制.
  • 効率的な推論のための特別なライブラリやハードウェアを必要としない.

手法

  1. 各チャネルにスケーリング因子γ(Batchnormで使われているもの)を導入し,その係数をそのチャネルの出力に乗算.
  2. ネットワーク重みとスケーリング因子を共同訓練し,後者にはL_1正則化を課す.
  3. 閾値以下のスケーリング因子を持つチャネルを剪定した後,ネットワークをFineTune
    (L_1正則化を使う理由は,スケーリング因子の多くを強制的にゼロにするため.)

スクリーンショット 2021-01-28 23 21 48

スクリーンショット 2021-01-28 23 22 00

損失関数(g(・)はL_1正則化項)
スクリーンショット 2021-01-28 23 45 06

Batch normalization(γ:scale,β:shift)
スクリーンショット 2021-01-28 23 53 27

結果

スクリーンショット 2021-01-29 0 00 32

コメント

@ryoherisson ryoherisson self-assigned this Jan 28, 2021
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

No branches or pull requests

2 participants