SlideShare una empresa de Scribd logo
1 de 31
Neural Rejuvenation:
Improving Deep Network Training
by Enhancing Computational Resource Utilization
第53回 コンピュータビジョン勉強会@関東
2019/6/30
紹介者:進矢陽介
※本発表は個人として行うものであり
所属組織を代表するものではありません
はじめに
• DNNはリソースを十分活用できていない
• Neural Rejuvenationは、DNNのリソース利用率を向上させる、
パラメータ・アーキテクチャの最適化手法
• 宝くじ券仮説のアナロジーで言うと、
当選券は残して、ハズレ券だけ払い戻してもらい、
そのお金で宝くじ券を買い足すことで、
リソース利用率を向上させる
• 現実の操作が分かるよう、
pruningの関連研究を先に紹介します
pruningの関連研究
―Neural Rejuvenationに至る道―
LWC (Learning both Weights and Connections) [Song Han+, NIPS2015]
• DNNは無駄にでかいので小さくしたい
• 絶対値が小さい重み(シナプス)をpruning
• あるニューロンの 入力シナプス全て or 出力シナプス全て が 0 なら
そのニューロンもpruning可能
・pruning後の構造が不規則
- 専用のハードウェア・ライブラリが無いと効果が薄い
- conv層の削減に向かない
Pruning Filters for Efficient ConvNets [Hao Li+, ICLR2017]
・pruningに対する各層のsensitivityを分析し、
pruning比率を決める必要がある
[Huizi Mao+, CVPRW2017]
• フィルタのL1ノルム(フィルタ内の重みの絶対値の総和)σ ℱ𝑖,𝑗 が小さいフィルタをpruning
𝑛𝑖 : 入力特徴マップチャンネル数
𝑛𝑖+1 : 出力特徴マップチャンネル数(=フィルタ数)
フィルタ(kernel matrixの青いカーネル4枚)を
削れれば出力特徴マップも削れる
pruningの粒度(の一部)
Network Slimming [Zhuang Liu+, ICCV2017]
・特定のリソースを狙って小さくできない
・小さくする方向だけ
- リソースが不足している部分を大きくできない
- 精度向上が主目的ではない
• Batch Normalization の scaling factor 𝛾 が小さいチャンネルをpruning
• L1正則化で 𝛾 がスパースになるよう仕向ける
𝛾
罰則項
MorphNet FLOP/Size regularizer
誤ったら許さない
というお気持ち
[Ariel Gordon+, CVPR2018]
FLOPs(演算回数)増やすんじゃねぇぞ
というお気持ちを追加すると・・・
パラメータ数増やすんじゃねぇぞ
というお気持ちを追加すると・・・
• 何を小さくしたいかに応じて罰則項を変更
MorphNet shrink-and-expand(収縮拡張法)
収縮
Network Slimming
拡張
width multiplier
図は [Ariel Gordon+, CVPR2018] を元に作成
・チャンネル数を決定したネットワークをスクラッチで学習し直す必要あり
- 学習の効率が悪い
- 拡張時にパラメータをどう引き継ぐべきか不明
• 収縮・拡張によりチャンネル数を自動決定
DSD: Dense-Sparse-Dense Training
[Song Han+, ICLR2017]
・ガチャっぽくない
・ランダム性を活用したキャパシティ増加を行っていない
• 一度pruningした重みを 0 初期化で復活させる
RandomOut
[Joseph Paul Cohen+, ICLRW2016]
• 重要でないフィルタをランダム初期化し直し、訓練継続
探索するフィルタを増やし、ネットワークサイズを大きくすることなく精度を向上させる
MorphNet + RandomOut
収縮
Network Slimming
拡張
width multiplier
図は [Ariel Gordon+, CVPR2018] を元に作成
これが Neural Rejuvenation の肝
• MorphNetの拡張部分の重みにランダム初期化を使用し、訓練を継続
Neural Rejuvenation
書誌情報
Neural Rejuvenation: Improving Deep Network Training
by Enhancing Computational Resource Utilization
• 著者: Siyuan Qiao, Zhe Lin, Jianming Zhang, Alan L. Yuille
• 論文:
http://openaccess.thecvf.com/content_CVPR_2019/papers/Qiao_Neural_Rejuvenation_Improving_Deep_Network_
Training_by_Enhancing_Computational_Resource_CVPR_2019_paper.pdf (arXiv v1から微修正あり)
https://arxiv.org/abs/1812.00481
• コード: https://github.com/joe-siyuan-qiao/NeuralRejuvenation-CVPR19
• オーラル発表動画: https://www.youtube.com/watch?v=KHEknuuCz0E&t=1862s
概要
• 多くのDNNは over-parameterize されており、リソースを十分活用できていない
• 訓練時間・評価時間が無駄
• モデルのポテンシャルが制限されている
• 新最適化手法 Neural Rejuvenation でリソース利用率を向上させる
(1) リソース利用率監視
死亡ニューロン(無駄なニューロン)を検出し、リソース利用率を計算
(2) 死亡ニューロン若返り
再配置・再初期化で死亡ニューロンを若返らせる
(3) 生存ニューロン・若返りニューロン混在時の訓練スキーム
• 標準的なoptimizerから置き換えるだけで、
リソース使用量(パラメータ数や演算回数)を維持しながら、
NNの性能を大幅に向上可能
対象とする最適化問題
• アーキテクチャ , パラメータ の両方を最適化
• リソース利用率 𝑟 =
𝑐( )
( ): 出力への影響が小さい死亡ニューロンを除去した場合の計算コスト
アーキテクチャ を使用するコスト
(例:パラメータ数、FLOPs)
ℒ : 損失関数
: アーキテクチャ , パラメータ のNN
許容するリソース使用量の最大値
先行研究と比較した利点
MorphNetはネットワーク全体をスクラッチで訓練し直す
Neural Rejuvenationは、
• 死亡ニューロンのみ再初期化し、訓練を継続
(途中まで訓練されたフィルタを再利用)
• 1つのモデルを1回だけ訓練すれば良い
• より高精度
手法
アルゴリズム
備考:Step 5のneural rejuvenation flagは所定の周期(例:1 epoch)でonになる。
つまり、ほとんどのiterationでは通常のSGDと変わらない。
← SGD
リソース利用率を監視
リソース利用率が閾値より小さいと
死亡ニューロンを若返らせる
(再初期化・再配置)
(1) リソース利用率監視 リソース消費量計算
↑
入力特徴マップの
生存チャンネル数
↑
カーネルサイズ
↑
出力特徴マップの
解像度
https://www.slideshare.net/ren4yu/ss-145689425
パラメータ数:
演算回数:
↑
出力特徴マップの
生存チャンネル数
(1) リソース利用率監視 生死判定、スパース化
• 基本的にNetwork Slimming同様
• 全conv層後にBN層(or 学習可のアフィン変換層)を仮定
• BNの 𝛾 で生死(利用されているか余分か)を判定
• 𝛾 < 0.01 × 𝛾max なら死亡ニューロン(死亡チャンネル)
𝛾max: 同じ層の 𝛾 の最大値
実験的に除去しても影響小
• 学習時にL1正則化を加えスパース化しておく
𝜆: 罰則係数(正則化係数)
𝒯: アーキテクチャ内の 𝛾 の集合
Batch Normalization
(1) リソース利用率監視 適応的罰則係数
適切な 𝜆 の選択が重要
• 𝜆 = 0 : 非スパース。通常の訓練
• 𝜆大 : スパース。大きすぎると元のロスからかけ離れる
→ 利用率に合わせて動的に決定
利用率の減少が遅ければ、罰則係数を上げる
利点
(1) タスク・アーキテクチャに合わせて自動で最適化
人手で試行錯誤して選ぶ必要が無い
(Network SlimmingやMorphNetの欠点の1つを解消)
(2) Step 8突入にかかるiterationに上限
λが十分大きくなれば、利用率を最低 𝛥𝑟 ずつ削れる
if (𝛥𝑡 iteration前の利用率) − (現在の利用率) < 𝛥𝑟 :
𝜆 += Δ𝜆
𝛥𝑡, 𝛥𝑟, Δ𝜆 はハイパラ
• 節約したリソースの再配置
MorphNet同様、各層の出力チャンネル数を 𝛼 倍( 𝑤𝑖
′′
= 𝛼 ⋅ 𝑤𝑖
′
)
あまり削れなかった層(生存ニューロンが多い層)はもっとパラメータが必要、という仮定
• パラメータ再初期化
• Neural rescaling
L1正則化で 𝒮 の 𝛾 も小さくなり、勾配法での訓練に害
𝛾 の絶対値を初期値レベルに戻し、その分パラメータを小さくする
(2) 死亡ニューロン若返り
・𝒮 (生存ニューロン)と ℛ (若返りニューロン)が混在
・再初期化で 𝒮 の出力が変わらないようにする
𝑊𝒮→𝒮: そのまま
𝑊ℛ→ℛ: ランダム初期化
𝑊𝒮→ℛ: 0
𝑊ℛ→𝒮: 0
𝒮 𝒮
ℛ ℛ
“Twemoji” by Twitter, Inc and other contributors /CC-BY 4.0
(3) 𝒮, ℛ 混在時の訓練 キャパ十分の場合(例:CIFAR)
• 𝒮 だけでデータによくフィッティングできるなら、
ℛ が即死したり冗長な特徴を出力したりするおそれ
• 𝒮, ℛ 間の結合を除去し、ℛ が別の特徴を学習するよう仕向ける
𝒮 𝒮
ℛ ℛ
(3) 𝒮, ℛ 混在時の訓練 キャパ不足の場合(例:ImageNet)
• SORTをベースとしたcross attentionでキャパシティ増加
パラメータ数は増えず、演算回数もあまり増えない
• attentionの先行研究との差異
・チャンネルの1グループで他のチャンネル用のアテンションを生成
・キャパシティ増加のために使用
SORT: Second-Order Response Transform
[Yan Wang+, ICCV2017]
二次の項を追加し非線形性・表現力を向上
⊙ : 要素積
𝜎 : シグモイド関数
実験
パラメータ利用率の推移
条件
• ImageNet
• 実験単純化のためrejuvenationは1回のみ
• 10~20エポックで利用率0.5になるため、訓練時間増加は20%以下
小さなモデルより大きなモデルの方が
死亡ニューロンを見つけるのが簡単
大きなモデルほどリソース浪費リスク大
ResNet-101のパラメータを半分節約するには
10エポックで十分
Ablation Study
ベースライン
条件
• パラメータ数維持
• ImageNet Error
• simplified VGG-19
(ImageNetのフィッティングにキャパ不十分)
• 画像解像度: 128x128
• 𝑇𝑟 = 0.25
ベースライン+cross attention
cross-connection無し
cross-connection neural rescaling
cross attention
再配置無し NR-CA-BR + DSD
提案手法はいいぞ
• cross-connectionあった方が良い
• cross attentionだと更に良い
• neural rescalingした方が良い
• 重みを引き継いだ方が良い
• 再配置した方が良い
• DSDを併用*1すると更に良い
NRで見つかったアーキテクチャのスクラッチ学習
提案手法全部のせ
(cross attention + neural rescaling)
*1: 査読者に言われて追加したのだろうが、実験よりRelated Workの方を修正して欲しい
ImageNetでの精度向上
リソースを無駄にしやすい大きなモデルほどNeural Rejuvenationの効果大
パラメータ数制約 FLOPs制約
NR Params, NR FLOPsのうち高精度な方の
Top-1 errorのベースラインからの相対変化率
備考:DenseNet-121のNR Paramsの結果はあまり当てにならない
Top1 error: 24.50/25.32 – 1 = -3.24%
Params: 8.22/7.92-1 = 3.79%
FLOPs: 3.13/2.83-1 = 10.60%
MorphNetとの比較
MorphNet
ベースライン
MorphNet
NR
ベースライン
NR
MorphNetに圧勝
条件
• FLOPs維持
• ImageNet Top-1 error
• 画像解像度: 128x128
備考: ベースラインが異なるため分かりにくいが、ベースラインの時点で勝っているところからMorphNet以上のエラー低減を実現している。
MorphNetの訓練方法が闇( http://openaccess.thecvf.com/content_cvpr_2018/Supplemental/2508-supp.pdf )なので、
ベースラインを揃えろとも言いづらい。
モデル圧縮
若返りを繰り返すことで、
パラメータ数を維持しながら精度向上
条件
• パラメータ数半減
0.25倍にして0.5倍まで戻す
• CIFAR
• cross-connection無し
Network Slimmingに圧勝
まとめ
Neural Rejuvenation:
訓練中に死亡ニューロンを再配置・再初期化し、
DNNのリソース利用率を向上させる、
アーキテクチャ・パラメータの最適化手法
所感
• pruning、NAS、再初期化の利点をうまく組み合わせている
• 実用性が更に上がると良い
• 適応的罰則係数用にハイパラが実質2つ増加
公開コード中のCIFARの設定では罰則係数決め打ち
• conv層直後のBatch Normalization層を仮定
ネットワーク設計に制約

Más contenido relacionado

La actualidad más candente

NIPS2015読み会: Ladder Networks
NIPS2015読み会: Ladder NetworksNIPS2015読み会: Ladder Networks
NIPS2015読み会: Ladder NetworksEiichi Matsumoto
 
[DL輪読会]The Neural Process Family−Neural Processes関連の実装を読んで動かしてみる−
[DL輪読会]The Neural Process Family−Neural Processes関連の実装を読んで動かしてみる−[DL輪読会]The Neural Process Family−Neural Processes関連の実装を読んで動かしてみる−
[DL輪読会]The Neural Process Family−Neural Processes関連の実装を読んで動かしてみる−Deep Learning JP
 
DNNの曖昧性に関する研究動向
DNNの曖昧性に関する研究動向DNNの曖昧性に関する研究動向
DNNの曖昧性に関する研究動向Naoki Matsunaga
 
1017 論文紹介第四回
1017 論文紹介第四回1017 論文紹介第四回
1017 論文紹介第四回Kohei Wakamatsu
 
[DL輪読会]Xception: Deep Learning with Depthwise Separable Convolutions
[DL輪読会]Xception: Deep Learning with Depthwise Separable Convolutions[DL輪読会]Xception: Deep Learning with Depthwise Separable Convolutions
[DL輪読会]Xception: Deep Learning with Depthwise Separable ConvolutionsDeep Learning JP
 
[DL輪読会] GAN系の研究まとめ (NIPS2016とICLR2016が中心)
[DL輪読会] GAN系の研究まとめ (NIPS2016とICLR2016が中心)[DL輪読会] GAN系の研究まとめ (NIPS2016とICLR2016が中心)
[DL輪読会] GAN系の研究まとめ (NIPS2016とICLR2016が中心)Yusuke Iwasawa
 
[DL輪読会]Understanding and Controlling Memory in Recurrent Neural Networks (ICM...
[DL輪読会]Understanding and Controlling Memory in Recurrent Neural Networks (ICM...[DL輪読会]Understanding and Controlling Memory in Recurrent Neural Networks (ICM...
[DL輪読会]Understanding and Controlling Memory in Recurrent Neural Networks (ICM...Deep Learning JP
 
正則化による尤度比推定法を応用した多値分類器の改良
正則化による尤度比推定法を応用した多値分類器の改良正則化による尤度比推定法を応用した多値分類器の改良
正則化による尤度比推定法を応用した多値分類器の改良MasatoKikuchi4
 
深層学習Day4レポート(小川成)
深層学習Day4レポート(小川成)深層学習Day4レポート(小川成)
深層学習Day4レポート(小川成)ssuser441cb9
 
[DL輪読会]A Simple Unified Framework for Detecting Out-of-Distribution Samples a...
[DL輪読会]A Simple Unified Framework for Detecting Out-of-Distribution Samples a...[DL輪読会]A Simple Unified Framework for Detecting Out-of-Distribution Samples a...
[DL輪読会]A Simple Unified Framework for Detecting Out-of-Distribution Samples a...Deep Learning JP
 

La actualidad más candente (14)

NIPS2015読み会: Ladder Networks
NIPS2015読み会: Ladder NetworksNIPS2015読み会: Ladder Networks
NIPS2015読み会: Ladder Networks
 
[DL輪読会]The Neural Process Family−Neural Processes関連の実装を読んで動かしてみる−
[DL輪読会]The Neural Process Family−Neural Processes関連の実装を読んで動かしてみる−[DL輪読会]The Neural Process Family−Neural Processes関連の実装を読んで動かしてみる−
[DL輪読会]The Neural Process Family−Neural Processes関連の実装を読んで動かしてみる−
 
A3C解説
A3C解説A3C解説
A3C解説
 
DNNの曖昧性に関する研究動向
DNNの曖昧性に関する研究動向DNNの曖昧性に関する研究動向
DNNの曖昧性に関する研究動向
 
1017 論文紹介第四回
1017 論文紹介第四回1017 論文紹介第四回
1017 論文紹介第四回
 
[DL輪読会]Xception: Deep Learning with Depthwise Separable Convolutions
[DL輪読会]Xception: Deep Learning with Depthwise Separable Convolutions[DL輪読会]Xception: Deep Learning with Depthwise Separable Convolutions
[DL輪読会]Xception: Deep Learning with Depthwise Separable Convolutions
 
[DL輪読会] GAN系の研究まとめ (NIPS2016とICLR2016が中心)
[DL輪読会] GAN系の研究まとめ (NIPS2016とICLR2016が中心)[DL輪読会] GAN系の研究まとめ (NIPS2016とICLR2016が中心)
[DL輪読会] GAN系の研究まとめ (NIPS2016とICLR2016が中心)
 
[DL輪読会]Understanding and Controlling Memory in Recurrent Neural Networks (ICM...
[DL輪読会]Understanding and Controlling Memory in Recurrent Neural Networks (ICM...[DL輪読会]Understanding and Controlling Memory in Recurrent Neural Networks (ICM...
[DL輪読会]Understanding and Controlling Memory in Recurrent Neural Networks (ICM...
 
正則化による尤度比推定法を応用した多値分類器の改良
正則化による尤度比推定法を応用した多値分類器の改良正則化による尤度比推定法を応用した多値分類器の改良
正則化による尤度比推定法を応用した多値分類器の改良
 
DeepLearningTutorial
DeepLearningTutorialDeepLearningTutorial
DeepLearningTutorial
 
深層学習②
深層学習②深層学習②
深層学習②
 
深層学習Day4レポート(小川成)
深層学習Day4レポート(小川成)深層学習Day4レポート(小川成)
深層学習Day4レポート(小川成)
 
20160329.dnn講演
20160329.dnn講演20160329.dnn講演
20160329.dnn講演
 
[DL輪読会]A Simple Unified Framework for Detecting Out-of-Distribution Samples a...
[DL輪読会]A Simple Unified Framework for Detecting Out-of-Distribution Samples a...[DL輪読会]A Simple Unified Framework for Detecting Out-of-Distribution Samples a...
[DL輪読会]A Simple Unified Framework for Detecting Out-of-Distribution Samples a...
 

Similar a Neural Rejuvenation: Improving Deep Network Training by Enhancing Computational Resource Utilization

Image net classification with Deep Convolutional Neural Networks
Image net classification with Deep Convolutional Neural NetworksImage net classification with Deep Convolutional Neural Networks
Image net classification with Deep Convolutional Neural NetworksShingo Horiuchi
 
DEEP LEARNING、トレーニング・インファレンスのGPUによる高速化
DEEP LEARNING、トレーニング・インファレンスのGPUによる高速化DEEP LEARNING、トレーニング・インファレンスのGPUによる高速化
DEEP LEARNING、トレーニング・インファレンスのGPUによる高速化RCCSRENKEI
 
ae-3. ディープラーニングの基礎
ae-3. ディープラーニングの基礎ae-3. ディープラーニングの基礎
ae-3. ディープラーニングの基礎kunihikokaneko1
 
LCCC2010:Learning on Cores, Clusters and Cloudsの解説
LCCC2010:Learning on Cores,  Clusters and Cloudsの解説LCCC2010:Learning on Cores,  Clusters and Cloudsの解説
LCCC2010:Learning on Cores, Clusters and Cloudsの解説Preferred Networks
 
Computational Motor Control: Reinforcement Learning (JAIST summer course)
Computational Motor Control: Reinforcement Learning (JAIST summer course) Computational Motor Control: Reinforcement Learning (JAIST summer course)
Computational Motor Control: Reinforcement Learning (JAIST summer course) hirokazutanaka
 
【基調講演】『深層学習の原理の理解に向けた理論の試み』 今泉 允聡(東大)
【基調講演】『深層学習の原理の理解に向けた理論の試み』 今泉 允聡(東大)【基調講演】『深層学習の原理の理解に向けた理論の試み』 今泉 允聡(東大)
【基調講演】『深層学習の原理の理解に向けた理論の試み』 今泉 允聡(東大)MLSE
 
Deep learning実装の基礎と実践
Deep learning実装の基礎と実践Deep learning実装の基礎と実践
Deep learning実装の基礎と実践Seiya Tokui
 
ニューロンの出力値に基づくニューラルネットワークの小規模化
ニューロンの出力値に基づくニューラルネットワークの小規模化ニューロンの出力値に基づくニューラルネットワークの小規模化
ニューロンの出力値に基づくニューラルネットワークの小規模化Kamma Koji
 
深層学習(岡本孝之 著) - Deep Learning chap.3_1
深層学習(岡本孝之 著) - Deep Learning chap.3_1深層学習(岡本孝之 著) - Deep Learning chap.3_1
深層学習(岡本孝之 著) - Deep Learning chap.3_1Masayoshi Kondo
 
Deep learningbook chap7
Deep learningbook chap7Deep learningbook chap7
Deep learningbook chap7Shinsaku Kono
 
Top-K Off-Policy Correction for a REINFORCE Recommender System
Top-K Off-Policy Correction for a REINFORCE Recommender SystemTop-K Off-Policy Correction for a REINFORCE Recommender System
Top-K Off-Policy Correction for a REINFORCE Recommender Systemharmonylab
 
Active learning with efficient feature weighting methods for improving data q...
Active learning with efficient feature weighting methods for improving data q...Active learning with efficient feature weighting methods for improving data q...
Active learning with efficient feature weighting methods for improving data q...Shunsuke Kozawa
 
【DL輪読会】Prompting Decision Transformer for Few-Shot Policy Generalization
【DL輪読会】Prompting Decision Transformer for Few-Shot Policy Generalization【DL輪読会】Prompting Decision Transformer for Few-Shot Policy Generalization
【DL輪読会】Prompting Decision Transformer for Few-Shot Policy GeneralizationDeep Learning JP
 
深層学習 - 画像認識のための深層学習 ①
深層学習 - 画像認識のための深層学習 ①深層学習 - 画像認識のための深層学習 ①
深層学習 - 画像認識のための深層学習 ①Shohei Miyashita
 
Active Learning 入門
Active Learning 入門Active Learning 入門
Active Learning 入門Shuyo Nakatani
 
修士論文発表:「非負値行列分解における漸近的Bayes汎化誤差」
修士論文発表:「非負値行列分解における漸近的Bayes汎化誤差」修士論文発表:「非負値行列分解における漸近的Bayes汎化誤差」
修士論文発表:「非負値行列分解における漸近的Bayes汎化誤差」Naoki Hayashi
 
深層学習の基礎と導入
深層学習の基礎と導入深層学習の基礎と導入
深層学習の基礎と導入Kazuki Motohashi
 
20170618論文読み会 伊藤
20170618論文読み会 伊藤20170618論文読み会 伊藤
20170618論文読み会 伊藤Tomoki Itou
 
Paper Introduction "RankCompete: Simultaneous ranking and clustering of info...
Paper Introduction "RankCompete:Simultaneous ranking and clustering of info...Paper Introduction "RankCompete:Simultaneous ranking and clustering of info...
Paper Introduction "RankCompete: Simultaneous ranking and clustering of info...Kotaro Yamazaki
 
[DL輪読会]逆強化学習とGANs
[DL輪読会]逆強化学習とGANs[DL輪読会]逆強化学習とGANs
[DL輪読会]逆強化学習とGANsDeep Learning JP
 

Similar a Neural Rejuvenation: Improving Deep Network Training by Enhancing Computational Resource Utilization (20)

Image net classification with Deep Convolutional Neural Networks
Image net classification with Deep Convolutional Neural NetworksImage net classification with Deep Convolutional Neural Networks
Image net classification with Deep Convolutional Neural Networks
 
DEEP LEARNING、トレーニング・インファレンスのGPUによる高速化
DEEP LEARNING、トレーニング・インファレンスのGPUによる高速化DEEP LEARNING、トレーニング・インファレンスのGPUによる高速化
DEEP LEARNING、トレーニング・インファレンスのGPUによる高速化
 
ae-3. ディープラーニングの基礎
ae-3. ディープラーニングの基礎ae-3. ディープラーニングの基礎
ae-3. ディープラーニングの基礎
 
LCCC2010:Learning on Cores, Clusters and Cloudsの解説
LCCC2010:Learning on Cores,  Clusters and Cloudsの解説LCCC2010:Learning on Cores,  Clusters and Cloudsの解説
LCCC2010:Learning on Cores, Clusters and Cloudsの解説
 
Computational Motor Control: Reinforcement Learning (JAIST summer course)
Computational Motor Control: Reinforcement Learning (JAIST summer course) Computational Motor Control: Reinforcement Learning (JAIST summer course)
Computational Motor Control: Reinforcement Learning (JAIST summer course)
 
【基調講演】『深層学習の原理の理解に向けた理論の試み』 今泉 允聡(東大)
【基調講演】『深層学習の原理の理解に向けた理論の試み』 今泉 允聡(東大)【基調講演】『深層学習の原理の理解に向けた理論の試み』 今泉 允聡(東大)
【基調講演】『深層学習の原理の理解に向けた理論の試み』 今泉 允聡(東大)
 
Deep learning実装の基礎と実践
Deep learning実装の基礎と実践Deep learning実装の基礎と実践
Deep learning実装の基礎と実践
 
ニューロンの出力値に基づくニューラルネットワークの小規模化
ニューロンの出力値に基づくニューラルネットワークの小規模化ニューロンの出力値に基づくニューラルネットワークの小規模化
ニューロンの出力値に基づくニューラルネットワークの小規模化
 
深層学習(岡本孝之 著) - Deep Learning chap.3_1
深層学習(岡本孝之 著) - Deep Learning chap.3_1深層学習(岡本孝之 著) - Deep Learning chap.3_1
深層学習(岡本孝之 著) - Deep Learning chap.3_1
 
Deep learningbook chap7
Deep learningbook chap7Deep learningbook chap7
Deep learningbook chap7
 
Top-K Off-Policy Correction for a REINFORCE Recommender System
Top-K Off-Policy Correction for a REINFORCE Recommender SystemTop-K Off-Policy Correction for a REINFORCE Recommender System
Top-K Off-Policy Correction for a REINFORCE Recommender System
 
Active learning with efficient feature weighting methods for improving data q...
Active learning with efficient feature weighting methods for improving data q...Active learning with efficient feature weighting methods for improving data q...
Active learning with efficient feature weighting methods for improving data q...
 
【DL輪読会】Prompting Decision Transformer for Few-Shot Policy Generalization
【DL輪読会】Prompting Decision Transformer for Few-Shot Policy Generalization【DL輪読会】Prompting Decision Transformer for Few-Shot Policy Generalization
【DL輪読会】Prompting Decision Transformer for Few-Shot Policy Generalization
 
深層学習 - 画像認識のための深層学習 ①
深層学習 - 画像認識のための深層学習 ①深層学習 - 画像認識のための深層学習 ①
深層学習 - 画像認識のための深層学習 ①
 
Active Learning 入門
Active Learning 入門Active Learning 入門
Active Learning 入門
 
修士論文発表:「非負値行列分解における漸近的Bayes汎化誤差」
修士論文発表:「非負値行列分解における漸近的Bayes汎化誤差」修士論文発表:「非負値行列分解における漸近的Bayes汎化誤差」
修士論文発表:「非負値行列分解における漸近的Bayes汎化誤差」
 
深層学習の基礎と導入
深層学習の基礎と導入深層学習の基礎と導入
深層学習の基礎と導入
 
20170618論文読み会 伊藤
20170618論文読み会 伊藤20170618論文読み会 伊藤
20170618論文読み会 伊藤
 
Paper Introduction "RankCompete: Simultaneous ranking and clustering of info...
Paper Introduction "RankCompete:Simultaneous ranking and clustering of info...Paper Introduction "RankCompete:Simultaneous ranking and clustering of info...
Paper Introduction "RankCompete: Simultaneous ranking and clustering of info...
 
[DL輪読会]逆強化学習とGANs
[DL輪読会]逆強化学習とGANs[DL輪読会]逆強化学習とGANs
[DL輪読会]逆強化学習とGANs
 

Último

Utilizing Ballerina for Cloud Native Integrations
Utilizing Ballerina for Cloud Native IntegrationsUtilizing Ballerina for Cloud Native Integrations
Utilizing Ballerina for Cloud Native IntegrationsWSO2
 
論文紹介: The Surprising Effectiveness of PPO in Cooperative Multi-Agent Games
論文紹介: The Surprising Effectiveness of PPO in Cooperative Multi-Agent Games論文紹介: The Surprising Effectiveness of PPO in Cooperative Multi-Agent Games
論文紹介: The Surprising Effectiveness of PPO in Cooperative Multi-Agent Gamesatsushi061452
 
Amazon SES を勉強してみる その32024/04/26の勉強会で発表されたものです。
Amazon SES を勉強してみる その32024/04/26の勉強会で発表されたものです。Amazon SES を勉強してみる その32024/04/26の勉強会で発表されたものです。
Amazon SES を勉強してみる その32024/04/26の勉強会で発表されたものです。iPride Co., Ltd.
 
論文紹介:Video-GroundingDINO: Towards Open-Vocabulary Spatio-Temporal Video Groun...
論文紹介:Video-GroundingDINO: Towards Open-Vocabulary Spatio-Temporal Video Groun...論文紹介:Video-GroundingDINO: Towards Open-Vocabulary Spatio-Temporal Video Groun...
論文紹介:Video-GroundingDINO: Towards Open-Vocabulary Spatio-Temporal Video Groun...Toru Tamaki
 
論文紹介:Selective Structured State-Spaces for Long-Form Video Understanding
論文紹介:Selective Structured State-Spaces for Long-Form Video Understanding論文紹介:Selective Structured State-Spaces for Long-Form Video Understanding
論文紹介:Selective Structured State-Spaces for Long-Form Video UnderstandingToru Tamaki
 
Amazon SES を勉強してみる その22024/04/26の勉強会で発表されたものです。
Amazon SES を勉強してみる その22024/04/26の勉強会で発表されたものです。Amazon SES を勉強してみる その22024/04/26の勉強会で発表されたものです。
Amazon SES を勉強してみる その22024/04/26の勉強会で発表されたものです。iPride Co., Ltd.
 
知識ゼロの営業マンでもできた!超速で初心者を脱する、悪魔的学習ステップ3選.pptx
知識ゼロの営業マンでもできた!超速で初心者を脱する、悪魔的学習ステップ3選.pptx知識ゼロの営業マンでもできた!超速で初心者を脱する、悪魔的学習ステップ3選.pptx
知識ゼロの営業マンでもできた!超速で初心者を脱する、悪魔的学習ステップ3選.pptxsn679259
 
LoRaWANスマート距離検出センサー DS20L カタログ LiDARデバイス
LoRaWANスマート距離検出センサー  DS20L  カタログ  LiDARデバイスLoRaWANスマート距離検出センサー  DS20L  カタログ  LiDARデバイス
LoRaWANスマート距離検出センサー DS20L カタログ LiDARデバイスCRI Japan, Inc.
 
新人研修 後半 2024/04/26の勉強会で発表されたものです。
新人研修 後半        2024/04/26の勉強会で発表されたものです。新人研修 後半        2024/04/26の勉強会で発表されたものです。
新人研修 後半 2024/04/26の勉強会で発表されたものです。iPride Co., Ltd.
 
LoRaWAN スマート距離検出デバイスDS20L日本語マニュアル
LoRaWAN スマート距離検出デバイスDS20L日本語マニュアルLoRaWAN スマート距離検出デバイスDS20L日本語マニュアル
LoRaWAN スマート距離検出デバイスDS20L日本語マニュアルCRI Japan, Inc.
 

Último (10)

Utilizing Ballerina for Cloud Native Integrations
Utilizing Ballerina for Cloud Native IntegrationsUtilizing Ballerina for Cloud Native Integrations
Utilizing Ballerina for Cloud Native Integrations
 
論文紹介: The Surprising Effectiveness of PPO in Cooperative Multi-Agent Games
論文紹介: The Surprising Effectiveness of PPO in Cooperative Multi-Agent Games論文紹介: The Surprising Effectiveness of PPO in Cooperative Multi-Agent Games
論文紹介: The Surprising Effectiveness of PPO in Cooperative Multi-Agent Games
 
Amazon SES を勉強してみる その32024/04/26の勉強会で発表されたものです。
Amazon SES を勉強してみる その32024/04/26の勉強会で発表されたものです。Amazon SES を勉強してみる その32024/04/26の勉強会で発表されたものです。
Amazon SES を勉強してみる その32024/04/26の勉強会で発表されたものです。
 
論文紹介:Video-GroundingDINO: Towards Open-Vocabulary Spatio-Temporal Video Groun...
論文紹介:Video-GroundingDINO: Towards Open-Vocabulary Spatio-Temporal Video Groun...論文紹介:Video-GroundingDINO: Towards Open-Vocabulary Spatio-Temporal Video Groun...
論文紹介:Video-GroundingDINO: Towards Open-Vocabulary Spatio-Temporal Video Groun...
 
論文紹介:Selective Structured State-Spaces for Long-Form Video Understanding
論文紹介:Selective Structured State-Spaces for Long-Form Video Understanding論文紹介:Selective Structured State-Spaces for Long-Form Video Understanding
論文紹介:Selective Structured State-Spaces for Long-Form Video Understanding
 
Amazon SES を勉強してみる その22024/04/26の勉強会で発表されたものです。
Amazon SES を勉強してみる その22024/04/26の勉強会で発表されたものです。Amazon SES を勉強してみる その22024/04/26の勉強会で発表されたものです。
Amazon SES を勉強してみる その22024/04/26の勉強会で発表されたものです。
 
知識ゼロの営業マンでもできた!超速で初心者を脱する、悪魔的学習ステップ3選.pptx
知識ゼロの営業マンでもできた!超速で初心者を脱する、悪魔的学習ステップ3選.pptx知識ゼロの営業マンでもできた!超速で初心者を脱する、悪魔的学習ステップ3選.pptx
知識ゼロの営業マンでもできた!超速で初心者を脱する、悪魔的学習ステップ3選.pptx
 
LoRaWANスマート距離検出センサー DS20L カタログ LiDARデバイス
LoRaWANスマート距離検出センサー  DS20L  カタログ  LiDARデバイスLoRaWANスマート距離検出センサー  DS20L  カタログ  LiDARデバイス
LoRaWANスマート距離検出センサー DS20L カタログ LiDARデバイス
 
新人研修 後半 2024/04/26の勉強会で発表されたものです。
新人研修 後半        2024/04/26の勉強会で発表されたものです。新人研修 後半        2024/04/26の勉強会で発表されたものです。
新人研修 後半 2024/04/26の勉強会で発表されたものです。
 
LoRaWAN スマート距離検出デバイスDS20L日本語マニュアル
LoRaWAN スマート距離検出デバイスDS20L日本語マニュアルLoRaWAN スマート距離検出デバイスDS20L日本語マニュアル
LoRaWAN スマート距離検出デバイスDS20L日本語マニュアル
 

Neural Rejuvenation: Improving Deep Network Training by Enhancing Computational Resource Utilization

  • 1. Neural Rejuvenation: Improving Deep Network Training by Enhancing Computational Resource Utilization 第53回 コンピュータビジョン勉強会@関東 2019/6/30 紹介者:進矢陽介 ※本発表は個人として行うものであり 所属組織を代表するものではありません
  • 2. はじめに • DNNはリソースを十分活用できていない • Neural Rejuvenationは、DNNのリソース利用率を向上させる、 パラメータ・アーキテクチャの最適化手法 • 宝くじ券仮説のアナロジーで言うと、 当選券は残して、ハズレ券だけ払い戻してもらい、 そのお金で宝くじ券を買い足すことで、 リソース利用率を向上させる • 現実の操作が分かるよう、 pruningの関連研究を先に紹介します
  • 4. LWC (Learning both Weights and Connections) [Song Han+, NIPS2015] • DNNは無駄にでかいので小さくしたい • 絶対値が小さい重み(シナプス)をpruning • あるニューロンの 入力シナプス全て or 出力シナプス全て が 0 なら そのニューロンもpruning可能 ・pruning後の構造が不規則 - 専用のハードウェア・ライブラリが無いと効果が薄い - conv層の削減に向かない
  • 5. Pruning Filters for Efficient ConvNets [Hao Li+, ICLR2017] ・pruningに対する各層のsensitivityを分析し、 pruning比率を決める必要がある [Huizi Mao+, CVPRW2017] • フィルタのL1ノルム(フィルタ内の重みの絶対値の総和)σ ℱ𝑖,𝑗 が小さいフィルタをpruning 𝑛𝑖 : 入力特徴マップチャンネル数 𝑛𝑖+1 : 出力特徴マップチャンネル数(=フィルタ数) フィルタ(kernel matrixの青いカーネル4枚)を 削れれば出力特徴マップも削れる pruningの粒度(の一部)
  • 6. Network Slimming [Zhuang Liu+, ICCV2017] ・特定のリソースを狙って小さくできない ・小さくする方向だけ - リソースが不足している部分を大きくできない - 精度向上が主目的ではない • Batch Normalization の scaling factor 𝛾 が小さいチャンネルをpruning • L1正則化で 𝛾 がスパースになるよう仕向ける 𝛾 罰則項
  • 7. MorphNet FLOP/Size regularizer 誤ったら許さない というお気持ち [Ariel Gordon+, CVPR2018] FLOPs(演算回数)増やすんじゃねぇぞ というお気持ちを追加すると・・・ パラメータ数増やすんじゃねぇぞ というお気持ちを追加すると・・・ • 何を小さくしたいかに応じて罰則項を変更
  • 8. MorphNet shrink-and-expand(収縮拡張法) 収縮 Network Slimming 拡張 width multiplier 図は [Ariel Gordon+, CVPR2018] を元に作成 ・チャンネル数を決定したネットワークをスクラッチで学習し直す必要あり - 学習の効率が悪い - 拡張時にパラメータをどう引き継ぐべきか不明 • 収縮・拡張によりチャンネル数を自動決定
  • 9. DSD: Dense-Sparse-Dense Training [Song Han+, ICLR2017] ・ガチャっぽくない ・ランダム性を活用したキャパシティ増加を行っていない • 一度pruningした重みを 0 初期化で復活させる
  • 10. RandomOut [Joseph Paul Cohen+, ICLRW2016] • 重要でないフィルタをランダム初期化し直し、訓練継続 探索するフィルタを増やし、ネットワークサイズを大きくすることなく精度を向上させる
  • 11. MorphNet + RandomOut 収縮 Network Slimming 拡張 width multiplier 図は [Ariel Gordon+, CVPR2018] を元に作成 これが Neural Rejuvenation の肝 • MorphNetの拡張部分の重みにランダム初期化を使用し、訓練を継続
  • 13. 書誌情報 Neural Rejuvenation: Improving Deep Network Training by Enhancing Computational Resource Utilization • 著者: Siyuan Qiao, Zhe Lin, Jianming Zhang, Alan L. Yuille • 論文: http://openaccess.thecvf.com/content_CVPR_2019/papers/Qiao_Neural_Rejuvenation_Improving_Deep_Network_ Training_by_Enhancing_Computational_Resource_CVPR_2019_paper.pdf (arXiv v1から微修正あり) https://arxiv.org/abs/1812.00481 • コード: https://github.com/joe-siyuan-qiao/NeuralRejuvenation-CVPR19 • オーラル発表動画: https://www.youtube.com/watch?v=KHEknuuCz0E&t=1862s
  • 14. 概要 • 多くのDNNは over-parameterize されており、リソースを十分活用できていない • 訓練時間・評価時間が無駄 • モデルのポテンシャルが制限されている • 新最適化手法 Neural Rejuvenation でリソース利用率を向上させる (1) リソース利用率監視 死亡ニューロン(無駄なニューロン)を検出し、リソース利用率を計算 (2) 死亡ニューロン若返り 再配置・再初期化で死亡ニューロンを若返らせる (3) 生存ニューロン・若返りニューロン混在時の訓練スキーム • 標準的なoptimizerから置き換えるだけで、 リソース使用量(パラメータ数や演算回数)を維持しながら、 NNの性能を大幅に向上可能
  • 15. 対象とする最適化問題 • アーキテクチャ , パラメータ の両方を最適化 • リソース利用率 𝑟 = 𝑐( ) ( ): 出力への影響が小さい死亡ニューロンを除去した場合の計算コスト アーキテクチャ を使用するコスト (例:パラメータ数、FLOPs) ℒ : 損失関数 : アーキテクチャ , パラメータ のNN 許容するリソース使用量の最大値
  • 18. アルゴリズム 備考:Step 5のneural rejuvenation flagは所定の周期(例:1 epoch)でonになる。 つまり、ほとんどのiterationでは通常のSGDと変わらない。 ← SGD リソース利用率を監視 リソース利用率が閾値より小さいと 死亡ニューロンを若返らせる (再初期化・再配置)
  • 20. (1) リソース利用率監視 生死判定、スパース化 • 基本的にNetwork Slimming同様 • 全conv層後にBN層(or 学習可のアフィン変換層)を仮定 • BNの 𝛾 で生死(利用されているか余分か)を判定 • 𝛾 < 0.01 × 𝛾max なら死亡ニューロン(死亡チャンネル) 𝛾max: 同じ層の 𝛾 の最大値 実験的に除去しても影響小 • 学習時にL1正則化を加えスパース化しておく 𝜆: 罰則係数(正則化係数) 𝒯: アーキテクチャ内の 𝛾 の集合 Batch Normalization
  • 21. (1) リソース利用率監視 適応的罰則係数 適切な 𝜆 の選択が重要 • 𝜆 = 0 : 非スパース。通常の訓練 • 𝜆大 : スパース。大きすぎると元のロスからかけ離れる → 利用率に合わせて動的に決定 利用率の減少が遅ければ、罰則係数を上げる 利点 (1) タスク・アーキテクチャに合わせて自動で最適化 人手で試行錯誤して選ぶ必要が無い (Network SlimmingやMorphNetの欠点の1つを解消) (2) Step 8突入にかかるiterationに上限 λが十分大きくなれば、利用率を最低 𝛥𝑟 ずつ削れる if (𝛥𝑡 iteration前の利用率) − (現在の利用率) < 𝛥𝑟 : 𝜆 += Δ𝜆 𝛥𝑡, 𝛥𝑟, Δ𝜆 はハイパラ
  • 22. • 節約したリソースの再配置 MorphNet同様、各層の出力チャンネル数を 𝛼 倍( 𝑤𝑖 ′′ = 𝛼 ⋅ 𝑤𝑖 ′ ) あまり削れなかった層(生存ニューロンが多い層)はもっとパラメータが必要、という仮定 • パラメータ再初期化 • Neural rescaling L1正則化で 𝒮 の 𝛾 も小さくなり、勾配法での訓練に害 𝛾 の絶対値を初期値レベルに戻し、その分パラメータを小さくする (2) 死亡ニューロン若返り ・𝒮 (生存ニューロン)と ℛ (若返りニューロン)が混在 ・再初期化で 𝒮 の出力が変わらないようにする 𝑊𝒮→𝒮: そのまま 𝑊ℛ→ℛ: ランダム初期化 𝑊𝒮→ℛ: 0 𝑊ℛ→𝒮: 0 𝒮 𝒮 ℛ ℛ “Twemoji” by Twitter, Inc and other contributors /CC-BY 4.0
  • 23. (3) 𝒮, ℛ 混在時の訓練 キャパ十分の場合(例:CIFAR) • 𝒮 だけでデータによくフィッティングできるなら、 ℛ が即死したり冗長な特徴を出力したりするおそれ • 𝒮, ℛ 間の結合を除去し、ℛ が別の特徴を学習するよう仕向ける 𝒮 𝒮 ℛ ℛ
  • 24. (3) 𝒮, ℛ 混在時の訓練 キャパ不足の場合(例:ImageNet) • SORTをベースとしたcross attentionでキャパシティ増加 パラメータ数は増えず、演算回数もあまり増えない • attentionの先行研究との差異 ・チャンネルの1グループで他のチャンネル用のアテンションを生成 ・キャパシティ増加のために使用 SORT: Second-Order Response Transform [Yan Wang+, ICCV2017] 二次の項を追加し非線形性・表現力を向上 ⊙ : 要素積 𝜎 : シグモイド関数
  • 26. パラメータ利用率の推移 条件 • ImageNet • 実験単純化のためrejuvenationは1回のみ • 10~20エポックで利用率0.5になるため、訓練時間増加は20%以下 小さなモデルより大きなモデルの方が 死亡ニューロンを見つけるのが簡単 大きなモデルほどリソース浪費リスク大 ResNet-101のパラメータを半分節約するには 10エポックで十分
  • 27. Ablation Study ベースライン 条件 • パラメータ数維持 • ImageNet Error • simplified VGG-19 (ImageNetのフィッティングにキャパ不十分) • 画像解像度: 128x128 • 𝑇𝑟 = 0.25 ベースライン+cross attention cross-connection無し cross-connection neural rescaling cross attention 再配置無し NR-CA-BR + DSD 提案手法はいいぞ • cross-connectionあった方が良い • cross attentionだと更に良い • neural rescalingした方が良い • 重みを引き継いだ方が良い • 再配置した方が良い • DSDを併用*1すると更に良い NRで見つかったアーキテクチャのスクラッチ学習 提案手法全部のせ (cross attention + neural rescaling) *1: 査読者に言われて追加したのだろうが、実験よりRelated Workの方を修正して欲しい
  • 28. ImageNetでの精度向上 リソースを無駄にしやすい大きなモデルほどNeural Rejuvenationの効果大 パラメータ数制約 FLOPs制約 NR Params, NR FLOPsのうち高精度な方の Top-1 errorのベースラインからの相対変化率 備考:DenseNet-121のNR Paramsの結果はあまり当てにならない Top1 error: 24.50/25.32 – 1 = -3.24% Params: 8.22/7.92-1 = 3.79% FLOPs: 3.13/2.83-1 = 10.60%
  • 29. MorphNetとの比較 MorphNet ベースライン MorphNet NR ベースライン NR MorphNetに圧勝 条件 • FLOPs維持 • ImageNet Top-1 error • 画像解像度: 128x128 備考: ベースラインが異なるため分かりにくいが、ベースラインの時点で勝っているところからMorphNet以上のエラー低減を実現している。 MorphNetの訓練方法が闇( http://openaccess.thecvf.com/content_cvpr_2018/Supplemental/2508-supp.pdf )なので、 ベースラインを揃えろとも言いづらい。
  • 31. まとめ Neural Rejuvenation: 訓練中に死亡ニューロンを再配置・再初期化し、 DNNのリソース利用率を向上させる、 アーキテクチャ・パラメータの最適化手法 所感 • pruning、NAS、再初期化の利点をうまく組み合わせている • 実用性が更に上がると良い • 適応的罰則係数用にハイパラが実質2つ増加 公開コード中のCIFARの設定では罰則係数決め打ち • conv層直後のBatch Normalization層を仮定 ネットワーク設計に制約