kdd2014勉強会 発表資料

15
Efficient Mini-batch Training for Stochastic Optimization 京大石井研 M2 小山田創哲 @sotetsuk @ KDD2014読み会 関西会場 Li, M., Zhang, T., Chen, Y., & Smola, A. J.

Upload: sotetsu-koyamada

Post on 04-Dec-2014

1.032 views

Category:

Data & Analytics


3 download

DESCRIPTION

Li, Mu, et al. "Efficient mini-batch training for stochastic optimization." Proceedings of the 20th ACM SIGKDD international conference on Knowledge discovery and data mining. ACM, 2014. http://www.cs.cmu.edu/~muli/file/minibatch_sgd.pdf KDD2014勉強会関西会場: http://www.ml.ist.i.kyoto-u.ac.jp/kdd2014reading

TRANSCRIPT

Page 1: KDD2014勉強会 発表資料

Efficient Mini-batch Training for Stochastic Optimization

京大石井研 M2 小山田創哲

@sotetsuk

@ KDD2014読み会 関西会場

Li, M., Zhang, T., Chen, Y., & Smola, A. J.

Page 2: KDD2014勉強会 発表資料

紹介する論文

Page 3: KDD2014勉強会 発表資料

SGDと最近の傾向 ビッグデータと計算機性能の向上を背景に 膨大なパラメータ数の識別器を,大量のデータで SGD(Stochastic Gradient Descent) によって学習する場面が目立つ

例えば Deep learning

[Taigman  et  al.,  2014] [Le  et  al.,  2012] [Szegedy  et  al.,  2014]

Page 4: KDD2014勉強会 発表資料

SGD Stochastic Gradient Descent 【問題】次のコスト関数の最小化をしたい

【SGD】次のように逐次的に最適化

Ex.

Page 5: KDD2014勉強会 発表資料

MSGD Mini-batch SGD

Page 6: KDD2014勉強会 発表資料

Distributed implementation 応用上,パラメータ数やサンプルサイズが膨大な場面では,分散処理が行われる.

【問題点】更新式の実行毎にコミュニケーションコストが発生する

コミュニケーションの回数を減らして, たくさんのデータをみるため,batch size を大きくしたい

Page 7: KDD2014勉強会 発表資料

MSGDのトレードオフ コミュニケーションコストを減らして,たくさんデータをみるため,batch sizeを大きくしたいが, batch sizeを大きくしすぎると,たくさんのデータをみても,なかなか学習が進まなくなる. n コスト関数が凸な場合について,理論的に収束が遅くなることが示される [Dekel  et  al.,  2012]

Page 8: KDD2014勉強会 発表資料

提案手法 Batch sizeを大きくしても学習が遅くならないMSGDを提案 基本アイディア:

Mini-batch毎の一回の更新の質を向上させる

各mini-batchにおけるパラメータの更新を 正則化項を含むコスト関数の最小化問題の近似 だと捉える(次で説明)

Page 9: KDD2014勉強会 発表資料

提案手法の基本アイディア Mini-batch毎の一回の更新の質を向上させる

と等価.さらにこれを

の一次近似とみなす.これをMini-batch毎に解く.

[ ]の中をwで微分 して0とおくと…

Mini-batch毎の更新を正則化項を含むコスト関数の最小化問題 (部分問題)へと発想を逆転させる

Page 10: KDD2014勉強会 発表資料

EMSO(提案手法) 各mini-batch毎に定義される部分問題を また勾配法で解く n EMSO-GD

n Gradient Descentで解く n EMSO-CD

n Coordinate Descentで解く

図はh"p://en.wikipedia.org/から参照

Page 11: KDD2014勉強会 発表資料

並列計算でのEMSO Mini-batchのデータを分割して, それぞれについて をEMSO-GDまたはCDで 並列に計算し,それらの平均をとって更新する

Page 12: KDD2014勉強会 発表資料

数値実験 n データセット

n KDD04 n URL n CTR

n モデル n Logistic regressionによる2値分類

表は論文より参照

Page 13: KDD2014勉強会 発表資料

単一ノードでの結果 URLデータセット

すべて10^7サンプル学習後 Batch sizeは各手法 毎に最適なものを使用

EMSO-CD が10倍早い

 図は論文より参照

Page 14: KDD2014勉強会 発表資料

複数ノードでの結果

単一ノードの時と同じく EMSO-CDが10倍早い

ノード数を変えた時 EMSO-CDのコストが 特定の値まで下がるまでに 要した時間の比較

 図,表は論文より参照

Page 15: KDD2014勉強会 発表資料

総括 【手法】

Mini-batch毎の更新を,正則化項を含むコス ト関数の最適化問題で置き換え,より繊細に更新を 行うことによって,batch-sizeを大きくしても 学習が遅くならない手法を提案している

【理論】

凸なコスト関数を仮定した場合,bが大きい時の収 束速度の改善が証明されている(今回触れず)

【数値実験】

二値分類Logistic regressionにおける数値実 験でEMSO-CDが他の手法より高い性能を示した