e4exp / paper_manager_abstract

0 stars 0 forks source link

Pruning neural networks without any data by iteratively conserving synaptic flow #642

Open e4exp opened 2 years ago

e4exp commented 2 years ago

深層ニューラルネットワークのパラメータを刈り込むことは、学習時とテスト時の両方で、時間、メモリ、エネルギーを節約できる可能性があるため、大きな関心を集めています。 最近の研究では、学習と刈り込みのサイクルを繰り返すことで、宝くじの当選券の存在や、初期化時に学習可能な疎なサブネットワークの存在が確認されています。 これは、初期化時に、トレーニングをせずに、あるいはデータを見ずに、非常に疎なトレーニング可能なサブネットワークを識別することができるか、という基礎的な問題を提起している。 我々は、理論に基づいたアルゴリズム設計により、この問題に対する肯定的な答えを提供します。

まず、既存の勾配ベースの刈り込みアルゴリズムが、初期化時にレイヤーコラプス(レイヤー全体の刈り込みが早まり、ネットワークが学習不能になること)に悩まされる理由を説明する保存則を数学的に定式化し、実験的に検証する。 また、この理論は、層崩壊を完全に回避する方法を明らかにし、新しい刈り込みアルゴリズムIterative Synaptic Flow Pruning (SynFlow)の動機付けとなっている。 このアルゴリズムは、初期化時にスパース性制約のもとでネットワークを通過するシナプス強度の総フローを保存するものと解釈できる。 注目すべきは、このアルゴリズムは学習データを参照せず、様々なモデル(VGGとResNet)、データセット(CIFAR-10/100とTiny ImageNet)、スパース性制約の範囲で、初期化時に既存の最先端の刈り込みアルゴリズムと一貫して競合または凌駕していることである(最大99.99%)。 このように、我々のデータに依存しない刈り込みアルゴリズムは、初期化時に、どのシナプスが重要であるかを定量化するためにデータを使用しなければならないという既存のパラダイムに挑戦するものである。

https://github.com/ganguli-lab/Synaptic-Flow

e4exp commented 2 years ago

1 はじめに

ネットワークの刈り込み,すなわちパラメータを除去してニューラルネットワークを圧縮することは,実用的な展開のためにも,人工的なニューラルネットワーク[8]や生物学的なニューラルネットワーク[9]の理論的な理解のためにも,重要なテーマとなっています. 従来,枝刈りアルゴリズムは,学習済みのモデルを圧縮することに重点を置いていた[1, 2, 3, 5, 6]. しかし,最近の研究[10, 11]では,学習と刈り込みのサイクルを繰り返すことにより(反復型マグニチュード・プルーニング),ランダムに初期化されたニューラルネットワークの中に,単独で学習した場合に元のネットワークのテスト精度に匹敵するような疎なサブネットワーク(ウィニング・チケット)が存在することが明らかにされています. さらに,これらのウィニングチケットサブネットワークの一部は,データセットやオプティマイザーを超えて一般化できることが示されています[12]. これらの結果は、初期化時に勝ち馬サブネットワークを特定することで、トレーニングをより効率的に行えることを示唆していますが、それを見つけるための効率的なアルゴリズムは提供されていません。 一般的に,トレーニングとプルーニングを繰り返してウィニングチケットを特定するには,元のネットワークを単に最初からトレーニングするよりも,かなり多くの計算コストが必要になります[10, 11]. このように、非常に疎な学習可能なサブネットワークを、初期化時に、一度も学習することなく、あるいは実際にデータを見ることなく、特定することができるのか、というのが基本的な未解決問題である。

