情強アルゴリズムL-BFGSの実装
棚橋 耕太郎
2015.11.6
l−bfgsってなに?
• l-bfgsはscikit-learnやspark MLlibなどで使われている計算
機に優しい(メモリ使用量が少ない)最適化アルゴリズム
• 準ニュートン法の一種
• 今日はスライドが多いので、15秒/1ページでいきます
(局所的)最適解
ニュートン法ってなに?
ルール
• まっすぐしか歩けない
• できるだけお金が多い場
所に行ける方向を探した
い
近くしか見れない人
(最急降下法)
ちょっと遠くも見れる人
(ニュートン法)
つまりこういうことです
(局所的)最適解
ちょっと遠くも見れる人
(ニュートン法)
近くしか見れない人
(最急降下法)
そう、こういうことです
ヘッセ行列
まとめると、こうなります
本題はここから
自明 自明
Bnを求める手がかりができた!!
もう一つの手がかり
Bnの更新式
疑似コードで書くと
pythonで書くと
全体も実装してみる
メイン部分
line-search部分
計算問題を解く
結果