PRML輪読#5
- 6. 5.1 フィードフォワードネットワーク関数
• NNはフィードフォワード(閉じた有向回路がない)であることが必要
– 出⼒が⼊⼒の決定理論的な関数であるである必要条件
• NNは万能近似器
– 線形出⼒を持つ2層ネットワークは,⼗分な数の隠れ層のユニットを持てば,任意の精
度でどんな連続関数でも近似できる
• 重み空間対称性
– 同じ⼊⼒から出⼒への関数を表す重みベクトル𝒘は複数存在する
– 活性化関数の対称性や線形における交代性などから、隠れ層のユニットがMこあった場
合,ネットワークには𝑀! 2.個の等価な重みベクトルがある
– ベイズモデル⽐較を考える際に重要となる
6
- 7. 5.2 ネットワーク訓練
• 回帰問題の場合
– ネットワークの出⼒を確率的に解釈することが重要
– 回帰問題の場合
– tはxに依存するガウス分布に従うとする.この時尤度関数は,
– 負の対数尤度を取ると,
– 𝛽を固定して𝑤を最適化することを考えると,結局,
を最⼩化すれば良い
– 回帰問題の場合,出⼒ユニットの⾃然な活性化関数(*4.36)として恒等写像関数が選ば
れる.その時,
7
- 8. 5.2 ネットワーク訓練
• 分類問題の場合
– 2値分類の場合
• 活性化関数としてシグモイド関数
• 負の対数尤度を取ると,以下の誤差関数が得られる
– 多クラス分類の場合
• 活性化関数としてソフトマックス関数
• 負の対数尤度を取ると,以下の誤差関数が得られる
8
- 9. 5.2.1,2 パラメタ最適化と局所2次近似
• 誤差関数𝐸(𝑤)の最⼩化において,𝛻𝐸 𝑤 = 0が必要.
– 𝛻𝐸 𝑤 = 0となる点は極⼩値,極⼤値,鞍点がある
– さらに,極⼩値にも局所的極⼩値,⼤域的極⼩値がある
– 𝛻𝐸 𝑤 = 0となる点は解析的には求められないので,数値的な反復⼿順を取る
• 勾配の局所近似は,
– ∵ 𝐸 𝑤 のテイラー展開
– 𝛻𝐸 𝑤 = 0が成り⽴つので,
– ヘッセ⾏列が正定値⾏列の場合,その停留点𝑤∗は極⼩値である
9
- 10. 5.2.3 勾配情報の利⽤
• 逆誤差伝播は効率的に誤差関数の勾配を評価できる
– 誤差局⾯は(5.28)式よりbとHで決定する関数である
– Hの対称性から,全部で𝑊(𝑊 + 3) 2⁄ の独⽴な要素があり,極⼩点の位置を求めるには
計算量𝑂(𝑊;)を要する
– 以上の𝑂(𝑊;)の点で評価を⾏うので,結局,計算量として𝑂 𝑊< が必要
• 勾配情報を利⽤すれば,𝛻𝐸 𝑤 を評価する度にW個の情報が得られるので,
𝑂(𝑊)の計算量で関数の極⼩値を求めることができる
– 評価も合わせて𝑂(𝑊;)で済む
10
- 11. 5.2.4 勾配降下最適化法
• バッチ訓練
– 全てのデータ集合を⼀度に扱う
– 勾配降下法,最急降下法
– 性能が悪い
– 共役勾配法,準ニュートン法など効率的な⽅法も
• オンライン勾配降下法
– 逐次的勾配降下法,確率的勾配降下法
– データの冗⻑性を効率的に扱える,局所解にハマりにくい
– 「勾配降下法の最適化アルゴリズムを概観する」が⾮常によくまとまっていておすすめ
http://postd.cc/optimizing-gradient-descent/
11
- 15. 5.3.4 ヤコビ⾏列
• ヤコビ⾏列の計算においても誤差逆伝播のテクニックが使える
– ヤコビ⾏列の直感的な解釈->各⼊⼒変数の変化に対する出⼒の局所的な感度の指標
– 以下のような`異なる`モジュールで構成されたシステムを考える
– 以上の図5.8のwに関して,誤差関数を最⼩化したい
– ⼊⼒の振動が⼤きい場合(⼊⼒が未知の場合),近似的に⼊⼒xに対するyの勾配を評価で
きない.ヤコビ⾏列そのものを再評価する必要がある
15
- 16. 5.4 ヘッセ⾏列
– 誤差関数の重みに関する2回微分を評価
1. ヘッセ⾏列が正定値⾏列なら極⼩値をもつことがわかる
2. 学習データの変動時における再学習の⾼速化
3. 「刈り込み」アルゴリズムにおける冗⻑な重みの特定
4. ベイズネットワークのラプラス近似における分布の選択,モデルエビデンス評価
– ヘッセ⾏列は直接評価すると𝑂(𝑊;)であるため,効率的に評価したい
1. 対⾓近似
2. 外積による近似(逆⾏列の効率的な逐次計算が可能に)
3. 有限差分による近似
– 誤差逆伝播を⽤いてヘッセ⾏列の厳密な評価が可能になる(らしい)
– さらに,ヘッセ⾏列とベクトルの積を評価する問題に取り替えれば,誤差逆伝播を⽤
いて計算量𝑂(𝑊)で⾼速に評価できる
16
𝛻𝐸を求めるのに関わる誤差逆伝播
の全て計算において,𝑣A 𝛻を作用さ
せれば良い
- 18. 5.5 ニューラルネットワークの正則化
• 過学習の抑制として,正則化項を追加する⽅法
– もっとも単純なモデルは
– 荷重減衰(weight decay).モデルの複雑さは𝜆で決まる
– しかし,⼊⼒の線形変換に対して等価なネットワークが得られない(無⽭盾でない)
– 無⽭盾性を満たす正則化項を探すと,正則化項は以下の事前分布に従う
– しかし,(5.122)はバイアスパラメタが制約されていない変則事前分布であるため(周辺
化できない),より⼀般的には,固有のハイパーパラメタを持つ事前分布を導⼊する.
のように,重みを任意のグループ𝑊Cに分けた事前分布を考えることもできる
18
- 20. 5.5.3 不変性
• 出⼒は,⼊⼒変数が線形変換されていても変化しないこと(不変性)が求めら
れる
• 平⾏移動不変性
• 尺度不変性
– ⼗分な訓練集合があればNNは不変性を獲得できるが,そうでない場合も多い
1. 不変性に応じて訓練パターンを変換して複製する
2. 正則化項を加え,⼊⼒の変換に対して出⼒が変化した場合にペナルティーを加える(接線伝
播法:5.5.4)
変換をヤコビ⾏列で表せる.以下の正則化項を加えれば良い
3. 前処理で変換に関わらない特徴量を抽出する
4. NNに不変性を構築する(局所的受容野を設ける,CNN)
20
- 21. 5.5.6 畳み込みニューラルネットワーク
• 局所受容野
– 全ての⼊⼒の⼀部分のみを⼊⼒とする
(たたみこむ)
• 重み共有
– 畳み込み層における各ユニットの重みを
共有することで,モデルの複雑さに制限
をかける
• 部分サンプリング
– Poolingすることで,不変性を獲得する
• Max pooling, average pooling
21
引⽤:https://sites.google.com/site/mlreadingkyoto/schedule/prml5.4-5.5.pptx?attredirects=0&d=1
- 22. 5.5.7 ソフト重み共有
• 基本的なCNNは,畳み込み層の重みを共有するハードな制約
• ⼀⽅で,ペナルティー項を導⼊するソフト重み共有の仕⽅がある
– 重みの値が複数のガウス分布に従うとすれば,混合ガウス分布を考えれば良い.𝜋&を混
合係数として,正則化項は以下のように表される
– ベイズの定理に従って事後分布を考えると,
– すると,全体の誤差関数の重みに関する微分は
正則化項の部分に注⽬すると,各重みを中⼼に引き寄せる役割(これで重みの共有を促す)
22
- 26. 5.7 ベイズニューラルネットワーク
• ベイズの枠組みでニューラルネットワークを捉える
– パラメタの分布を考えて,周辺化したい
– ネットワーク関数がパラメタに極度に⾮線形に依存しているために,厳密にベイズの枠
組みで議論できない
– ⽬的関数が精度βを持つガウス分布に従うとして,
– 重みwの事前分布を
– xのデータ集合に対して⽬標値の集合Dについて,尤度関数は
– この時,事後分布は
– これは𝑦(𝑥, 𝑤)がwに⾮線形に依存するため,ガウス分布にならない
– ラプラス近似を⽤いてガウス分布で近似
26
- 27. 5.7 ベイズニューラルネットワーク
– まず,パラメタを固定して普通にwを求める
– モード𝑤TUVを求めたら,事後分布の負の対数尤度の2階微分の⾏列を評価し,局所的に
ガウス分布で近似できる
– これをもちいて,事後分布を近似でき,
– この式をwについて周辺化し,事後分布の分散がwのスケールに⽐べて⼗分⼩さいとい
う仮定のもと,テイラー展開すると,ネットワーク関数が以下のように表せる
– その結果,予測分布は
27
- 29. 参考資料
• パターン認識と機械学習 上
– C.M. ビショップ (著), 元⽥ 浩 (監訳), 栗⽥ 多喜夫 (監訳), 樋⼝ 知之 (監訳), 松本 裕
治 (監訳), 村⽥ 昇 (監訳)
• PRML Chapter5 Hessian Matrix (hassaku, Speaker Deck)
– https://speakerdeck.com/hassaku/prml-chapter5-hessian-matrix
• PRML 5.4章 5.5章 (藤本 悠介,powerpoint)
– https://sites.google.com/site/mlreadingkyoto/schedule/prml5.4-
5.5.pptx?attredirects=0&d=1
• PRML復々習レーン5.5.6-5.5.7(RicksonJr, SlideShare)
– https://www.slideshare.net/RicksonJr/bbb-15673191
29