Slide 1

Slide 1 text

論⽂紹介 P. Chaudhari and S. Soatto, “The Effect of Gradient Noise on the Energy Landscape of Deep Networks,” Prepaper arXiv1511.06485v4, Nov. 2015. ⻫藤 翔汰 2016年9⽉20⽇ 1

Slide 2

Slide 2 text

◆ • 勾配にノイズを加えて学習を⾏う⼿法に 関連した論⽂であったため • 数式も多く,理論的な説明が多くされていそう であったため • 実験に⽤いたパラメータも詳しく記載されて おり,再現も⾏いやすそうであったため 2 この論⽂を選んだ理由

Slide 3

Slide 3 text

◆ • ⽬的関数の勾配情報を⽤いるネットワークの 学習アルゴリズムの解析を⾏う • この論⽂ではspin glassの理論を⽤いる • spin glassの理論は,組合わせ最適化や熱⼒学 の分野にて効率的なアルゴリズムを導いた • 深いネットワークを持つモデルに対して, 損失関数を球状spin glassのハミルトニアンと つなげる 3 Sec.1 Introduction

Slide 4

Slide 4 text

◆ • ノイズを加えることによる正則化を, 外部からの磁場として捉える • その考えを元にアニーリングスケジュールを 作り,実験した結果エラーの改善につながった 4 Sec.1 Introduction

Slide 5

Slide 5 text

◆ • ⾼いエネルギー障壁が存在する場合,SGDは 停⽌してしまう • この論⽂では,この問題を解決するために トポロジー平滑化を⽤いる • 勾配にノイズを加える⽅法は,平滑化されてい ない損失関数に対するアプリケーション 5 Sec.1.1 Related work

Slide 6

Slide 6 text

◆ • 1層あたりn個のユニットを持つp個の隠れ層 • ネットワークからの出⼒Xを,⼊⼒h,重みW, 活性化関数gを使って書き表すと • 式(1)に習って,途中の層からの出⼒も定式化 • この式に従うと,X=h0,h=hpと書ける 6 Sec.2.1 A model for deep networks

Slide 7

Slide 7 text

◆ • 分析を簡単にするために,次を仮定 o ⼊⼒hは,最⾼でもρである⾮ゼロの値 o d = n1/pとすると,重みの各要素Wij kは平均0のi.i.d の乱数値であり,次が成⽴する o Wij kのサポートする濃度はnの多項式オーダーであり, 重みの分布はゼロの近くに集中せず,ρ(d/2)pは定数 である 7 Sec.2.1 A model for deep networks

Slide 8

Slide 8 text

◆ • n個のスピンを持つp-spin glassについて, エネルギー関数は次で与えられる o は構成するスピン o は正規分布から⽣成される乱数 • エネルギー関数はハミルトニアンとも呼ばれる • Deep networkのspin glassのハミルトニアンは Lemma 1に従う 8 Sec.2.2 Deep networks as spin glasses

Slide 9

Slide 9 text

◆ • もし正解データ であるとき,損失関数 は から次の式で与えられる o はガウス分布から⽣成される乱数 o は定数 o 9 Sec.2.2 Deep networks as spin glasses Lemma 1

Slide 10

Slide 10 text

◆ • σ = [-N, N]n とすることで,ネットワークの 重みを表すことができる • つまり,σがネットワークを特徴づける パラメータ • また,スピンσは という制約がある 10 Sec.2.2 Deep networks as spin glasses

Slide 11

Slide 11 text

◆ • ノイズを加えた際のスピングラスのハミルトニ アンに対する影響を検証する • ノイズが⼤きい場合,ハミルトニアンのクリ ティカルポイント(極⼩点)の個数は減少 • ノイズが⼩さい場合,影響は⼩さいが極⼩点の 個数は⾮常に多い 11 Sec.3 Perturbations of the Hamiltonian

Slide 12

Slide 12 text

◆ • (-∞, u]の範囲における,極値の個数crt(u) o crt(∞) = crt(H)と表記 • 以後はXの期待値を,E Xと表記 12 Sec.3 Perturbations of the Hamiltonian

Slide 13

Slide 13 text

◆ • Theorem2は,GOEにおける固有値の密度に 関して,ハミルトニアンの極値の個数を特徴 づける 13 Sec.3.1 Scaling of critical points • 平均ゼロ,分散 のハミルトニアンに ついて,次の写像を⾏う ( ) • このとき,極値の個数の期待値は次の式で 与えられる Theorem 2

Slide 14

Slide 14 text