この目標に向けて,我々は,初期化時の既存の枝刈りアルゴリズムの限界を調査することから始め[13, 14],これらの限界を回避するための簡単な戦略を決定し,最先端の結果を達成するデータに依存しない新しいアルゴリズムを提供する. 我々の主な貢献は

  1. 層崩壊とは、ネットワークを学習不能にする層全体の早すぎる刈り込みのことであり、刈り込みアルゴリズムは可能な限り層崩壊を避けるべきであるという公理「Maximal Critical Compression」を定式化する(第3節)。
  2. 勾配ベースのスコアの一般的なクラスであるシナプスサリエンシーが、ニューラルネットワークのすべての隠れユニットと層で保存されることを理論的および経験的に示す(Sec.
  3. これらの保存則は、大きな層のパラメータが小さな層のパラメータよりも低いスコアを受け取ることを意味し、シングルショット・プルーニングがなぜ最大の層を不均衡にプルーニングし、層崩壊を引き起こすのかを解明する(Sec.
  4. 反復的なマグニチュード・プルーニング[10]が層崩壊を回避するという仮説を立てた。これは、勾配降下法がマグニチュード・スコアに保存則を守るよう効果的に促し、反復と組み合わせることで、最大の層の相対的なスコアがプルーニング中に増加するためである(Sec. 5)。
  5. 刈り込みアルゴリズムが層崩壊を完全に回避し、かつ、反復的で正のシナプス saliency スコアを使用する場合、最大臨界圧縮を満たすことを証明する(Sec.6)。
  6. 最大臨界圧縮を満たすデータに依存しない新しいアルゴリズムIterative Synaptic Flow Pruning (SynFlow)を導入し(Sec.6)、このアルゴリズムがモデルとデータセットの異なる12の組み合わせで最先端の刈り込み性能を達成することを実証的に示す(Sec.7)。
e4exp commented 2 years ago

3 Layer-collapse: The key obstacle to pruning at initialization

大まかに言えば、初期化時のプルーニングアルゴリズムは、2つのステップで定義される。 最初のステップでは、ネットワークのパラメータを何らかの指標に基づいてスコアリングし、2番目のステップでは、スコアに応じてパラメータをマスクする(パラメータを削除するか保持するか)。 我々が検討しているプルーニング・アルゴリズムでは、スコアが最も小さいパラメータを単純に削除することで、常にパラメータをマスクする。 このランキング処理は、ネットワーク全体に適用することも、レイヤーごとに適用することもできます。 経験的には,グローバルマスキングの方がレイヤーマスキ ングよりもはるかに優れていることが示されている. これは,ハイパ ーパラメータの導入数が少なく,ネットワーク全体で柔軟な刈り込み率 が可能であることが一因である.

しかし,最近の研究[33, 14, 34]では,グローバルマスキングを用いた既存の刈り込みアルゴリズムに,重要な故障モードである「Layer-Collapse」が確認されています. Layer-collapseとは,ネットワーク上の他の場所に刈り込み可能なパラメータが残っているにもかかわらず,アルゴリズムが1つの重み層のすべてのパラメータを刈り込んでしまうことをいう. これにより、図1に示すように、ネットワークの達成可能な精度が急激に低下し、ネットワークが学習不能になることがわかります。 Layer-Collapseの現象を理解するために,この故障モードを研究した最近の論文[34]に触発されて,いくつかの有用な用語を定義する. ネットワークが与えられたとき,圧縮率(ρ)は,元のネットワークのパラメータ数を,プルーニング後に残ったパラメータ数で割ったものである. 例えば,圧縮率ρが103の場合,1000個のパラメータのうち1個だけがプルーニング後に残ることになる. 最大圧縮率(ρmax)は、ネットワークの圧縮率のうち、層崩壊を起こさない最大の値です。 例えば、L個のレイヤーとN個のパラメータを持つネットワークの場合、ρmax = N/Lとなり、レイヤーごとに1つのパラメータを除いてすべてのパラメータをプルーニングした場合の圧縮率となります。 臨界圧縮(ρcr)とは、あるアルゴリズムが層崩壊を起こさずに達成できる最大の圧縮率のことです。 特に、あるアルゴリズムの臨界圧縮率は、常にネットワークの最大圧縮率を上限とする:ρcr ≤ ρmax。 この不等式から、成功するプルーニング・アルゴリズムは以下の公理を満たすべきだと考えている。

公理。最大臨界圧縮。

あるネットワークに適用された枝刈りアルゴリズムの臨界圧縮は、常にそのネットワークの最大圧縮と等しくなければならない。

言い換えれば、この公理は、ネットワークを訓練可能な状態に保つことができる同じカーディナリティの別のセットが存在する場合、層崩壊を引き起こすようなパラメータのセットを、プルーニング・アルゴリズムは決してプルーニングしてはならないことを意味する。 我々の知る限り、グローバルマスキングを用いた既存のプルーニングアルゴリズムには、この単純な公理を満たすものはありません。 もちろん、どのような刈り込みアルゴリズムであっても、特化した層ごとの刈り込み率を導入することで、この公理を満たすように修正することは可能です。

しかし、グローバルマスキング[24]の利点を保持するために、我々は、建設的にこの特性を満たすアルゴリズム、反復シナプスフロー・プルーニング(SynFlow)を定式化する。 SynFlowはマグニチュード・プルーニングの自然な拡張であり、個々のシナプス強度そのものではなく、入力から出力へのシナプス強度の総フローを保存する。 我々は、SynFlowアルゴリズムが最大臨界圧縮を達成するだけでなく、既存の最先端のプルーニング・アルゴリズム(図1とSec.7に示すように)と一貫して一致するか、または凌駕することを、すべてデータを使わずに実証する。 本研究では、我々のアルゴリズムであるSynFlowを、ランダムスコアリングと重みの大きさに基づくスコアリングという2つの単純なベースラインと、Single-shot Network Pruning based on Connection Sensitivity (SNIP) [13]およびGradient Signal Preservation (GraSP) [14]という2つの最先端のシングルショット・プルーニング・アルゴリズムに対してベンチマークしました。 SNIP[13]は,学習損失の勾配に基づいて重みを採点することで,初期化時にニューラルネットワークを刈り込む先駆的なアルゴリズムです. GraSP [14]は、より新しいアルゴリズムで、初期化時に、ヘシアン勾配積に基づいて重みをつけることで、勾配流を保存することを目的としています。 SNIPとGraSPの両方は、[14]によって、学習を伴う他の最先端の刈り込みアルゴリズムに対して徹底的にベンチマークされ、競争力のある性能を示しています。

image

e4exp commented 2 years ago

image

4 シナプスサリエンシーの保存則

本節では、層崩壊が初期化時の効果的な刈り込みの重要な障害であることをさらに検証し、この失敗モードの原因を探っていく。 図2に示すように、圧縮率を上げると、既存のランダム、マグニチュード、グラディエントベースのプルーニングアルゴリズムは、層全体を早期にプルーニングしてしまい、ネットワークを学習できなくなる。 なぜ特定のスコアメトリクスがレイヤーの崩壊につながるのかを理解することは、プルーニングアルゴリズムの設計を改善するために不可欠である。 ランダム・プルーニングでは、図2の水平線で示すように、ネットワークのすべての層が同じ量だけプルーニングされます。 ランダム・プルーニングでは、最小の層、つまりパラメータが最も少ない層が最初に完全に刈り込まれます。 逆に,マグニチュード・プルーニングでは,異なる速度でレイヤーが刈り取られ,図2の階段状のパターンで示されます。 マグニチュード・プルーニングは,初期化の分散に基づいてパラメータを効果的にプルーニングします. Xavier[37]やKaiming[38]などの一般的なネットワーク初期化では,レイヤーの幅に反比例します. マグニチュード・プルーニングでは,最も幅の広い層,すなわち,入力または出力の寸法が最も大きい層が最初に完全にプルーニングされることになる.勾配ベースのプルーニングアルゴリズムであるSNIP[13]およびGraSP[14]も、異なる割合でレイヤーをプルーニングしますが、この優先順位の根本的な原因はあまり明らかではありません。 特に,SNIPとGraSPは,訓練可能なパラメータを最も多く含む最大の層を積極的に刈り取っていることが,図2の鋭いピークによって明らかになっています. この観察結果に基づいて、我々は、レイヤー内で平均化された勾配ベースのスコアは、レイヤーのサイズに反比例するという仮説を立てました。 この仮説を検証するために、フローネットワークに基づいた理論的枠組みを構築した。 まず、勾配ベースのスコアの一般的なクラスを定義し、これらのスコアの保存則を証明し、この法則を用いて、層の大きさと層の平均スコアの間に反比例があるという仮説が正確に成立することを証明する。 勾配ベースのスコアの一般的なクラス。シナプスの顕著性は、ハダマード積として表現できるスコアメトリクスのクラスです。

image

ここで、Rはθでパラメータ化されたフィードフォワードネットワークの出力yのスカラー損失関数である。 Rを学習損失Lとすると、結果として得られるシナプスサレンシーメトリックは、最初のネットワーク刈り込みアルゴリズムの1つであるSkeletonization[1]で用いられたスコアメトリックである- ∂L /∂θ ○ θと同等(modulo sign)である。 また、得られたメトリックは、SNIP[13]で用いられているスコアである| ∂L / ∂θ ○ θ|、GraSPで用いられているスコアである- (H ∂L/∂θ) ○ θ、pruning after trainingアルゴリズムであるTaylor-FO[28]で用いられているスコアである(∂L / ∂θ ○ θ)^2と密接に関連している。 R = < ∂L/∂y , y>とすると、結果として得られるシナプス・サレンシーのメトリックは、Optimal Brain Damage [2]で用いられるスコアであるdiag(H)θ ○ θと密接な関係がある。 この一般的なスコアメトリクスのクラスは、包括的ではないが、枝刈りに使われる勾配ベースのスコアの重要な特性を明らかにしている。

シナプスの saliency の保存。

全てのシナプス顕著性メトリクスは2つの驚くべき保存則を尊重しており、それは付録9で証明されているが、それはどのような初期化やトレーニングのステップでも成立する。

定理1. シナプスのsaliencyのニューロン単位の保存。

連続した均質な活性化関数φ(x)=φ'(x)xを持つフィードフォワード・ニューラル・ネットワークの場合(例えば ReLU, Leaky ReLU, linear)の場合、隠れニューロンへの入力パラメータ(バイアスを含む)に対するシナプスサリエンシーの総和(S ^in = < ∂R / ∂θ^in , θ^in>)は、隠れニューロンからの出力パラメータに対するシナプスサリエンシーの総和(S^out = < ∂R/ ∂θ^out , θ^out>)と等しい。

Theorem 2. シナプスサリエンシーのネットワーク上の保存。

同種の活性化関数を持つフィードフォワード・ニューラル・ネットワークの入力ニューロンxと出力ニューロンyを正確に3分割する任意のパラメータセットにおけるシナプスサリエンシーの合計は、< ∂R/∂x , x> = < ∂R / ∂y , y>に等しい。

例えば、バイアスを持つ単純なフィードフォワードネットワークを考えると、これらの保存則は次のような自明でない関係を意味する。 < ∂R / ∂W^[l] , W^[l]> + sum^L_{i=l} < ∂R / ∂b^[i] , b^[i] > = < ∂R/∂y, y>。 同様の保存特性は、ネットワークの複雑さ[39]、暗黙の正則化[40]、ネットワークの解釈可能性[41, 42]の文献でも指摘されており、プルーニングへの応用の可能性を強調しているものもある[9, 43]。 これまでの文献では、入力ピクセルへの帰属に焦点を当てていたり、バイアスパラメータを無視していたり、レイヤーレベルの法則のみを考慮していたが、我々は、より一般的で、ネットワーク内のバイアスを含むあらゆるパラメータに適用可能なニューロン単位の保存則を定式化した。 驚くべきことに、シナプスサリエンシーのこれらの保存則は、図3で視覚的に示されているように、最新のニューラルネットワークアーキテクチャと多種多様なニューラルネットワーク層(例えば、高密度、畳み込み、プーリング、残差)に適用される。 付録10では、バッチ正規化層の直前のパラメータに対するこれらの保存則の具体的な設定について説明します。

保存則とシングルショットの刈り込みは層崩壊を引き起こす。

シナプス強調表示の保存則は、勾配ベースの刈り込み法の層崩壊の根本原因として、層のサイズと平均層スコアの間の反比例という我々の初期の仮説を検証するための理論的なツールを提供してくれる。 単純な完全連結型のニューラルネットワークのレイヤーのパラメータセットを考えてみましょう。 このセットは、入力ニューロンと出力ニューロンを正確に分離します。したがって、シナプス性の保存(定理2)により、このセットの合計スコアはすべての層で一定であり、平均は層のサイズに反比例することを意味する。 図4に示すように、モデルの各層の合計スコアを計算することで、既存の刈り込み手法のスケールでこの関係を経験的に評価することができる。 この逆の関係は、シナプスの saliency については正確であるが、SNIP や GraSP で使われているスコアのように、他の密接に関連する勾配ベースのスコアもこの関係を尊重している。 これは、ある圧縮率において、勾配ベースの刈り込み手法は、最大のレイヤーを不均衡に刈り込むという経験的な観察を検証するものである。 このように、圧縮率が十分に大きく、プルーニングスコアが一度しか評価されない場合、勾配ベースのプルーニング手法は、最大のレイヤーを完全にプルーニングしてしまい、レイヤーの崩壊を招くことになる。

image

e4exp commented 2 years ago

5 Magnitude pruning avoids layer-collapse with conservation and iteration

初期化時のシングルショット・プルーニング法におけるレイヤーコラプスの原因を実証・調査した後、この問題を完全に回避できると思われる反復プルーニング法を調査します。 Iterative Magnitude Pruning (IMP)は、最近提案された枝刈りアルゴリズムで、初期化(宝くじの当選)時に極めて疎な訓練可能なニューラルネットワークを見つけることに成功していることが証明されています[10, 11, 12, 44, 45, 46, 47]。 このアルゴリズムは,3つの単純なステップを踏む. 第1にネットワークをトレーニングし、第2に最小の大きさのパラメータをプルーニングし、第3にプルーニングされていないパラメータを初期化にリセットし、希望の圧縮率になるまで繰り返す。 IMPはシンプルで強力ですが、ネットワークを何度もトレーニングする必要があるため実用的ではなく、本質的にはスパースな初期化を構築するという目的を失ってしまいます。 しかし、IMP は、他の初期化方法が陥りやすい、壊滅的な層崩壊に悩まされることはない。 したがって、IMPがどのようにレイヤーコラプスを回避するかを理解することで、初期化時のプルーニングをどのように改善するかの光明となるかもしれない。 以前にも指摘したように [10, 11]、IMP を安定させるためには反復が不可欠である。 実際、十分な刈り込みの反復がなければ、IMP は層崩壊に悩まされることになり、図 5a の暗い曲線の急激な精度低下にそのことは明らかである。 しかし、刈り込みの反復回数だけでは、IMP が層崩壊を回避することに成功したことを説明できない。

もし、IMPが各プルーニングサイクルの間にネットワークをトレーニングしなかったら、プルーニングの反復回数に関わらず、シングルショットのマグニチュードプルーニングと同等になってしまうことに注意してほしい。 したがって、トレーニング中にパラメータの大きさに何か非常に重要なことが起こる必要があり、それが十分な刈り込み反復と相まって、IMPが層崩壊を回避することができる。 我々は、勾配降下法によるトレーニングが、スコアが近似的な層ごとの保存則を観察することを効果的に促し、それが十分なプルーニングの反復と相まって、IMPが層崩壊を回避することを可能にするという仮説を立てた。

勾配降下法は保存を促す。

学習中の IMP アルゴリズムのダイナミクスをより良く理解するために、微分可能なス コア S(θi) = 1 / 2 θ^2_i を、アルゴリズム的にマグニチュードスコアと同等と考える。 これらのスコアを、無限小のステップサイズを用いた損失関数L上の勾配降下(すなわち、グラジエントフロー)によるトレーニングを通して考える。 この設定では、パラメータの時間微分はdθ/dt = - ∂L/∂θ と等価であり、従ってスコアの時間微分はd /dt 1/2 θ^2_i = dθi / dt ○ θi = - ∂L / ∂θi ○ θi となる。 驚くべきことに、これはシナプスサリエンシーの一形態であり、したがって、Sec.4のニューロン単位の保存則と層単位の保存則が適用される。 特に、これは、単純な完全連結ネットワークの任意の2つの層lとkに対して、d /dt ||W^[l] ||^2_F = d / dt ||W^[k] ||^2_Fを意味する。 この不変性は、暗黙の正則化として[40]で注目され、訓練された多層モデルが層ごとに似たような大きさになるという経験的な現象を説明するために使用されています。 プルーニングの文脈では、この現象は、十分に小さい学習率での勾配降下法による学習が、図5bに示すように、二乗された大きさのスコアが層ごとに近似的に保存されるように収束することを意味します。

保全と反復的刈り込みにより、層崩壊を回避することができる。

4節で説明したように、保存だけでは、大きな層のパラメータが小さな層のパラメータよりも低いスコアで割り当てられるため、層潰れを起こしてしまう。 しかし、保存と反復的な刈り込みを組み合わせれば、最大の層が刈り込まれて小さくなると、その後の反復で、この層の残りのパラメータに高い相対的なスコアが割り当てられます。 十分な反復回数があれば、保存と反復を組み合わせることで、IMPが層崩壊を避けることができる自己バランス型の刈り込み戦略になります。 保存と反復の重要性に関するこの洞察は、厳密または近似的な保存特性を持つ他のアルゴリズムにも広く適用される。 実際、反復がSNIPの性能を向上させることを経験的に確認した研究もある[48, 49]。

image

e4exp commented 2 years ago

6 最大限の限界圧縮を満たすデータ不可知論的アルゴリズム

前節では、IMP がレイヤー崩壊を回避する能力の 2 つの重要な要素を特定した。

(i) 刈り込みスコアを層ごとに近似的に保存することと、 (ii) これらのスコアを反復的に再評価することである。

これらの特性により、IMPアルゴリズムは、高性能で非常に疎な、訓練可能なニューラルネットワークを識別することができるが、それを得るためには非実用的な量の計算が必要である。 そこで、IMPの成功の重要な側面を継承しつつ、より効率的なプルーニングアルゴリズムを構築することを目指している。 では、層崩壊を回避し、最大臨界圧縮を証明的に達成するプルーニングアルゴリズムに必要な要素とは何でしょうか? 付録9で以下の定理を証明する。

定理3.反復的、積極的、保守的なスコアリングはMaximal Critical Compressionを達成する。

グローバルマスキングを用いた枝刈りアルゴリズムが、層ごとの保存を尊重した正のスコアを割り当て、かつ、任意の反復で枝刈りされたパラメータの合計スコアである枝刈りサイズが、可能な限り、層全体の合計スコアであるカットサイズよりも厳密に小さい場合、そのアルゴリズムはMaximal Critical Compressionの公理を満たす。

繰り返されるシナプスフロー・プルーニング(SynFlow)アルゴリズム。

定理3は、最大臨界圧縮を証明的に達成する我々の新しい刈り込みアルゴリズム、SynFlowの設計の直接的な動機となっています。 第一に、反復的なスコア評価の必要性は、データのバッチ上でのバックプロパゲーションを含むアルゴリズムを阻止し、代わりに効率的なデータに依存しないスコアリング手順の開発を動機付けます。 2つ目は、正のシナプス検出スコアを生成する損失関数を構築するための正の保存性です。 これらの洞察を組み合わせて、新しい損失関数を導入する(ここで、1はすべての1のベクトルであり、|θ ^[l] |はl番目の層のパラメータの要素ごとの絶対値である)。

image

となり、シナプスフローと呼ばれる正のシナプスサレンシースコア(∂R_SF / ∂θ ○ theta)が得られます。 単純な完全連結ネットワーク(すなわち、f(x)=W^[N] .. . W^[1]x)の場合、パラメータw^[l]_ijに対するシナプス・フロー・スコアを次のように因数分解することができる。

image

この観点から、シナプスフロースコアはマグニチュードスコア(|w^[l]_{ij} |)を一般化したものであり、スコアはパラメータの層間相互作用を考慮して、各パラメータを流れるシナプス強度の積を考慮することを示している。 実際、このより一般化されたマグニチュードは、パスノルムとして文献で以前に議論されている[50]。 シナプスフロー損失(式(2))は、ネットワークのl1パスノルムであり、あるパラメータのシナプスフロースコアは、そのパラメータを通るノルムの部分である。 シナプスフロースコアは、以下の疑似コードにまとめた反復シナプスフロー・プルーニング(SynFlow)アルゴリズムで使用する。

image

ネットワークf(x; θ0)と指定された圧縮率ρがあれば、SynFlowアルゴリズムは、剪定反復数nという1つの追加ハイパーパラメータだけを必要とします。 付録12では、n = 100剪定反復による指数関数的な剪定スケジュール(ρ -k/n)が、大規模なネットワークであっても、計算上実行可能でありながら、回避可能な限り層崩壊を本質的に防ぐことを示しています(図1)。

SynFlowの計算コスト。

プルーニング・アルゴリズムの計算コストは、フォワード/バックワード・パスの回数(#iterations × #examples per iteration)で測定できます。 データに依存しないSynFlowでは常に100回の反復を行いますが、これはデータセットに関わらず100回のパスを行うことを意味します。 SNIPとGraSPはそれぞれ1回の反復を行いますが、反復ごとに10倍のクラス数を使用するため、CIFAR-100、Tiny-ImageNet、ImageNetではそれぞれ1000、2000、10,000回のパスを必要とします。

e4exp commented 2 years ago

7 実験

我々のアルゴリズムであるSynFlow(赤)の性能を、ベースラインであるランダム・プルーニングとマグニチュード・プルーニング、そして最先端のアルゴリズムであるSNIP[13]とGraSP[14]に対して、経験的にベンチマークした。 図6では、5つのアルゴリズムを、最新アーキテクチャ(VGG-11、VGG-16、ResNet-18、WideResNet-18)とデータセット(CIFAR-10、CIFAR-100、Tiny ImageNet)の12の異なる組み合わせで、圧縮率の指数関数的な掃引(α = [0, 0.25, ... , 3.75, 4]に対して10α)でテストしています。 実験の詳細とハイパーパラメータについては,付録13を参照してください.

一貫して、SynFlowは高圧縮領域(101.5 < ρ)で他のアルゴリズムよりも優れており、タイトなインターバルで示されるように、より安定しています。 SynFlowは、低圧縮領域(ρ < 101.5)においても非常に競争力があります。 SNIPとGraSPは、この領域でSynFlowを部分的に上回ることができますが、精度の急激な低下に見られるように、どちらの手法もlayer-collapseに苦しんでいます。

高価な反復剪定アルゴリズムとの比較。

定理3は、反復があらゆるプルーニング・アルゴリズムに必要な要素であることを述べており、反復型マグニチュード・プルーニングの成功や、SNIPの反復型バージョンに関する同時進行の研究を解明しています[48, 49]。 図7に示すように、反復は、SNIPが早期のレイヤー崩壊を回避するのに役立ちますが、乗算的な計算コストがかかります。 さらに、これらの反復バージョンのSNIPは、SynFlowが証明的に保証されている最大圧縮に到達するずっと前に、層崩壊に悩まされることになります。

アブレーション研究。

SynFlowアルゴリズムは、データを使用しなくても、SNIPやGraSPのような初期化時にデータに依存したプルーニング手法に匹敵し、時には凌駕することを実証しています。 この結果は、既存のアルゴリズムが初期化時にデータを使用する方法の有効性に疑問を投げかけ、データを使用して初期化時に刈り込みを行う将来のアルゴリズムが凌駕すべき具体的なアルゴリズムのベースラインを提供するものです。 最近のフォローアップ研究[51]では、低圧縮領域や大規模データセット(ImageNet)やモデル(ResNet-50)においても、SynFlowがSNIPやGraSPと競合するという我々の観察結果が確認されています。 また、本研究では、慎重なアブレーション研究を行い、SynFlowの理論的動機を裏付ける具体的な証拠と、アルゴリズムのさらなる改善のための洞察に満ちた見解を提供しています。 51]で発表されたこれらのアブレーション研究に関するより詳細な議論については、付録11を参照してください。

image

image