Successfully reported this slideshow.
We use your LinkedIn profile and activity data to personalize ads and to show you more relevant ads. You can change your ad preferences anytime.
機械学習における
オンライン確率的最適化の理論
鈴木 大慈
東京大学
情報理工学系研究科
数理情報学専攻
2013/6/26
1
本発表の狙い
オンライン確率的最適化の理論
いろいろな手法
簡単な手法を軸にして基本となる考え方を紹介
2
発表の構成
• 最適化問題としての定式化
• オンライン確率的最適化
– 確率的勾配降下法
– 正則化学習におけるオンライン確率的最適化
– 構造的正則化学習におけるオンライン確率的最適化
• バッチデータに対する確率的最適化
3
教師有り学習の
最適化問題としての定式化
4
5
経験リスク関数
正則化項付きリスク関数
: t個目のサンプルに対するロス
: 過学習を避けるためのペナルティ項
機械学習における最適化問題
(“誤り” へのペナルティ)
6
• 回帰
-二乗ロス
-分位点回帰
ロス関数の例
• 判別
-ヒンジロス
-ロジッスティックロス
7
• 回帰
ロス関数の図
• 判別
squared loss
tau loss (分位点回帰)
Huber loss
勾配法
8
とする.
(劣)
劣勾配:
9
ステップサイズの決定には
• Armijoの規準
• Wolfeの規準
等がある.
Newton法
10
ロス関数は二回微分可能とする.
近接勾配法としての定式化
11
線形近似
近接項は近傍との距離を定めている.
自然勾配法も同様に定式化できる.
→ 距離の定め方でいろいろ出てくる.
Mirror Descent
12
さらに一般化
(近接勾配法)
Bregman-ダイバージェンス:
例:Exponentiated Gradient [Kivinen&Warmuth,97]
有限確率分布上での最適化:KL-ダイバージェンスを...
• これからの議論は簡単のため近接項として
を用いる.
• 近接勾配法としての見方は確率的最適化と
の関係を明確にする(後述).
• Mirror descentのように距離を変えても以下
と同様の議論は成り立つ.
13
収束レート
• 最急降下法
– 滑らかな凸関数:
– 強凸関数: 一次収束
• Newton法
– 二次収束
14
正則化項付きリスク最小化
15c.f. FOBOS [Duchi&Singer,09], FISTA [Beck, Teboulle 08]
この更新式はオンライン学習においても重要
発表の構成
• 最適化問題としての定式化
• オンライン確率的最適化
– 確率的勾配降下法
– 正則化学習におけるオンライン確率的最適化
– 構造的正則化学習におけるオンライン確率的最適化
• バッチデータに対する確率的最適化
16
オンライン確率的最適化
17
問題点
18
• サンプル数nが巨大な場合,関数値の評価,勾配の計算,Hessianの計算
に多大な時間がかかる.
• 次から次にやってくるデータは従来の方法では処理できない(nは固定).
• 巨大なデータはメモリに収められない.
確率的最適化...
確率的勾配降下法
19
(Stochastic Gradient Descent, SGD)
ではない.
•t個目のサンプルのみを用いて更新ができる.
•ステップサイズは が普通(後述).
•バッチの最適化と比べてステップサイズは重要.
Pol...
収束レート解析:用語の定義
• ロス関数の滑らかさ
20
• 目的関数の強凸性
ある正の定数 が存在して,
ステップサイズ でもPolyak-Ruppert平均化すれ
ば強凸性に適応して収束が速くなる.[Bach&Moulines,11]
収束レート
• 一般の凸ロス関数
21
• 期待リスクが滑らかな強凸関数
:期待リスク(汎化誤差)
※本当はもっ...
• 滑らかでない一般の強凸リスクの収束レート
22
強凸期待リスクに対する収束レートの理論はまだまだ発展途上
例:ステップサイズ は滑らかでない場合でも にして良いか?
• Polyak-Ruppert 平均化
• α-suffix平均化
• ...
バッチ最適化との比較
23
なめらかな強凸関数において比較する.
:minimax最適レート
だけ得をする
→サンプル数が巨大な時は確率的最適化が有用
[Nemirovski&Yudin,83][Agarwal+etal,10]
(最悪な期待リ...
正則化学習における
オンライン確率的最適化
24
正則化学習での確率的勾配法
25
を小さくしたい.
c.f. FOBOS [Duchi&Singer,09]
例:L1正則化 (高次元モデルにおけるスパース学習)
Soft threshold
更新途中でもスパース!
26
: proximal operation
先の更新式は次のように書ける:
proximal operationが簡単に計算できる正則化関数の例.
① グループ正則化
② トレースノルム最小化( )
とSVDされている時,
低ランク性
グル...
ミニバッチ法
27
各反復での勾配計算を一サンプルだけでなく,
小規模のまとまったサンプルを用いて計算.
Regularized Dual Averaging
28
RDA: 確率的最適化(オンライン最適化)の別の方法 [Xiao,09; Nesterov,09]
:勾配の平均を用いる
FOBOSよりも途中の解がスパースになりやすい
関連手法
29
Composite Objective Mirror Descent
Adaptive Subgradient Methods
[Duchi+etal,10]
KL-divergenceを用いればexponentiated gr...
構造的正則化学習における
オンライン確率的最適化
30
構造的スパース正則化
31
例1:Group Lasso
グ
ル
ー
プ
構
造
重
複
あ
り
32
例2:低ランクテンソル推定
=
12
3
低ランク
33
例3:グラフ型正則化
1
2
3
4
5
応用例
34
ゲノムワイド相関解析 (GWAS) (Balding ‘06, McCarthy et al. ‘08)
Gpoup1 Gpoup2 Gpoup3
構造的正則化学習の難しさ
• Proximal operationが簡単に計算できない
35
重
複
あ
り
重
複
な
し
簡単 難しい
•各正則化関数に応じた賢い方法で解く [Yuan et al. 2011]
•変数を増やして問題を簡単にする (汎用的)
を満たし が計算しやすい
• 重複ありグループ正則化
36
重
複
あ
り
グループ間に変数の絡み
• 解決策
を利用する...
37分離凸
と変形.
重複なし
• FOBOS型ADMM
38
• RDA型ADMM
線形近似 スムージング
確率的ADMM
交互方向乗数法 + 確率的最適化
[Suzuki, ICML2013]
[Ouyang+etal, ICML2013]
確率的ADMM
• FOBOS型ADMM
39
• RDA型ADMM
交互方向乗数法 + 確率的最適化
実装が簡単!
[Suzuki, ICML2013]
[Ouyang+etal, ICML2013]
収束レート
40
条件
データ:
• 一般の凸ロス関数
• 強凸正則化関数
•データはi.i.d.系列
•ロスと正則化項はLipschitz連続
•wのドメインは有界
数値実験:確率的ADMM
41
人工データ 実データ(Adult, a9a
@LIVSVM data sets)
1,024次元
512サンプル
重複ありグループ正則化
15,252次元
32,561サンプル
重複ありグループ正則化+ L1正則...
発表の構成
• 最適化問題としての定式化
• オンライン確率的最適化
– 確率的勾配降下法
– 正則化学習におけるオンライン確率的最適化
– 構造的正則化学習におけるオンライン確率的最適化
• バッチデータに対する確率的最適化
42
43
バッチデータに対する
確率的最適化
• オンライン最適化:
サンプルを一回しか見ないことを想定
• バッチの設定:
44
サンプルを何度も利用してよいなら
もっと速い収束が望めるのでは?
→ Yes
- Stochastic Average Gradient (SAG):
Le ...
Stochastic Average Gradient
(SAG)
45
[Le Roux, Schmidt, Bach (NIPS 2012)]
各ステップにおいて をランダムに選択し,
ロス関数が滑らか,かつ目的関数Lが強凸の時, とすると...
46
[Le Roux, Schmidt, Bach,12]
データ1
データ2
データ3
経験リスク 期待リスク 判別誤差
緑色がSAG
SAGの性質
• 指数的収束→サンプルを複数回観測すると確率的勾配法よりも
高い精度を得る.
• 一回の更新にかかる計算時間は確率的勾配法と同じオーダー.
• バッチ最適化と確率的勾配法の中間的位置づけ.
• 問題点:全てのサンプルでの勾配の値...
正則化学習の双対問題
48
Fenchel双対定理
Fenchel双対定理:例えばRockafeller, Convex Analysis (1970) のCorollary 31.2.1
双対問題
主問題
L*らはLをLegendre変換した...
Legendre変換
49
凸関数を傾きの情報から眺めたもの
ロス関数の双対
50
51
正則化関数の双対
Stochastic Dual Coordinate Ascent
52
1. をランダムに選択
2.次元 方向に最適化
3. 上の1,2を繰り返す.
が強凸で が滑らかな時,
双対ギャップの期待値
[Shalev-Shwartz&Zhang,...
53
指数的収束
[Shalev-Shwartz&Zhang,2012]
まとめ
• オンライン確率的最適化
– 大サンプル学習問題においてサンプルを一つ見るごとに
逐次的に更新する手法
– 経験誤差最小化は厳密に解く必要はない
• バッチデータに対する確率的最適化
– サンプルを複数回利用可能
→ 逐次的更新で指数...
Upcoming SlideShare
Loading in …5
×

機械学習におけるオンライン確率的最適化の理論

19,510 views

Published on

情報処理学会連続セミナー2013

Published in: Technology
  • Be the first to comment

機械学習におけるオンライン確率的最適化の理論

  1. 1. 機械学習における オンライン確率的最適化の理論 鈴木 大慈 東京大学 情報理工学系研究科 数理情報学専攻 2013/6/26 1
  2. 2. 本発表の狙い オンライン確率的最適化の理論 いろいろな手法 簡単な手法を軸にして基本となる考え方を紹介 2
  3. 3. 発表の構成 • 最適化問題としての定式化 • オンライン確率的最適化 – 確率的勾配降下法 – 正則化学習におけるオンライン確率的最適化 – 構造的正則化学習におけるオンライン確率的最適化 • バッチデータに対する確率的最適化 3
  4. 4. 教師有り学習の 最適化問題としての定式化 4
  5. 5. 5 経験リスク関数 正則化項付きリスク関数 : t個目のサンプルに対するロス : 過学習を避けるためのペナルティ項 機械学習における最適化問題 (“誤り” へのペナルティ)
  6. 6. 6 • 回帰 -二乗ロス -分位点回帰 ロス関数の例 • 判別 -ヒンジロス -ロジッスティックロス
  7. 7. 7 • 回帰 ロス関数の図 • 判別 squared loss tau loss (分位点回帰) Huber loss
  8. 8. 勾配法 8 とする. (劣) 劣勾配:
  9. 9. 9 ステップサイズの決定には • Armijoの規準 • Wolfeの規準 等がある.
  10. 10. Newton法 10 ロス関数は二回微分可能とする.
  11. 11. 近接勾配法としての定式化 11 線形近似 近接項は近傍との距離を定めている. 自然勾配法も同様に定式化できる. → 距離の定め方でいろいろ出てくる.
  12. 12. Mirror Descent 12 さらに一般化 (近接勾配法) Bregman-ダイバージェンス: 例:Exponentiated Gradient [Kivinen&Warmuth,97] 有限確率分布上での最適化:KL-ダイバージェンスを近接項に用いる 一般化
  13. 13. • これからの議論は簡単のため近接項として を用いる. • 近接勾配法としての見方は確率的最適化と の関係を明確にする(後述). • Mirror descentのように距離を変えても以下 と同様の議論は成り立つ. 13
  14. 14. 収束レート • 最急降下法 – 滑らかな凸関数: – 強凸関数: 一次収束 • Newton法 – 二次収束 14
  15. 15. 正則化項付きリスク最小化 15c.f. FOBOS [Duchi&Singer,09], FISTA [Beck, Teboulle 08] この更新式はオンライン学習においても重要
  16. 16. 発表の構成 • 最適化問題としての定式化 • オンライン確率的最適化 – 確率的勾配降下法 – 正則化学習におけるオンライン確率的最適化 – 構造的正則化学習におけるオンライン確率的最適化 • バッチデータに対する確率的最適化 16
  17. 17. オンライン確率的最適化 17
  18. 18. 問題点 18 • サンプル数nが巨大な場合,関数値の評価,勾配の計算,Hessianの計算 に多大な時間がかかる. • 次から次にやってくるデータは従来の方法では処理できない(nは固定). • 巨大なデータはメモリに収められない. 確率的最適化(オンライン学習) • 機械学習で大事なのは汎化誤差 • 高度な最適化手法による速い収束も経験誤差を小さくするのみ → 最適化の精度が推定誤差に埋もれる → 少しくらいサボってもよい [Bottou&Bousquet,08]
  19. 19. 確率的勾配降下法 19 (Stochastic Gradient Descent, SGD) ではない. •t個目のサンプルのみを用いて更新ができる. •ステップサイズは が普通(後述). •バッチの最適化と比べてステップサイズは重要. Polyak-Ruppert平均化:
  20. 20. 収束レート解析:用語の定義 • ロス関数の滑らかさ 20 • 目的関数の強凸性 ある正の定数 が存在して,
  21. 21. ステップサイズ でもPolyak-Ruppert平均化すれ ば強凸性に適応して収束が速くなる.[Bach&Moulines,11] 収束レート • 一般の凸ロス関数 21 • 期待リスクが滑らかな強凸関数 :期待リスク(汎化誤差) ※本当はもっと細かい条件が必要だが,ここでは省略 これらの収束レートはミニマックス最適[Nemirovski&Yudin,83][Agarwal+etal,10]
  22. 22. • 滑らかでない一般の強凸リスクの収束レート 22 強凸期待リスクに対する収束レートの理論はまだまだ発展途上 例:ステップサイズ は滑らかでない場合でも にして良いか? • Polyak-Ruppert 平均化 • α-suffix平均化 • 多項式減衰平均化 [Rakhlin et al. (2011), Shamir&Zhang (2012)] [Lacoste-Julien et al. (2012), Shamir&Zhang (2012)] ステップサイズ:
  23. 23. バッチ最適化との比較 23 なめらかな強凸関数において比較する. :minimax最適レート だけ得をする →サンプル数が巨大な時は確率的最適化が有用 [Nemirovski&Yudin,83][Agarwal+etal,10] (最悪な期待リスク) :経験リスクと期待リスクの差 [Bottou,10]
  24. 24. 正則化学習における オンライン確率的最適化 24
  25. 25. 正則化学習での確率的勾配法 25 を小さくしたい. c.f. FOBOS [Duchi&Singer,09] 例:L1正則化 (高次元モデルにおけるスパース学習) Soft threshold 更新途中でもスパース!
  26. 26. 26 : proximal operation 先の更新式は次のように書ける: proximal operationが簡単に計算できる正則化関数の例. ① グループ正則化 ② トレースノルム最小化( ) とSVDされている時, 低ランク性 グループスパーシティ
  27. 27. ミニバッチ法 27 各反復での勾配計算を一サンプルだけでなく, 小規模のまとまったサンプルを用いて計算.
  28. 28. Regularized Dual Averaging 28 RDA: 確率的最適化(オンライン最適化)の別の方法 [Xiao,09; Nesterov,09] :勾配の平均を用いる FOBOSよりも途中の解がスパースになりやすい
  29. 29. 関連手法 29 Composite Objective Mirror Descent Adaptive Subgradient Methods [Duchi+etal,10] KL-divergenceを用いればexponentiated gradient descent あまり発火しない特徴量を強調する. [Duchi+etal,10] (FOBOS型) (RDA型)
  30. 30. 構造的正則化学習における オンライン確率的最適化 30
  31. 31. 構造的スパース正則化 31 例1:Group Lasso グ ル ー プ 構 造 重 複 あ り
  32. 32. 32 例2:低ランクテンソル推定 = 12 3 低ランク
  33. 33. 33 例3:グラフ型正則化 1 2 3 4 5
  34. 34. 応用例 34 ゲノムワイド相関解析 (GWAS) (Balding ‘06, McCarthy et al. ‘08) Gpoup1 Gpoup2 Gpoup3
  35. 35. 構造的正則化学習の難しさ • Proximal operationが簡単に計算できない 35 重 複 あ り 重 複 な し 簡単 難しい
  36. 36. •各正則化関数に応じた賢い方法で解く [Yuan et al. 2011] •変数を増やして問題を簡単にする (汎用的) を満たし が計算しやすい • 重複ありグループ正則化 36 重 複 あ り グループ間に変数の絡み • 解決策 を利用する. idea:
  37. 37. 37分離凸 と変形. 重複なし
  38. 38. • FOBOS型ADMM 38 • RDA型ADMM 線形近似 スムージング 確率的ADMM 交互方向乗数法 + 確率的最適化 [Suzuki, ICML2013] [Ouyang+etal, ICML2013]
  39. 39. 確率的ADMM • FOBOS型ADMM 39 • RDA型ADMM 交互方向乗数法 + 確率的最適化 実装が簡単! [Suzuki, ICML2013] [Ouyang+etal, ICML2013]
  40. 40. 収束レート 40 条件 データ: • 一般の凸ロス関数 • 強凸正則化関数 •データはi.i.d.系列 •ロスと正則化項はLipschitz連続 •wのドメインは有界
  41. 41. 数値実験:確率的ADMM 41 人工データ 実データ(Adult, a9a @LIVSVM data sets) 1,024次元 512サンプル 重複ありグループ正則化 15,252次元 32,561サンプル 重複ありグループ正則化+ L1正則化 最 適 値 と の 差 テ ス ト デ ー タ で の 判 別 誤 差 提案手法 [Suzuki, ICML2013]
  42. 42. 発表の構成 • 最適化問題としての定式化 • オンライン確率的最適化 – 確率的勾配降下法 – 正則化学習におけるオンライン確率的最適化 – 構造的正則化学習におけるオンライン確率的最適化 • バッチデータに対する確率的最適化 42
  43. 43. 43 バッチデータに対する 確率的最適化
  44. 44. • オンライン最適化: サンプルを一回しか見ないことを想定 • バッチの設定: 44 サンプルを何度も利用してよいなら もっと速い収束が望めるのでは? → Yes - Stochastic Average Gradient (SAG): Le Roux, Schmidt, Bach (NIPS 2012) - Stochastic Dual Coordinate Ascent (SDCA): Shalev-Shwartz, Zhang (NIPS OPT-WS 2012 ) 線形収束 (目的関数が指数的に減少)
  45. 45. Stochastic Average Gradient (SAG) 45 [Le Roux, Schmidt, Bach (NIPS 2012)] 各ステップにおいて をランダムに選択し, ロス関数が滑らか,かつ目的関数Lが強凸の時, とすると 指数的収束
  46. 46. 46 [Le Roux, Schmidt, Bach,12] データ1 データ2 データ3 経験リスク 期待リスク 判別誤差 緑色がSAG
  47. 47. SAGの性質 • 指数的収束→サンプルを複数回観測すると確率的勾配法よりも 高い精度を得る. • 一回の更新にかかる計算時間は確率的勾配法と同じオーダー. • バッチ最適化と確率的勾配法の中間的位置づけ. • 問題点:全てのサンプルでの勾配の値を記憶しておかなくてはい けない. →巨大データではメモリが足りなくなる. 次に紹介するSDCAではメモリの問題がない. 47
  48. 48. 正則化学習の双対問題 48 Fenchel双対定理 Fenchel双対定理:例えばRockafeller, Convex Analysis (1970) のCorollary 31.2.1 双対問題 主問題 L*らはLをLegendre変換したもの(次ページ) SDCAの定式化
  49. 49. Legendre変換 49 凸関数を傾きの情報から眺めたもの
  50. 50. ロス関数の双対 50
  51. 51. 51 正則化関数の双対
  52. 52. Stochastic Dual Coordinate Ascent 52 1. をランダムに選択 2.次元 方向に最適化 3. 上の1,2を繰り返す. が強凸で が滑らかな時, 双対ギャップの期待値 [Shalev-Shwartz&Zhang,2012] 指数的収束 関連手法:Lacoste-Julien et al., 2012 (Stochastic block-coordinate Frank-Wolfe法) (一次元最適化) ※ 正則化関数(の双対関数)を線形近似することも可能.
  53. 53. 53 指数的収束 [Shalev-Shwartz&Zhang,2012]
  54. 54. まとめ • オンライン確率的最適化 – 大サンプル学習問題においてサンプルを一つ見るごとに 逐次的に更新する手法 – 経験誤差最小化は厳密に解く必要はない • バッチデータに対する確率的最適化 – サンプルを複数回利用可能 → 逐次的更新で指数オーダの収束 54 一般のロス関数: (滑らかな)強凸リスク関数:収束レート

×