クラシックな機械学習の入門 7. オンライン学習
DESCRIPTION
1データ毎に分類器を更新する学習法であるオンライン学習について説明する。古典的なパーセプトロンもオンライン学習の一種と考えられる。また、オンライン学習の評価法として学習速度、失敗回数、Regretなどを説明するTRANSCRIPT
7. オンライン学習
定式化
評価法:Regretなど
パーセプトロン
Passive Aggressive Algorithm
(アルゴリズムと損失の限界の評価) Confidence Weighted Algorithm
Pegasos
Coordinate Descent
バッチ、オンライン、ストリームの比較
ビッグデータへの対応
クラシックな機械学習の入門
by 中川裕志(東京大学)
オンライン(あるいは逐次)学習とは
データを1つづつ読み込んで、それまでの学習結果を更新する。
2つの利用局面
1. データ全体は保持しているが、学習を1データ毎に行う
2. データが1こずつ時系列としてやってくる
この場合はストリームという。
データ全体をメモリの乗せなくてよいのでマシンに必要なメモリ少、あるいはメモリに乗りきらないほど大きなデータから学習可能
1個のデータからの学習(これを1roundという)だけなら高速
オンライン学習の概観
以下1,2,3を時刻 t=1,2,…,Tで繰り返す
1. 時刻tにおいて、仮説ht、入力データxt 、正しい結果データyt∈Yが与えられる。
2. 仮説ht による結果h (t) (xt)を計算し、その後でytとの比較を損失関数lによって行う。 つまりl(h (t) ,(xt , yt ))を計算
lとしては2乗損失やヒンジ損失など
3. 損失関数lの値に応じてh (t) を更新し、新しい仮説 h (t+1)を求める
最終的な目的の累積損失 などを最小化すること
簡単(線形)な仮説として重みベクトルwとxの内積 𝐰, 𝑥 を使う場合はhを𝐰と書き、 と定義
T
t tt
t yh1
)( ,, xl
ttt yf ,, xww l
識別関数h(t)
データ
xt
正解(実測あるいは人手による)
yt
予測
h(t)
(xt)
If 予測≠正解
then 更新:h(t)→h(t+1)
オンライン学習のイメージ
オンライン学習の評価法
仮説hのなす空間をH, tラウンドの予測値をh(t)
(xt)
累積損失 (最小化したい):
Mistake(失敗回数)のupper bound
以後は識別に失敗しなくなるまでの学習回数=学習データ数
T
t ttt
t yh1
)( ,, xxl
T
t tth
T
t ttt
t
h
T
t tt
T
t ttt
t
yxhyxh
h
hyxhyxhh
1
*
1
)(
*
TT
*
1
*
1
)(*
T
,,min,,
RegretmaxRegret
:,,,,Regret
*
*
ll
H
Hll
H
H
x
x
オンライン学習をオンライン凸最適化の観点から定式化 By Shai Shalev-Shwartz
以下では L(w ,(xi , yi )) をfi (w)と略記することに留意。
最も簡単なオンライン学習は、過去の全roundの損失を最小化するようなwを選ぶ方法:Follow-The-Leader(FTL)
T
t
tttt
T
t
tttT
t
i
iSw
t
ffff
S
FTL
Sft
1
1
1
21
1
1
Regret
, 10 Lemma
minarg
(FTL)Leader TheFollow
wwuwu
u
ww
www
トルで生成された重みベクを
の取り得る範囲で凸は
より。 □の定義最後の等式は
でも成り立つで成立し、この式は
を加えると両辺に
仮定する。つまりで不等式が成立すると
を選べる。より、式の成立するの定義の場合は
を帰納法で導く。 そこのこの不等式
き移項するとの不等式の両辺から引を
T
t
tS
TT
T
t
tS
T
t
Tt
T
t
tt
T
T
t
tTT
T
t
tt
TT
T
t
t
T
t
tt
t
T
t
t
T
t
tt
t tt
f
fff
S
fff
fffS
Tt
fT
ff
f
1
11
11
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
121
11
1
minarg
min
1 :step induction
minarg1 :case base
10Lemma
Proof
www
uww
wuu
uww
wuwu
uwww
uw
w
w
u
w
Follow-The-Regularized-Leader (FoReL)
FTLではwに制約がないので、過学習が危ぶまれる。そこで、正則化項(Regularizer)を加えたものを最適化(FoReL)
□ とおけばよい
とし、で
トルで生成された重みベクを
の取り得る範囲で凸は
RfTt
ffRRffS
wSRft
T
t
tttt
T
t
ttt
t
i
iSw
t
0
1
11
1
21
1
1
..0Lemma10 Proof
FoReL, 02 Lemma
minarg
FoReL
wwwuuwu
ww
www
Example of FoReL: 2
22
1ww R
30
2
1,0
2
1,minargFoReL
0 where2
1,
1
1
1
1
2
21
2
21
1
2
2
tttt
tt
t
i
it
t
i
i
t
i
i
t
i
it
d
tt
f
RRSf
www
zwzw
wzwzw
w
wzww
wwzww
つまり
を使えばより、
は この場合は
で正則化項かつ
Online Gradient
Descent: OGD
FoReLのRegretのUpper Bound
Theorem 30
T
t
t
T
t
ttt
T
t
ttttT
TU
T
T
t
t
T
t
tT
d
tt
ffRR
TBLUTL
B
LT
BU
RRSf
1
2
2
2
21
1
2
2
1
11
2
1
2
2
1
2
2
2
2
2
2
2
1 ,
2
1
Regret
(30)20 Lemma Proof
2RegretinfRegret2
then
1 and : if
2
1Regret
2
1,,,
zuzwwu
wwwuu
u
zuu
zuuu
wwzww
u
よりと式
とおくと
とする
Regretの上限が
𝑇に比例していることに注目!
損失fが連続でない場合
Sub-gradient(劣勾配)のFoReL
fの凸性が重要
tttttt f
f
ffz
ffSS
SfS
wzzww
w
w
w
zw,uwuuzw
where
, 0 ,0
DescentGradient Online
gradient-sub)50(
)50( , , iff
50 Lemma
1
1
が以下。 これを使った
と同じ。連続なら
と書く。 と呼び のの集合をを満たす
上の凸関数 がが凸集合、
2
1 ,
2
1
Regret
OGDgradient -subin plugTheorem30 and 02 Lemma
,,
round
)50( , , iff
50 Lemma
(60)2
1 ,
2
1
Regret
FoReL, :Theorem30 and 02 Lemma
1
2
2
2
21
1
2
2
1
11
1
1
1
111
11
111
1
2
2
2
21
1
2
2
1
11
1
21
T
t
t
T
t
ttt
T
t
ttttT
T
t
tttt
T
t
ttttttttttt
ttttttt
tttttttt
T
t
t
T
t
ttt
T
t
tttt
T
t
Tttt
ffRR
ffff
fft
ffSS
SfS
ffRRffS
zuzwwu
wwwuu
zwzwwwz,wwww
z,wwww
z,wwwwwzw
zuzwwu
wwwuuuwu
ww
でもするとにこれを
だからに対して凸だと各
上の凸関数 がが凸集合、を少し変形して再掲:
トルで生成された重みベクを再掲:
Sub-gradient の場合のFoReLのRegret Bound
問題はこの部分
30 Theorem as same 22
1Regret
,
where Lipfshitz
where,
gradient-sub
2
1
2
1Regret
22
2
2
21
11
11
11
22
21
2
2
2
2
TBLTL
LL
L
LffLLf
fff
TL
T
tttttt
ttttt
tttt
ttttttt
t
T
t
tT
uu
zzzwwz
wwzww
wwww
wzwwzww
z
uzuu
だったので
上の2式を合わせると
だとするとが
の定義から
ことを示す必要があるが上から押さえられるそのためには
にしたいが
このboundは1
2 にできる。
付録参照
FoReLの上界を厳しくする
• まず、FoReLの別形式を導入する
)(;
;
,..,1for
0 initialize
FoReL,maxarg
,maxarg
,minarg
1
1
1
1
1
tttttt
tt
t
i
i
t
i
it
f
g
Tt
Rg
R
R
wzzθθ
θw
θ
wθwθ
wzw
zwww
w
w
w
は次式で書ける とおくとここで
Online Mirror Descent
(OMD)という
数学的ツールの準備
• Fenchel-Young 不等式
uθuθ
θuθθu
uθuθu
uθuθu
ff
ff
ff
ff
,
,,
,max
で微分可能なら あるいは
とすると
22
,max2
22
*
2θw
θwθw
ww
RR
数学的ツールの準備 • Bregman Divergence: DR
)1(2
,22
2
,
2
21
212
2
2
2
121
*
2
*
*
DR
D
RR
RRRD
R
R
zz
zzzzzzz
zzz
z
uwuuwuw
だと
uwRD
T
t
t
i
i
t
i
iRtt
T
t
t
i
i
t
i
iRtt
T
t
t
T
t
t
T
t
t
i
i
t
i
iRtt
T
t
t
i
i
t
i
i
T
t
t
t
i
itt
T
t
t
T
t
t
T
t
t
T
t
t
i
i
t
i
iR
T
t
tt
DRR
DRRRR
RRRR
DR
RRRR
Rg
RRR
DRR
Rg
1
1
11
1
1
1
1111
1
1
1
11
1
1
111
1
1
111
1
1
11
1
1
||,
||,0,
)4(min,0max0
)3(||,0
0
DivergenceBregman
)2(
)1(,,
Young-Fenchel
Proof
||,
DescentMirrorOnline :OML1
zzzwwu
zzzwuzuzu
wwww
zzzw
zzz
zθw
zzuuzuu
zzwuzuw
ww これらを合わせるとなお、
の定義より
不等式から
であるならで 補題
20,
1
1 OMD1 Proof
1022
,
2,
2
Descent Mirror Online
1
1
22
1
2
2
1
2
*
2
OMDTBL
BTL
B
TL
DR
OMD
RR
T
t
tt
T
t
t
T
t
t
T
t
tt
zuw
uz
zu
zuw
θθ
ww
とするとただし かつ
より明らか ■ と 補題
とする。であるつまり
において
定理 OMD2
パーセプトロン(Perceptron)
FoReLから導出されたOnline Gradient Descent
の例としてパーセプトロンを紹介する。
パーセプトロンはF. Rosenblattが1956年に提案した線形識別の繰り返しアルゴリズム
効率がよく、現在でもその価値が高い
入力xtが目的のクラスに
属する場合にyt=1, 属さない場合にyt= −1
右図
正 これより失敗側では00
,
t
ttt
f
yf xwwtty xw,
𝑓𝑡 𝑤 のsub-gradientを計算すると
ηは正
次にPerceptronのアルゴリズムが得られる。
FoReLの別形式として導入したOnline Mirror
Descentとみれば、(OMD20)の上界が使える
otherwise
0, if
DescentGradient Online
otherwise
0 then 0, if
1
1
ttt
tttt
t
ttt
ttttttt
ttttttttt
y
y
fyf
fyf
xw
xwww
zww
wxzw
zwxwwz
に当てはめるとの形式:
Perceptron アルゴリズム
else
en th
0, if
入力
21for
0
1
1
1
tt
tttt
ttt
t
y
y
,...,T,t
ww
xww
xw
x
w
初期化:
分類に失敗したときだけ
そのデータを分類器Wに足し込むという至って単純な更新
線形分離可能性
線形分離可能:クラスを識別するする超平面が存在する場合
そうでない場合を線形分離不可能という。
下図参照
線形分離可能 線形分離不可能
γ:マージン
Perceptronアルゴリズムの分析
ttyt
t
tttt
T
t
t
T
t
t
T
t
ttT
y
f
yf
ff
tttx1z
xw
zuuwu
xw 0,
1
2
2
2
211
gradient-sub
],1[
(60) 22
1Regret
は
界は甘くなる。)より必ず大きいので上(もとの
で近似する。ためここで解析の容易さの
Wt,Xtをスケール変換し
て、最も0に近い正例で𝑤𝑡, 𝑥𝑡 =1となったと見なしたと考えてもよい
FoReLの別形式として導入したOnline Mirror
Descentとみれば、(OMD20)の上界が使える
Perceptronアルゴリズムの分析
ータと境界面の距離は境界面に最も近いデ線形分離できる場合
データが線形分離可能
のときなので=の右辺の最小値は
とおくとの形より明らかに
回数、の集合をを起こした判定の失敗
u
uu
uxuu
uuu
u
xw
x
1
:0 then 1, if
(70) 22
1
)60(
max
mistakemistake:
2
222
1
22
1
1
RRR
fy
RRf
R
Rff
T
t
ttt
T
t
t
tt
T
t
ttt
t
MMM
MMM
M
M
MM
Passive Aggressive Algorithm
K.Crammer et.al. Online Passive-Aggressive Algorithms
Journal of Machine Learning Research 7 (2006) 551–585
識別(あるいは分類)の問題設定
round t でn次元データ が到着
の正負は のように与えられる
重みベクトル:
正しい(誤った)判定:
wtはデータが到着するたびに更新されている
n
t Rx
tx 負 正 :1,:1 ty
正負を表すので:, xwsignRw n
00, 、 ttt xwy
損失関数による定式化 境界面そのもので判定はきわどいのでマージンを持たせる。マージンを1とした場合の損失関数(hinge-loss function)は以下の通り
この設定で、round tの更新は次の条件付き最適化問題となる。
と書く以下では tttt y
otherwisey
yy
,;
1
10,;
xw
xw,
xw,xw
0
1 xwy
xwy
,
,1
10,..||||2
1minarg 2
1
PAyts tttRw
tn
xw;www
FoReLとして見ると
できない。のような簡単な解析が
に依存するため個別の
はに相当するの定式化では次ページのように
の取り得る範囲で凸は
)60(
,,
FoReL
2
1,;minarg
minarg
FoReL
2
2
1
1
1
1
ttt
t
t
i
iiiSw
t
i
iSw
t
y
y
wSRft
wx
wwxw
www
最適化問題(PA-1)を解く
If lt=0 then wt minimizes
wt+1 =wt
If lt≠0 then Lagrange 未定乗数法で解く。
2||||2
1tww
ttttt
t
ttt
t
tttt
ttttttt
ttt
ttt
yy
yL
yLy
yL
yL
xwwx
xw
xwx
xwxxww
xwww
w
xwwww
12
2
22
2
,1
0,1
,12
1
0,
,12
1,
Passive
Aggressive
Passive Aggressive
xt
tt ww 1
Passive
xt
ttttt y xww 1
Aggressive
2
t
tt
x
soft marginの学習法 PA-I, PA-II
IIPA
C
IPAC
y
IIPAytsC
IPAytsC
t
tt
t
tt
ttttt
tttRw
t
tttRw
t
n
n
2
1,min
,;..2
1minarg
0,,;..2
1minarg
22
1
22
1
2
1
xx
xww
xwwww
xwwww
INPUT: aggressiveness parameter C > 0
INITIALIZE: w1 = (0, . . . ,0)
For t = 1,2, . . .
• receive instance: xt ∈ Rn
• predict: ˆ yt = sign wt ,xt
• receive correct label: yt ∈ {−1,+1} • suffer loss: lt = max{0 , 1−yt wt ,xt }
• update:
1. set: (PA)
(PA-I)
(PA-II)
2. update: wt+1 = wt +τt wt ,xt C
C
t
tt
t
tt
t
tt
2
1
,min
2
2
2
x
x
x
Passive Aggressive Algorithm
付録:PA-Iの導出
)41(
12
1),,,(
)11(2)-1(
1 case
2) case(1) case(
)31(0)21(0
0
)21(00
0
)11(0,012
1
12
1),,,(
2
2
22
2
2
paxPA
wxwywwwL
papa
xCxC
paCCpaKKT
L
CC
paCC
xywww
L
paxwyCww
xwyCwwwL
LagrangianIPA
ttt
tt
tttt
ttt
tt
tt
と同じく 元々の
について最適化するととなるので、これを
に代入しを
に分けて考える。と以下では
よりなので、条件より
の最小化ができない。ので、
れるはいくらでも小さくなすると、 である。そうでないと
のとき。 で の最小値は
は以下の通りの
2
22
2
2
1
22
,min2) (case 1) case(
)21(00
0)31(
)61()81(
)81(,1
0 and )71(,1.2
1minarg
)61(,1/2 case
t
tt
tt
ttttttt
tttw
t
tttttt
xC
CpaKKT
Cpa
xxCpapa
paxxwyxyww
paxwytsCwww
onoptimazati
paxwyxCCx
を合せると
より なので、条件から
だったから、 で
を組み合わせると と
により と
元々の
付録:PA-IIの導出
2
1
2
1
10
12
1
2,
202
0
)12(0 12
1),,(
000
22
22
22
■
に代入するとをとこの
ばよいの場合について考えれ
Cx
Cx
xwyL
xwyC
xwL
LwCCL
xywww
L
paxwyCwwwL
t
t
t
ttt
tttt
ttt
tt
ttt
損失の限界の評価
ttttttt
t
yxullyxwll
lu
,;,; *
*
とする。に対する損失をベクトル任意の固定された重み
2
1
*2
11
22
の
parameterにおける更新式 Algorithm のII-PA I,-PA PA, は
11, はデータ列。ただし
1 Lemma
T
t
ttttt
n
t
t
n
tTT
uxττ
Ru
τ
,+ yRx , yx, . . . ,, yx
に対して上記
の
Proof
22
2222
222
1
2
1
2
1
2
11
2
1
2
1
1
2
1
2
1
2
1
2
,2
,2
0
00,0violatemargin minimum
00
ttttttt
tttttttt
tttttttt
tttttt
ttt
T
t
t
T
T
T
t
tt
T
t
t
tt
def
t
xxxuwy
xxuwyuwuw
xyuwuwuwuw
xyww
u
uww
uwuwuwuw
uwuw
の場合にだけ注目:よって、
しない場合は、を
なので
■
同じく
の場合
*2
22*
22
*
22
112
,2
1,
1,,10
ttttt
ttttt
ttttttt
ttt
ttttttttt
x
x
xxuwy
xuy
xwyxwy
22
1
2
* max,0..1 Lemma
2
Ru
Rxttsu
Theorem
T
t
t
tt
t
と同じ設定。
Proof
■
では
2
1
22
1
22222
1
2222
2
1
2*
PA
21 Lemma and 0
RuuRRxt
uxxτ
uxττt
T
t
t
T
t
tt
T
t
ttttt
T
t
ttttt
0.. * tlttsuTheorem 2では次の制約が厳しい。
この制約は、uで完全な識別ができること。
この制約を外す定理を考える
2
1
2*
1
2
*2
2
,;1
1 Lemma
3 Theorem
T
t t
T
t
t
n
tttt
u
Ruyxuxt
に対してであるような このとき
と同じ設定。
Proofは次ページ
■
を使うと
ほうの解。とした2次式の大きなをは上式での最大値
とおくと ここで
だからより
2
1
2*
1
2
1
2*
1
2
2
1
2*
1
2*
2
1
2*2
1
22
1
2*
1
2
1
2
1
2*
1
2
1
*
2
1
*
1
2
1
2*2
2
2max
2maxmax
max
max
02
2
Schwartz-Cauchy
222
1
u
uLTbaba
uLT
LTLT
ulLTLT
LTlulll
llll
ulllulxτlτ
lx
T
t
t
T
t
t
T
t
t
T
t
t
T
t
t
T
t
t
T
t
t
T
t
t
T
t
t
T
t
t
T
t
t
T
t
t
T
t
t
T
t
tt
T
t
tt
T
t
t
T
t
ttttt
ttt
Proof
Proofは次のページ
T
t
t
t
ttt
CuCRmistakes
Cx
Rx
1
*22
2
22
21,max#
,min
PA-Iにおける入力データ識別の失敗回数の上限
■
を掛けるとの両辺に
より
に代入すると これを
かつ
なので
回数とする。るを繰り返し全体におけ
よりと
が起きたとすると回目の繰り返しで
T
t
t
T
t
t
T
t
t
T
t
tt
T
t
ttttt
ttttttttt
T
t
tttt
tttttt
t
CuCRM
CR
CuMCR
Cu
uxττ
xCyxu
MCR
mistakeM
CRCxRx
mistaket
1
*22
2
1
*22
1
*2
1
1
2*2
2***
1
2
2222
21,max
1,max30-pa1
30-pa1 2,1min20-pa110-pa1
20-pa1 2
22 1 Lemma
,;
10-pa1 ,1min0
,1min ,min
1
PA-IIにおける累積損失の上限
T
t
t
T
t
t
t
ttt
CuC
R
Cx
Rx
1
*22
1
2
2
22
22
1
2
1
Proofは次のページ
■を使えば、
1を代入すると
1
を代入すると
ただし
を差し引く内でで右辺の
22
1
2
2
21
22
2
21
2
222
22
21
22 :1 Lemma
1
*22
1
222
1
2*
2
222
1
2*222
1
22*222
1
22**22*22
1
2**22
2*
1
*22
T
t
t
T
t
tt
T
t
t
t
tttt
T
t
ttttt
T
t
ttttt
T
t
tttttttttt
T
t
ttttttt
tt
T
t
ttttt
CuC
RRx
C
Cx
uCxτ
CC
xττu
C
xττ
τττxττ
τxττu
C
τxττu
Confidence Weighted
Algorithm
Crammer et al. 2008
学習する重みベクトルWを点ではなく分布(正規分布)にする
Wの期待値と分散を更新する
Pegasos: Primal Estimated sub-GrAdientSOlver for SVM
L2正則化+L1損失のSVM
Pegasosの更新は次式による
更新の後、wを半径 の球にproject
以上を収束するまで繰り返す。データ集合Aごとなので、onlineというよりはmini-batch
AkAyk
BfBi
T
i
は学習に使うデータ、 1,0max1
2;min
2
2xwww
w
は繰り返し回数の次元、,はベクトル
の要素の劣微分は
tlt
yAiiAyA
Afwhere
AffAfAf
i
i
T
i
Ai
iit
ttttt
xw
xwxww
wwwww
,1
,01,|1
;
;; ;2/1
/1,1min
www2
/1,1min
Pegasos:Primal Estimated sub-GrAdient
SOlver for SVM のアルゴリズム
1
2/1
2/1
1
2/1
1
:Output
1,1min
1
1
0,1|
T,1,2,......For t
0:
T
t
t
t
Ai
ii
t
t
t
t
t
t
ititt
tt
t
yA
t
yAiA
kAAD
w
ww
w
xww
xw
w
を選ぶ。から全データ
初期化
f(w)の評価
という。が凸のとき、は、また、関数
とする。まず
convexstrongly 2
minarg
2
*
ww
www
ff
f
T
TGf
Tf
T
BG
ttB
f
Bff
T
t
t
T
t
tt
tt
tttttB
t
ttT
T
2
ln111
1minarg 1 ,
,...,
convexstrongly -,..., Lemma1.
2
11
11
11
1
uw
uw
wwwww
ww
w
つに対して次式が成り立のとき、
ただし
の劣微分の要素はルの列とする:を以下のようなベクト
を閉凸集合とする。とし、を
TG
t
GT
t
Gtt
t
Gtt
Gff
Tt
Gff
G
tG
B
projectionB
ff
f
T
t
t
T
t
T
t
tt
T
t
T
t
t
tt
t
T
t
tT
t
t
t
ttT
t
ttt
tt
t
tt
ttt
t
t
tt
tt
tt
ttttttttt
tt
tttttt
tttttt
tt
ln12
1
22
1
21
1
222401
40222
,130
30222
20)10(
2022
,
)15(1
)15(2
)10(2
convex-strongly :Proof
2
1
22
1
1
2
1
2
1
2
1
2
1
2
2
1
2
1
2
1
2
2
1
2
1
22
2
1
2
2
2
1
2
22222
1
2
2
1
2
1
2
uwuwuw
uwuwuw
uwuwuw
uw
uwuwuw
uw
uwuwuw
uwuwuwuwuw
uwuwu
wwww
uwuwuw
を代入すると
まで総和をとるとを
を組み合わせるとと
によりなのでかつ
である。よって なので
でありへののは とおき、
内積
は劣微分の要素なのでで、は
Lemma1を拡張するとさらに強力な次の定理が得られる。
詳細は:Mathematical Programming 127(1), 2011, pp.3-30 Pegasos:primal estimated sub-gradient solver for SVM. Shai
Shalev-Schwarts, et.al.
。から選ばれた部分集合は全データ
に対して
とするとしないときは
したときは かつ
入力データ
DA
T
TcAf
TAf
T
T
Rcprojection
Rcprojection
fR
t
T
t
t
T
t
tt
f
2
ln1;
1;
1
3
4
minarg ,:)(:1 Theorem
1
*
1
2
2
*
ww
wwxxw
convexstrongly -
2:convexstrongly -,1
Lemma1Theorem1
;minarg1 then
projection if
:Proof
2
1
の和なのでのヒンジ損失の平均値とは、
ことを証明する。の前提条件が成立するを証明するには
の球で、は半径
が起こらない
tt
ttttB
t
AAf
AfB
ww
wwwww
R
yAt
yA
yA
yA
yA
yA
yA
yAiA
yAtt
yA
RyA
AfR
t
t
j Ai
ii
j
t
Ai
ii
Ai
ii
Ai
ii
Ai
ii
Ai
ii
Ai
ii
i
t
itt
Ai
ii
t
t
Ai
ii
t
tttt
Ai
ii
t
ttt
t
j
tt
1
1
321
4
21
3
1
21
1
11
3
111
2
1
3
2
2
11
2
110
01| where
1
1
11 then
step projection if
1;1 then
step projection if
2
dcont' :Proof
321
211
w
xw
xxxw
xxwxww
xw
xwxww
xwwxw
ここで
が実行されなかった
かつ
が実行された
の上界を求める。次に
ここの導出は初等的がだちょっとした計算
とすると、双対問題の解を主問題の解を
題を導く。とおき、以下の双対問
の主問題は以下の形式ここで対象にしている
を示す。した場合は、
と言える。
により しない場合は、
を示す。最後に
***
2
11
1
2
*
*
1
*
,
)50(0:m1,i s.t.2
1min
1
1,0:m1,i s.t. 2
1min
1projection
minargprojection
3
dcont' :Proof
w
x
xww
w
w
wwww
w
w
Cy
mC
yC
SVM
B
B
i
m
i
iii
m
i
i
iiii
m
i
i
ttttB
t
ここで双対問題を思いつくところがいかにも
SVM的
られる。 □ に適用すれば定理が得を以上の結果
が成り立つのでの問題では強双対定理
る。は次のように書き直せであり
とすると、双対問題の解を主問題の解を
Lemma1321
1
2
11
2
1
2
1
2
1
11max
2
1
2
1
2
150
,
dcont' :Proof
*
2*
2*
1
*
1
*2
*2
*
11
***
2*
1
*
1
*2
*
2*
1
*
1
**
***
w
wwww
ww
wxw
w
C
CmmC
C
SVM
y
m
i
ii
m
i
iii
強双対定理の実に賢い使い方だ
Coordinate Descent C.-J. Hsieh, et.al. ICML2008
Target: L1損失- L2正則化のSVM 双対化して解く。下に定義
, where
,...,1 0 subject to
2
1min
jijiij
i
TTD
yyQ
liC
Qf
xx
αeαααα
Coordinate Descent
Coordinate Descentは順番に1変数づつ選び、他の変数は固定して最適化。
10,0,maxmin
0,...0,1,0,..0 where0 subject to
2
1min
1
2
CDCQ
f
d
eCd
ffdfdQfdef
ii
D
iii
i
T
i
ii
DD
iii
D
i
D
d
α
ααα
の更新式は下式を計算することによる
の双対は
Coordinate Descent つづき
(CD10)のQiiはαiの最適化の中で1回計算すればよいが
(CD10) (CD10)
CD30
(CD20) 1 , 1
,..,1, 1,1
1
1
の更新後の更新前、
+
でうれしい。以下の計算のためのとなり計算コストは
を保持しておけば
ででうれしくない。そこの計算コストが
は
ii
iiii
iii
D
i
l
t
ttt
tit
l
t
titii
D
i
y
nO
yQf
y
nlO
ltyyQf
xuu
xuαα
xu
xxxxαα
L1損失-L2正則化のSVMの
Coordinate Descent アルゴリズム
iiii
ii
ii
ii
ii
ii
l
i
iii
y
CQ
G
yG
li
liQ
y
xuu
xu
α
xuα
,0,maxmin
1,(CD20)
,..1For
optimalnot is while
,...,1
1
の計算により
の計算
の初期化、および
オンライン学習とストリーム学習
学習 正解との比較 モデル 1データづつ
到着データのモデル学習
と分類などの結果
学習結果 1データづつ
モデル
データ発生
オンライン学習
ストリーム学習
バッチ、オンライン、ストリームの比較
バッチ学習 オンライン学習 ストリーム学習
メモリに乗せるデータ 同時に全部 同時には1データ 同時には1データ
メモリ量 大 小でも可能 小
データの到来 全データが揃ってから処理
全データが揃ってから処理
1データ到着ごとに処理
データの消去 消去せず 消去せず データは処理後に消去
同一データの処理回数
収束するまで繰り返し
収束するまで繰り返し
1回
メモリに保持するモノ
全データと途中に内部状態
内部状態のみでも可能
内部状態のみ
性能 精度高 バッチより劣る。ただし、最近はバッチに肉迫
劣る
可能な処理 何でもあり やや制限あり 限定的
捕捉:世の中、ビッグデータがホットだと言うけれど
? ?
? ?
?
? 異なる分類のデータ
?
?
?
?
分類されていない生のデータ
パーセプトロンの別のアルゴリズム
0),(
)(
for
until
}
};1;)()1({
then0),( {if
1
;max;0;00 1
の場合なし)(すなわち
。を最適化の結果とするように
ループ内で失敗しない
個ある。はデータ
ii
ii
ii
iNi
i
xkwy
kw
kkxykwkw
xkwy
Ntoifor
repeat
xRkw
Nx
という識別に失敗したデータに、その値を重み(学習率と呼ぶ)ηでwに足しこんで是正を図るアルゴリズム
0),( ii xkwy
この部分が線形識別
パーセプトロンは有限回で収束 mistakeのupper bound
Novikoffの定理(バイアスのない場合)
回である
る回数はたかだかアルゴリズムが失敗す
セプトロンが存在するなら、パーである
マージン
22
1
)1(:,
0max
opt
opt
iopti
iNi
wR
w
xwy
xR
証明
■
より
項は負は負例なので第
より
を繰り返し用いてとすれば
より
このときのとき起こる。 更新は、
重みを回目の失敗 に先立つ
2
2
222
222
1
222
1
22
1
2
1
2
0
11
11
1
||||
,||||||||||||54
5||||||||
||ˆ||||||||||
2
||||,2||||||||2
4,30
3,,,,)1(
)2(0,
opt
optttoptopt
tt
tit
i
iititt
optt
opttoptiiopttoptt
iittiti
t
wR
t
twwwwRtw
RtwRtw
Rwxw
x
xxwyww
twww
wwwxywwww
xywwxwy
wt
メモリ容量より大きなデータのSVM Hsiang-Fu Yu et.al KDD2010
1. 全データインデクス{1,..,l}をmブロック B1,…Bmに分割
2. 主問題ならw, 双対問題ならαを初期化
3. For k=1,2,… (外側の繰り返し)
4. For j=1,…,m (内側の繰り返し)
5. read xr ∀r∈Bj from Disk
6. {xr| r∈Bj}に関して最適化(PegasosかCD)を行う
7. wあるいはαを更新
主問題の場合はPegasos, 双対問題の場合はCoordinate Descent(CD)をブロックごとに適用
ここが重要
主問題をPegasosで解く場合の6.の部分
For end
1
,1min
0,1| ,11
where
,...,1For
,....,
0,,1max1
2
1min
Pegasos
1
1
2
tt
lC
yBiByBlCt
lC
rr
BB
yllC
ii
l
Bi
ii
tt
tt
r
jjj
l
i
ii
ww
w
xwxw
ww
B
xwww
に分割を
では次の最適化をする
双対問題でCoordinate Descent(CD)を使う場合
は更新すればよい。の更新部分でという更新で
なお、
だけ。ロック最適化に必要なのはブ
ておけば をメモリ中に保持しさて、
更新部分:の
に注意)う(使い、下の最適化を行
に関する部分だけをロックのうちメモリにいるブここで、
の双対問題 は主問題
w
xww
BBxwdα
xw
dαααα
αdedαdddα
B
BBxx
d
dα
B
Bjd
BjBj
BjBjBjBjBjBjBjBjBjd
B
BjdBj
Bj
Bj
.6
CD30
,,
minarg.6
CD20 2
1min
,..,1
\},...,1{ , where
0 and 0 subject to
CD10min
,
1
,
jr rrr
rrrir
T
ii
l
i
i
D
DT
i
TTD
jijiij
jiij
DD
yd
jjryQ
y
f
fQQf
li
jQ
jljyyQ
BiCd
fff
双対化の御利益: 教師データアクセスの観点から
主問題と双対問題は最適化するパラメタ-数が違う。
主問題パラメタ-数 >>双対問題パラメタ-数 なら双対問題を解くほうが楽 教科書的
SVMの場合:
主問題のパラメタ-は重みベクトル:w
双対問題にパラメタ-は個別データ:xi
必ずしも教科書的なお得感ではない。
双対化の御利益
SVMの場合:
主問題のパラメタ-は重みベクトル:w
下の定式化なので、全教師データ{tn,xn}が同時に必要
データ量が大きくメモリにロード仕切れない場合に困ったことになる。
データ量は最近、増加傾向
)30(,,11))((subject to
| || |2
1minarg 2
,
SVMNnbt nT
n
b
xw
ww
双対化の御利益
必ずしも教科書的なお得感ではない。
一方、双対問題では入力データxitiのと最適化するaiが対応
する形で最適化式に現れるので、どのデータを学習で使うか制御しやすい。(下の式参照) 例えば、 ai(i≠j)を固定して、ajを最適化する操作をjを動かして繰り返すなど。そのときには だけしか使わない。
)()()()90(0
)80(,..,10 subject to
)70()(2
1max)(
~max
1
1 1 1
m
T
nmn
N
n
nn
n
N
n
N
n
N
m
mnmnmnn
kwhereSVMta
SVMNna
SVMkttaaaL
xxx,x
x,xa
Njk ji ,...,1 , xx
双対化の御利益
入力データ、あるいはカーネル行列全体がメモリに乗り切らないビッグデータを扱うために、入力(すなわちカーネルk(xn, xm)の一部を取捨選択し
てメモリにロードして使う方法が、この双対化で可能になっている。
ビッグデータ時代における御利益 cf. 台湾大学のLIBSVM (SVMの実装)
全データからどのようにメモリにロードする部分を切り出すかについてはここで紹介した通り。
k(xn, xm)
M
N
この部分だけ使って最適化:
次に使う部分ロードし直して最適化:繰り返す
内外のバランス など
内側の繰り返しで最適化でCDにおいてαの更新を1回にし、looseな解を求めると、外側の繰り返しが多数回必要
内側の繰り返しで精密な最適化を行えば、外側の繰り返しは少なくてよい。
Bj{j=1,..,m}内の要素の最適化処理における
順番は外側の繰り返し毎にランダムに変更した方が収束が早い
小さなブロックに分けてデータマイニング、機械学習
?
?
?
?
?
?
ブロックをメモリに順次ロードして学習し、その結果を活用して次のブロックへ と繰り返す:
例えば Stream SVM
転移学習
?
?
?
?
?
? 異なる分類のデータ
?
?
?
?
分類されていない生のデータ
この分類での学習の結果を別のグループに転移して有効利用
人間に正解をつけてもらうデータを絞り込む:Active学習
? ?
? ?
?
? 異なる分類のデータ
?
?
?
?
分類されていない生のデータ
分類しにくい部分のデータ
付録: DualityによるFoReLの定式化
tt
tt
ttt
tttt
tt
fff
f
ff
ff
f
ff
ff
wz
wz
zwuwu
uzuwzw
uzuw
uθuθu
uθuθ
u
u
の定義よりが成立するときはが微分可能なら、等式
におけるのは
だとすると
明らかに次式が成立
双対
*
*
*
gradient-sub
,
,,
,maxarg
, ,
:Equality Young-Fenchel:
,max: Fenchel
Online Mirror Descent:OMD
11
1
:1
:111
1:1
2.
1.
FoReL,maxarg
,maxarg
,minarg,minarg
FoReL
,FoReL
tt
ttt
t
t
t
i tt
t
i it
tt
g
Rg
R
RR
RS
RRf
θw
zθθ
wθwθ
wzw
zwwzwww
zz
ww
wwzww
w
w
ww
はとおくと
はと略記すると
とするだと なお、
は正則化関数とする で
2*2
1
2
*
1
1
1
2
1
2
1
(OMD100) minRegret
where
),maxarg(
,...2,1for
0
(OMD)Descent Mirror Online
θww
zvuuwu
wzzθθ
wθwθw
θ
v
w
RR
RRff
f
Rg
t
Sg:R
T
t
tS
T
t
tttT
tttttt
tt
d
ここで以下が言える
パーセプトロンの別のアルゴリズム
),(
0)(
for
until
}
};1;1;)()1({
then0)( {if
1
;max;0;00;00
2
1
。を最適化の結果とするように
の場合なし)(すなわち
ループ内で失敗しない
個ある。はデータ
kbkw
kbxkwy
kkRykbkbxykwkw
kbxkwy
Ntoifor
repeat
xRkbw
Nx
i
T
i
iii
i
T
i
iNi
i
という識別に失敗したデータに、その値を重み(学習率と呼ぶ)ηでwに足しこんで是正を図るアルゴリズム
0)( kbxkwy i
T
i
この部分が線形識別
は改善していく。い方向にしたがって、失敗しな
よって、
項は必ず正第
みる更新後の判定式を見て
w
kbxkwykbxkwy
xxykbxkwy
Rxykbxkwy
Ryxyykbxkwy
kbxkwy
i
T
ii
T
i
iiii
T
i
iii
T
i
iiiii
T
i
i
T
i
)(1)1(
2
max)(
)(
)(
1)1(
222
222
2
w(k)
w(k+1)
パーセプトロンは有限回で収束 mistakeのupper bound
Novikoffの定理(バイアスのある場合)
回である
る回数はたかだかアルゴリズムが失敗す
セプトロンが存在するなら、パーである
マージン かつ
2
1
2
)1(:1
0max
R
w
bxwyw
xR
opt
opti
T
optiopt
iNi
証明
RyR
b
R
bRybb
xywRxyR
bw
R
bww
yx
bxwyxwy
wt
R
bww
RxxR
itt
itt
iit
TT
ii
T
tT
t
T
tT
tt
titiiti
t
T
iT
ii
TT
ii
12
1
11
1
111
1
)2(ˆˆ,,,ˆ
0ˆˆ
ˆ
,ˆ
,ˆ1
、なぜなら
このとき
は内積 る。 のとき起こ
更新は、
重みを回目の失敗 に先立つ
とする。
とする。次元加え、となる入力ベクトルに値
証明 つづき
■
より
項は負は負例なので第
より
を繰り返し用いてとすれば
より
2
2
2
2
2
222
222
1
2222
1
222
1
22
1
2
1
2
0
11
11
1
21||ˆ||2||ˆ||2
ˆˆ||ˆ||||ˆ||2||ˆ||54
52||ˆ||2||ˆ||
2||ˆ||||||||ˆ||||ˆ||||ˆ||
2ˆ
||ˆ||ˆˆ2||ˆ||||ˆ||2
4ˆˆ30ˆ
3ˆˆˆˆˆˆˆˆ)1(
)2(ˆˆ,,,ˆ
Rw
Rw
Rt
twwwwRtw
RtwRtw
RwRxwxw
x
xxwyww
twww
wwwxywwww
xywRxyR
bw
R
bww
optopt
optttoptopt
tt
titit
i
iititt
optt
opttoptiiopttoptt
iit
TT
ii
T
tT
t
T
tT
tt