Upload
yu-ohori
View
281
Download
3
Embed Size (px)
Citation preview
PATTERN RECOGNITION and MACHINE LEARNING
READING5.1 Feed-forward Network Functions
5.2 Network Training
GSIS Tohoku Univ. Tokuyama Lab. M1 Yu Ohori
5 Neural Networks
2015/6/3 PRML Reading 2
線形モデル
𝑦 𝐱, 𝐰 = 𝑓 𝑗=1
𝑀
𝑤𝑗𝜙𝑗 𝐱
• 𝜙𝑗 𝐱 :基底関数
• 𝑓 ∙ : 恒等写像(回帰)あるいは非線形活性化関数(クラス分類)
• 解析や計算において有用な性質を持つ
• 次元の呪いのため実際的な応用可能性は限られる
• 基底関数をデータに適応させる必要がある
• サポートベクトルマシン ( SVM )
• フィードフォワードニューラルネットワーク
5.1 Feed-forward Network Functions
ニューラルネットワークモデル• 基底関数はパラメータ依存
• 訓練中にパラメータを調整
• 利点• コンパクト(基底関数の数が少ない)
• 新規データの迅速な処理が可能• 万能近似器
• 高い関数近似能力
• 欠点• 尤度関数が非凸関数
• 非凸最適化問題を解く必要がある
2015/6/3 PRML Reading 3
Σ 𝑓 ∙output
input
unit
𝑥1
𝑥2
𝑥3
𝑥𝐷
𝑦
© 2015 WDB Co., Ltd
5.1 Feed-forward Network Functions
2015/6/3 PRML Reading 4
基本的なニューラルネットワークモデル
• 入力変数の線形和を生成
𝑎𝑗 = 𝑖=1
𝐷
𝑤𝑗𝑖1
𝑥𝑖 + 𝑤𝑗01
= 𝑖=0
𝐷
𝑤𝑗𝑖1
𝑥𝑖
• 𝑎𝑗 : 活性
• 𝑤𝑗01
: バイアスパラメータ
• 𝑥0 = 0
• 1 は 1層目を示す
• 活性を非線形活性化関数で変換𝑧𝑗 = ℎ 𝑎𝑗
• 𝑧𝑗 : 隠れユニット
• ℎ ∙ : 微分可能な非線形活性化関数
Fig. 5.1 ( p. 228 )
5.1 Feed-forward Network Functions
2015/6/3 PRML Reading 5
基本的なニューラルネットワークモデル
• 隠れユニットの線形和を生成
𝑎𝑘 = 𝑗=1
𝑀
𝑤𝑘𝑗2
𝑧𝑗 + 𝑤𝑘02
= 𝑖=0
𝐷
𝑤𝑘𝑗2
𝑧𝑗
• 𝑎𝑘 : 出力ユニット活性
• 𝑤𝑘02
: バイアスパラメータ
• 𝑧0 = 0
• 2 は 2層目を示す
• 出力ユニット活性を非線形活性化関数で変換𝑦𝑘 = 𝜎 𝑎𝑘
• 𝑦𝑘 : 出力変数
• 𝜎 ∙ : ロジスティックシグモイド関数
• 活性化関数の選択はデータの性質と目標変数の分布に依存
Fig. 5.1 ( p. 228 )
5.1 Feed-forward Network Functions
2015/6/3 PRML Reading 6
ノード:入力変数,隠れ変数,出力変数リンク:重みパラメータ
基本的なニューラルネットワークモデル
• ネットワーク全体の関数
𝑦𝑘 𝐱, 𝐰 = 𝜎 𝑗=1
𝑀
𝑤𝑘𝑗2
ℎ 𝑖=1
𝐷
𝑤𝑗𝑖1
𝑥𝑖 + 𝑤𝑗01
+ 𝑤𝑘02
= 𝜎 𝑗=0
𝑀
𝑤𝑘𝑗2
ℎ 𝑖=0
𝐷
𝑤𝑗𝑖1
𝑥𝑖
Fig. 5.1 ( p. 228 )
5.1 Feed-forward Network Functions
2015/6/3 PRML Reading 7
ネットワーク構造の拡張
• 隠れユニットからなる層の追加
• 層を飛び越えた結合の導入
• 有向閉路があってはならない(フィードフォワード構造)
𝑧𝑘 = ℎ 𝑗𝑤𝑘𝑗𝑧𝑗
Fig. 5.2 ( p. 230 )
5.1.1 Weight Space Symmetries
符号反転対称性
• 一部の重みの符号を反転させてもネットワークが表す入出力関数は変化しない
2015/6/3 PRML Reading 8
等価 −𝑎𝑗 tanh −𝑎𝑗
𝑥1
𝑥2
𝑥3
𝑥𝐷
𝑧𝑗
𝑥0
−𝑤𝑗0
−𝑤𝑗1
−𝑤𝑗2
−𝑤𝑗3
−𝑤𝑗𝐷
−𝑤1𝑗
−𝑤3𝑗−𝑤2𝑗
𝑧𝑗
𝑧𝑗
𝑧𝑗−𝑤𝑀𝑗
tanh −𝑎𝑗 = −tanh 𝑎𝑗
𝑎𝑗 tanh 𝑎𝑗
𝑥1
𝑥2
𝑥3
𝑥𝐷
𝑧𝑗
𝑥0
𝑤𝑗0
𝑤𝑗1
𝑤𝑗2
𝑤𝑗3
𝑤𝑗𝐷
𝑤1𝑗
𝑤3𝑗𝑤2𝑗
𝑧𝑗
𝑧𝑗
𝑧𝑗𝑤𝑀𝑗
hidden unit
5.1.1 Weight Space Symmetries
交換対称性
• 二つの隠れユニットにつながる結合の重みを入れ換えても入出力関数は変化しない
2015/6/3 PRML Reading 9
等価
𝑎𝑗′ tanh 𝑎𝑗′𝑥𝐷 𝑧𝑗′
𝑤𝑗′1
𝑤𝑗′2
𝑤𝑗′𝐷
𝑤1𝑗′
𝑤3𝑗′
𝑤2𝑗′
𝑧𝑗′
𝑧𝑗′
𝑧𝑗′
𝑤𝑀𝑗′
𝑎𝑗 tanh 𝑎𝑗𝑥1
𝑥2
𝑧𝑗
𝑥0
𝑤𝑗0
𝑤𝑗1
𝑤𝑗2
𝑤1𝑗
𝑤3𝑗𝑤2𝑗
𝑧𝑗
𝑧𝑗
𝑧𝑗𝑤𝑀𝑗
𝑤𝑗𝐷
𝑤𝑗′0
𝑎𝑗 tanh 𝑎𝑗𝑥𝐷 𝑧𝑗
𝑤𝑗1
𝑤𝑗2
𝑤𝑗𝐷
𝑤1𝑗
𝑤3𝑗𝑤2𝑗
𝑧𝑗
𝑧𝑗
𝑧𝑗𝑤𝑀𝑗
𝑎𝑗′ tanh 𝑎𝑗′𝑥1
𝑥2
𝑧𝑗′
𝑥0
𝑤𝑗′0
𝑤𝑗′1
𝑤𝑗′2
𝑤1𝑗′
𝑤3𝑗′
𝑤2𝑗′
𝑧𝑗′
𝑧𝑗′
𝑧𝑗′
𝑤𝑀𝑗′
𝑤𝑗′𝐷
𝑤𝑗0
5.1.1 Weight Space Symmetries
重み空間対称性
• 同じ入力から出力への関数を表す重みベクトル 𝐰が複数存在
• 符号反転対称性
• 2𝑀 通り
• 交換対称性
• 𝑀!通り
• 全部で 𝑀! 2𝑀 個の等価な重みベクトルが存在
• ベイズモデル比較を考える際に重要な役割を果たす ( Sec. 5.7 )
2015/6/3 PRML Reading 10
5.2 Network Training
ネットワークパラメータ決定問題
• 最も単純なアプローチ…二乗和誤差関数の最小化
ネットワーク出力の確率的解釈
• 問題に応じて出力ユニットの活性化関数と誤差関数を選択 ( Sec. 4.3.6 )
• 活性化関数:正準連結関数
• 目標変数に対する条件付分布:指数型分布族
• いずれの場合も誤差関数の微分は次の形をとる𝜕𝐸
𝜕𝑎𝑘= 𝑦𝑘 − 𝑡𝑘
• 誤差逆伝播を議論する際に利用 ( Sec. 5.3 )
2015/6/3 PRML Reading 11
本当に全部の問題二乗和誤差関数でいいの?(だめ)
© 2009 チャコレート
5.2 Network Training
2015/6/3 PRML Reading 12
出力ユニットの活性化関数 線形出力関数
𝑦𝑘 = 𝑎𝑘
目標変数に対する条件付分布 ガウス分布
𝑝 𝑡 𝐱, 𝐰, 𝛽 = 𝒩 𝑡 𝑦 𝐱, 𝐰 , 𝛽−1
尤度関数𝑝 𝐭 𝐗, 𝐰, 𝛽 =
𝑛=1
𝑁
𝑝 𝑡𝑛 𝐱𝑛, 𝐰, 𝛽
誤差関数 二乗和誤差関数
𝐸 𝐰 =1
2
𝑛=1
𝑁
𝑦 𝐱𝑛, 𝐰 − 𝑡𝑛2
回帰問題
5.2 Network Training
2015/6/3 PRML Reading 13
出力ユニットの活性化関数 ロジスティックシグモイド関数
𝑦𝑘 = 𝜎 𝑎𝑘 ≡1
1 + exp 𝑎𝑘
目標変数に対する条件付分布 ベルヌーイ分布
𝑝 𝑡 𝐱, 𝐰 = Bern 𝑡 𝑦 𝐱, 𝐰
尤度関数𝑝 𝐭 𝐗, 𝐰 =
𝑛=1
𝑁
𝑝 𝑡𝑛 𝐱𝑛, 𝐰
誤差関数 交差エントロピー誤差関数
𝐸 𝐰 = − 𝑛=1
𝑁
𝑡𝑛 ln 𝑦𝑛 + 1 − 𝑡𝑛 ln 1 − 𝑦𝑛
𝟐クラス分類問題
5.2 Network Training
2015/6/3 PRML Reading 14
出力ユニットの活性化関数 ソフトマックス関数
𝑦𝑘 =exp 𝑎𝑘 𝐱,𝐰
𝑗 exp 𝑎𝑗 𝐱, 𝐰
目標変数に対する条件付分布 ベルヌーイ分布
𝑝 𝐭 𝐱, 𝐰 = 𝑘=1
𝐾
𝑦𝑘 𝐱, 𝐰 𝑡𝑘
尤度関数𝑝 𝐓 𝐗, 𝐰 =
𝑛=1
𝑁
𝑘=1
𝐾
𝑦𝑘 𝐱𝑛, 𝐰 𝑡𝑛𝑘
誤差関数 多クラス交差エントロピー誤差関数
𝐸 𝑤 = − 𝑛=1
𝑁
𝑘=1
𝐾
𝑡𝑛𝑘 ln 𝑦𝑘 𝐱𝑛, 𝐰
多クラス分類問題
5.2 Network Training
回帰問題
•𝜕𝑦𝑘
𝜕𝑎𝑘= 1
•𝜕𝐸
𝜕𝑎𝑘=
𝜕𝐸
𝜕𝑦𝑘∙
𝜕𝑦𝑘
𝜕𝑎𝑘= 𝑦𝑘 − 𝑡𝑘 ∙ 1 = 𝑦𝑘 − 𝑡𝑘
𝟐クラス分類問題
•𝜕𝑦𝑘
𝜕𝑎𝑘= 𝜎 𝑎𝑘 1 − 𝜎 𝑎𝑘 = 𝑦𝑘 1 − 𝑦𝑘
•𝜕𝐸
𝜕𝑎𝑘=
𝜕𝐸
𝜕𝑦𝑘∙
𝜕𝑦𝑘
𝜕𝑎𝑘= − 𝑡𝑘
1
𝑦𝑘+ 1 − 𝑡𝑘
−1
1−𝑦𝑘∙ 𝑦𝑘 1 − 𝑦𝑘 = 𝑦𝑘 − 𝑡𝑘
多クラス分類問題
•𝜕𝑦𝑘
𝜕𝑎𝑗= 𝑦𝑘 𝛿𝑘𝑗 − 𝑦𝑗
•𝜕𝐸
𝜕𝑎𝑛𝑗=
𝜕𝐸
𝜕𝑦𝑛𝑘∙
𝜕𝑦𝑛𝑘
𝜕𝑎𝑛𝑗= − 𝑘 𝑡𝑛𝑘
1
𝑦𝑛𝑘∙ 𝑦𝑛𝑘 𝛿𝑘𝑗 − 𝑦𝑛𝑗 = 𝑦𝑛𝑗 − 𝑡𝑛𝑗
2015/6/3 PRML Reading 15
5.2.1 Parameter optimization
誤差関数の幾何学的描写
• 𝐸 𝐰 は 𝐰の滑らかで連続な曲面
• 𝐰から 𝐰 + 𝛿𝐰へ少しだけ移動
• 誤差関数の変化は 𝛿𝐸 ≃ 𝛿𝐰T𝛻𝐸 𝐰
• 𝛻𝐸 𝐰 : 誤差関数が最も変化する方向
• 𝐸 𝐰 の最小値は 𝛻𝐸 𝐰 = 0になる点
2015/6/3 PRML Reading 16
Fig. 5.6 ( p. 240 )
5.2.1 Parameter optimization
停留点• 𝛻𝐸 𝐰 = 0を満たす点
• 極小点• 大域的最小点
• 誤差関数の最小値に相当する極小点
• 局所的極小点
• それ以外の極小点
• 極大点
• 鞍点• 極値を取らない停留点
• 非線形性のため停留点は重み空間内に多数存在
2015/6/3 PRML Reading 17
Fig. 5.6 ( p. 240 )
5.2.1 Parameter optimization
非線形最適化問題
• 𝛻𝐸 𝐰 = 0を解析的に解くことはほぼ不可能
• 数値的な反復手順を利用
𝐰 𝜏+1 = 𝐰 𝜏 + ∆𝐰 𝜏
• 𝜏 : 反復ステップ数
• 多くのアルゴリズムでは ∆𝐰 𝜏 に勾配情報を利用
2015/6/3 PRML Reading 18
Fig. 5.6 ( p. 240 )
5.2.2 Local quadratic approximation
2015/6/3 PRML Reading 19
ある点 𝐰 のまわりでの誤差関数の局所二次近似
𝐸 𝐰 ≃ 𝐸 𝐰 + 𝐰 − 𝐰 T𝐛 +1
2𝐰 − 𝐰 T𝐇 𝐰 − 𝐰
• 𝐛 ≡ 𝛻𝐸 𝐰= 𝐰 : 𝐰で評価された勾配
• 𝐇 𝑖𝑗 ≡ 𝜕𝐸
𝜕𝑤𝑖𝜕𝑤𝑗 𝐰= 𝐰
: 𝐰で評価されたヘッセ行列
停留点 𝐰⋆ のまわりでの誤差関数の局所二次近似
𝐸 𝐰 ≃ 𝐸 𝐰⋆ +1
2𝐰 − 𝐰⋆ T𝐇 𝐰 − 𝐰⋆
• 𝐛 = 𝟎
• 𝐇 𝑖𝑗 ≡ 𝜕𝐸
𝜕𝑤𝑖𝜕𝑤𝑗 𝐰=𝐰⋆
5.2.2 Local quadratic approximation
誤差関数の幾何学的解釈
• 固有方程式
𝐇𝐮𝑖 = 𝜆𝑖𝐮𝑖• 𝐇 : ヘッセ行列(実対称行列)
• 𝜆𝑖 : 固有値
• 𝐮𝑖 : 固有ベクトル(完全正規直交系)
• 𝐮𝑖T𝐮𝑗 = 𝛿𝑖𝑗
• 𝐰 − 𝐰⋆ = 𝑖 𝛼𝑖𝐮𝑖 と展開すれば
𝐸 𝐰 ≃ 𝐸 𝐰⋆ +1
2𝐰 − 𝐰⋆ T𝐇 𝐰 − 𝐰⋆ = 𝐸 𝐰⋆ +
1
2
𝑖𝜆𝑖𝛼𝑖
2
2015/6/3 PRML Reading 20
5.2.2 Local quadratic approximation
誤差関数の幾何学的解釈
• 停留点近傍における誤差関数の導出
𝐸 𝐰
≃ 𝐸 𝐰⋆ +1
2𝐰 − 𝐰⋆ T𝐇 𝐰 − 𝐰⋆
= 𝐸 𝐰⋆ +1
2
𝑖𝛼𝑖𝐮𝑖
T
𝐇 𝑗𝛼𝑗𝐮𝑗
= 𝐸 𝐰⋆ +1
2
𝑖𝛼𝑖𝐮𝑖
T 𝑗𝛼𝑗𝜆𝑗𝐮𝑗
= 𝐸 𝐰⋆ +1
2
𝑖
𝑗𝜆𝑗𝛼𝑖𝛼𝑗𝐮𝑖
T𝐮𝑗
= 𝐸 𝐰⋆ +1
2
𝑖𝜆𝑖𝛼𝑖
2
2015/6/3 PRML Reading 21
∵ 𝐰 − 𝐰⋆ = 𝑖𝛼𝑖𝐮𝑖
∵ 𝐇𝐮𝑖 = 𝜆𝑖𝐮𝑖
∵ 𝐮𝑖T𝐮𝑗 = 𝛿𝑖𝑗
5.2.2 Local quadratic approximation
誤差関数の幾何学的解釈• 𝐰⋆ で評価されたヘッセ行列 𝐇 𝐸 が正定値
• ⇔ 𝐇 𝐸 ≻ 0
• ⇔ ∀𝐯 = 𝑖 𝑐𝑖𝐮𝑖 ≠ 𝟎 ∶ 𝐯T𝐇𝐯 = 𝑖 𝑐𝑖2𝜆𝑖 > 0
• ⇔ ∀𝑖 ∶ 𝜆𝑖 > 0
• ⇔ 𝐸 𝐰 ≃ 𝐸 𝐰⋆ +1
2 𝑖 𝜆𝑖𝛼𝑖
2 > 𝐸 𝐰⋆
• 𝐰 − 𝐰⋆ = 𝑖 𝛼𝑖𝐮𝑖
• ⇔停留点 𝐰⋆ は極小点
2015/6/3 PRML Reading 22
5.2.2 Local quadratic approximation
誤差関数の幾何学的解釈
• 極小値 𝐰⋆ の近傍において誤差関数は二次関数で近似
• 誤差関数の等高線は楕円の形
• 中心 𝐰⋆
• 長さは 𝜆𝑖
−1
2 に比例
2015/6/3 PRML Reading 23
Fig. 5.6 ( p. 240 )
5.2.3 Use of gradient information
勾配情報を利用しない場合
• 誤差曲面は 𝐛と 𝐇で特定
𝐸 𝐰 ≃ 𝐸 𝐰 + 𝐰 − 𝐰 T𝐛 +1
2𝐰 − 𝐰 T𝐇 𝐰 − 𝐰
• 𝐛の独立な要素数𝑊 個• 𝑊 : 𝐰の次元
• 𝐇の独立な要素数𝑊2−𝑊
2+ 𝑊 =
𝑊 𝑊+1
2個
• 極小点の位置は 𝑂 𝑊2 個のパラメータに依存
• 各関数の評価に必要なステップ数 𝑂 𝑊
• 極小値を見つけるために必要な計算量 𝑂 𝑊3
2015/6/3 PRML Reading 24
𝐇 =
𝑊
𝑊
5.2.3 Use of gradient information
勾配情報を利用する場合
• 𝛻𝐸 𝐰 を評価する毎に𝑊 個の情報を得る
• 𝑂 𝑊 回の評価で極小点を見つけることが可能
• 各勾配の評価に必要なステップ数 𝑂 𝑊
• 誤差逆伝播を利用
• 極小値を見つけるために必要な計算量 𝑂 𝑊2
2015/6/3 PRML Reading 25
バッチ手法
• 全ての訓練データ集合を一度に処理
• 勾配降下法
𝐰 𝜏+1 = 𝐰 𝜏 − 𝜂𝛻𝐸 𝐰 𝜏
• 𝜂 > 0 : 学習率パラメータ
• 勾配降下法より頑健でかつ高速なアルゴリズム
• 共役勾配法
• 準ニュートン法
5.2.4 Gradient decent optimization
2015/6/3 PRML Reading 26
5.2.4 Gradient decent optimization
オンライン手法
• データ点を一度に一つだけ用いてパラメータを順次更新
• 逐次的勾配降下法
𝐰 𝜏+1 = 𝐰 𝜏 − 𝜂𝛻𝐸𝑛 𝐰 𝜏
• 𝐸 𝐰 = 𝑛=1𝑁 𝐸𝑛 𝐰
• 利点
• データの冗長度を効率的に扱うことが可能
• 局所的極小値を回避できる可能性がある
2015/6/3 PRML Reading 27
Reference
Pattern Recognition and Machine Learning [ Christopher M. Bishop, 2006 ]
• English
• pp. 225 – 241
• Japanese ( vol. 1 )
• pp. 225 – 242
• Web site
• http://research.microsoft.com/en-us/um/people/cmbishop/prml/
2015/6/3 PRML Reading 28