◆ 14 Sec.3.1 Scaling of critical points Theorem 2(続き) • ここで o はGOEの固有値の密度 • (4)式より,ノイズ⼊りのp-spin glassの ハミルトニアンを書くと • Theorem2より, :ノイズの分散 ノイズに相当 hi は正規分布から⽣成される乱数

Slide 15

Slide 15 text

◆ 15 Sec.3.1 Scaling of critical points • • p>2, nが⼤きいとき,極値の個数の期待値は 次の式で与えられる • B=0では,重要なノイズの影響を⽰す値vc と 対応する ( ) Theorem 3

Slide 16

Slide 16 text

◆ • Theorem3の1つ⽬のケースは,エネルギー関数 が全体で平滑化されていることを⽰す o なめらかな球⾯関数では,少なくとも1つの極⼤点と 極⼩点が存在 • もし, より⼤きいノイズを加えると, 厳密に1つの最⼩値が存在する • であるとき,極値の個数の期待値は Thorem2に従って指数関数的に増加 16 Sec.3.1 Scaling of critical points

Slide 17

Slide 17 text

◆ 17 Sec.3.1 Scaling of critical points • Sec.2.1のモデル(p>>2,nが⼤きい)とき, 極値の個数の期待値をTheorem3で与えられる 多項式領域にする条件は次式で与えられる Corollary 4 • (8)式とCorollary4より,Theorem3はB=-τ/n である必要がある • 次のLemma5は,τの役割をより明確にする

Slide 18

Slide 18 text

◆ 18 Sec.3.1 Scaling of critical points • B=-τ/nである場合, • τ>>1の場合は多項式領域 • τ→-∞(B<<1)の場合は指数領域 Lemma 5

Slide 19

Slide 19 text

◆ • v

Slide 20

Slide 20 text

◆ • Lemma5の多項式領域から指数領域へ滑らかに 変化するアニーリングスケジュールを構成 • ノイズはゼロに近づいていくため,局所解の 品質に影響はない • Lemma6より,アニーリング中でも局所解の値 は少ししか変化しない 20 Sec.3.3 Annealing scheme

Slide 21

Slide 21 text

◆ • 総エポック数N,現在のエポックをkとしたとき, τを次の式でアニーリングする o k=0のとき,v=Jp o k=Nのとき,v=0 • k<

Slide 22

Slide 22 text

◆ • 正則化の⼿法を⽤いたときのノイズの アニーリングスケジュールを計算 • ハイパーパラメータの設定から,ノイズの スケジュールを求めることができる 22 Sec.4 Regularization in deep networks

Slide 23

Slide 23 text

◆ • 重みにノイズを加える⽅法 • 更新式は次のように書ける o は平均ゼロ,分散 の正規分布に従う乱数 o はバックプロパゲーションによる勾配 o ηは学習率 • ハミルトニアンは(7)式と同じであり, アニーリングスケジュールなども同じ 23 Sec.4.1 Additive noise

Slide 24

Slide 24 text

◆ • 重みをL2正則化する⽅法 • 更新式は次のように書ける o αは定数 • ハミルトニアンは次式 24 Sec.4.2 Weight decay

Slide 25

Slide 25 text

◆ • 分散 の計算 o と置き換え o のとき とすれば,⼆⾏⽬が得られる • Theorem3より,Bを計算 25 Sec.4.2 Weight decay

Slide 26

Slide 26 text

◆ • B=0のときに対応するvc はTheorem3と同じ • 多項式領域となる条件は • Sec.3.3と同様にアニーリングスケジュールを 求めると次式を得る 26 Sec.4.2 Weight decay

Slide 27

Slide 27 text

◆ • 勾配にノイズを⼊れる動機は,局所解から脱出 できることを可能とするため • 今回の⼿法 o 学習が始まるときには外部からの磁場の⽅向に進む o 学習が進むと,外部磁場の⼤きさは⼩さくなり, SGDによるパフォーマンスが⽀配的になる 27 Sec.4.2 Weight decay

Slide 28

Slide 28 text

◆ • Nalisnickらが提案した⼿法 • 更新式は次式 o は要素の値がランダムな対⾓⾏列 o 対⾓要素の平均はゼロ,分散は定数αの⼆乗 • 得られるスケジューリングはWeight Decayと 同じ 28 Sec.4.3 Multiplicative noise

Slide 29

Slide 29 text

◆ • Sec.3.3で求めたスケジュールを⽤いて実験 • Fully-Connected NN,Convolution NN, Network in Networkで実験 29 Sec.5 Experiments

Slide 30

Slide 30 text

