ELLA: An Efficient Lifelong
Learning Algorithm
株式会社Preferred Infrastructure
海野  裕也  (@unnonouno)
2013/07/09
ICML2013読み会@東大
⾃自⼰己紹介
l  海野  裕也 (@unnonouno)
l  プリファードインフラストラクチャー
l  情報検索索、レコメンド
l  機械学習・データ解析研究開発
l  Jubatusチームリーダー
l  分散オンライン機械学習フレームワーク
l  専⾨門
l  ⾃自然⾔言語処理理
l  テキストマイニング
2
要旨
l  Lifelong learningのためにGO-MTLの精度度をほとんど落落
とさずに、1000倍早くした
l  ⼿手法の要旨は以下の2点
l  テーラー展開して元の最適化の式を簡略略化
l  再計算の必要な項の計算を簡略略化
3
Lifelong learning
4
Lifelong learning
l  タスクが次々やってくる
l  Z(1), …, Z(Tmax)
l  学習者はタスクの数も順番も知らない
l  各Zは教師有りの問題(分類か回帰)
l  各タスクにはnt個の教師ありデータが与えられる
マルチタスクで、タスクが次々やってくるイメージ
5
Lifelong learningのキモチ(ホントか?)
l  ずっと学習し続ける
l  データセットはオンラインでやってくる
l  過去の学習結果をうまく活かしたい(似たような問題、
組み合わせの問題が多い)
例例えば将来的に、ずっと学習し続けるインフラのようなモ
ノができた時を想定している(のかも)
6
Grouping and Overlap in Multi-Task Learning
(GO-MTL) [Kumar&Daume III ’12]
l  L: 損失関数
l  w = Ls: モデルパラメータ
l  L: k個の隠れタスクの重み
l  s: 各タスクをLの線形和で表現する役割
l  sは疎にしたいのでL1正則化
7	
収束の証明のために
ちょっと変えてある
GO-MTLが遅い
l  GO-MTL⾃自体はマルチタスクのバッチ学習⼿手法なので
データが次々やってくるLifelong learningに適⽤用しよう
とすると遅い
l  2重ループが明らかに遅そう
8
⼯工夫1: 損失関数の部分をテーラー展開
9	
θ(t)の周りで2次の
テーラー展開
⼯工夫2: 全てのtに対するs(t)の最適化を⾏行行うのは⾮非効
率率率
10	
s(t)の最適化を
順次行う
実際の更更新式
l  L = A-1b
l  実際に計算するときは、Aとbは差分更更新できるような⼯工
夫が⼊入っている
11
実験結果
12	
バッチとほとんど同じ精度度で1000倍以上速い!!
あれ、よく⾒見見ると・・・
13	
Single Task Leaning (STL) でもそこそこだし、
当然もっと速い・・・
まとめ
l  マルチタスクのバッチ学習であるGO-MTLをLifelong
learningに適⽤用するために、⾮非効率率率な部分を効率率率化した
l  ほとんど精度度を下げずに、1000倍以上⾼高速化した
l  タスクを独⽴立立に解いてもそこそこの精度度が出ていて、実
験設定はもう少し考慮しても良良かったのかも
14

ICML2013読み会 ELLA: An Efficient Lifelong Learning Algorithm