◆ • 3つの隠れ層を持つ全結合ネットワーク • ハミルトニアン o 学習率ηは0.1 o 停⽌条件は o 更新式は o 1層あたりのユニット数nは100 30 Sec.5.1 Spin glasses

Slide 31

Slide 31 text

◆ • ノイズの⼤きさを変えて,ハミルトニアンの 形状を可視化する o v=1/n (指数領域) → Fig2.(A) o v=(1+1/n)1/2 (多項式領域) → Fig.2.(B) o v=p (1つの最⼩値しかない領域) → Fig.2.(C) • 次元圧縮にはt-SNEアルゴリズムを使⽤ o 点同⼠の距離を確率分布で表現し,圧縮前後で情報 の損失が最⼩になるようにマッピング 31 Sec.5.1 Spin glasses

Slide 32

Slide 32 text

◆ • ⿊点がエネルギー障壁(局所解) • 障壁が⾮常に多く,⽅向によっては勾配が ⼩さい 32 Sec.5.1 Spin glasses

Slide 33

Slide 33 text

◆ • エネルギー障壁は減少 • ただし,鞍点となる部分が広がっている 33 Sec.5.1 Spin glasses

Slide 34

Slide 34 text

◆ • すべての点が同じ値である局所解 • 点が1つのクラスタに属している状態 34 Sec.5.1 Spin glasses

Slide 35

Slide 35 text

◆ • Sec4.2(Weight Decay)で求めた アニーリングスケジュールを⽤いて実験 • データセットはMNISTとCIFER-10 • 全結合ネットワークを使⽤ o 隠れ層は20個 o 1層あたりのユニット数はMNISTが64個, CIFER-10が128個 o 活性化関数はReLU o 最適化法はAdam o バッチサイズは1024 • 50epochの結果,10回分を平均してグラフ化 35 Sec.5.2 Fully-connected deep networks

Slide 36

Slide 36 text

◆ • ⻘線はノイズなし+L2正則化 • ⾚線はノイズあり+提案⼿法+L2正則化 • 提案⼿法を⽤いると学習速度が劇的に向上 36 Sec.5.2 Fully-connected deep networks

Slide 37

Slide 37 text

◆ • CIFAR-10でも学習速度が劇的に向上 • エラーも減少させることができている 37 Sec.5.2 Fully-connected deep networks

Slide 38

Slide 38 text

◆ • データセットはCIFER-10 • 畳み込み層が8つ,全結合層が8つ o カーネル5×5で8出⼒の畳み込み層 →3×3のmax-pooling o 全結合層にはReLUを使⽤ • 畳み込み層,プーリング層ではゼロパディング を使⽤ • 100epochで5回実験 • バッチサイズは256 38 Sec.5.3 Deep convolutional neural networks

Slide 39

Slide 39 text

◆ • 緑線は1epoch中にノイズの再サンプリングを ⾏った場合 • 重みは同じepoch中は磁場(ノイズ)によって, 強制的に揃わされるため,途中で変えると結果 が悪くなる 39 Sec.5.3 Deep convolutional neural networks

Slide 40

Slide 40 text

◆ • 1epoch中にノイズを再サンプリングした場合, 重みの⽅向が揃わない 40 Sec.5.3 Deep convolutional neural networks

Slide 41

Slide 41 text

◆ • CIFAR-10を使⽤ • ネットワークの構成 • 畳み込み層の直後にはbatch normalizationを 使⽤ • バッチサイズは32 • 100epochで5回実験 41 Sec.5.4 Network in network architecture

Slide 42

Slide 42 text

◆ • この場合もCNNと同様の結果が得られる 42 Sec.5.4 Network in network architecture

Slide 43

Slide 43 text

◆ • 勾配の最⼩値をグラフ化 • ノイズを加えることによって,勾配の⼤きさが ⼩さくなりすぎるのを防いでいる 43 Sec.5.4 Network in network architecture

Slide 44

Slide 44 text

◆ • ノイズを加えることの解釈として,トポロジー の平均化を導⼊ • ノイズの影響を解析的に分析 • 多項式領域から元の指数領域に向かって, 損失関数を修正するアニーリングスケジュール を提案 44 Sec.6 Discussion

Slide 45

Slide 45 text

◆ • トポロジーの平均化によって,学習を加速させ, テストデータに対する⼀般誤差を減少 • 単純に勾配にノイズを加えるのが効果的である ことを実験によって⽰した • 1epochの間にノイズを再サンプリングするので はなく,epochごとにノイズをサンプリングし て,アニーリングするほうが効果がある 45 Sec.6 Discussion