クラシックな機械学習の入門 7. オンライン学習

85
7. オンライン学習 定式化 評価法:Regretなど パーセプトロン Passive Aggressive Algorithm (アルゴリズムと損失の限界の評価) Confidence Weighted Algorithm Pegasos Coordinate Descent バッチ、オンライン、ストリームの比較 ビッグデータへの対応 クラシックな機械学習の入門 by 中川裕志(東京大学)

description

1データ毎に分類器を更新する学習法であるオンライン学習について説明する。古典的なパーセプトロンもオンライン学習の一種と考えられる。また、オンライン学習の評価法として学習速度、失敗回数、Regretなどを説明する

Transcript of クラシックな機械学習の入門 7. オンライン学習

Page 1: クラシックな機械学習の入門  7. オンライン学習

7. オンライン学習

定式化

評価法:Regretなど

パーセプトロン

Passive Aggressive Algorithm

(アルゴリズムと損失の限界の評価) Confidence Weighted Algorithm

Pegasos

Coordinate Descent

バッチ、オンライン、ストリームの比較

ビッグデータへの対応

クラシックな機械学習の入門

by 中川裕志(東京大学)

Page 2: クラシックな機械学習の入門  7. オンライン学習

オンライン(あるいは逐次)学習とは

データを1つづつ読み込んで、それまでの学習結果を更新する。

2つの利用局面

1. データ全体は保持しているが、学習を1データ毎に行う

2. データが1こずつ時系列としてやってくる

この場合はストリームという。

データ全体をメモリの乗せなくてよいのでマシンに必要なメモリ少、あるいはメモリに乗りきらないほど大きなデータから学習可能

1個のデータからの学習(これを1roundという)だけなら高速

Page 3: クラシックな機械学習の入門  7. オンライン学習

オンライン学習の概観

以下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

Page 4: クラシックな機械学習の入門  7. オンライン学習

識別関数h(t)

データ

xt

正解(実測あるいは人手による)

yt

予測

h(t)

(xt)

If 予測≠正解

then 更新:h(t)→h(t+1)

オンライン学習のイメージ

Page 5: クラシックな機械学習の入門  7. オンライン学習

オンライン学習の評価法

仮説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

Page 6: クラシックな機械学習の入門  7. オンライン学習

オンライン学習をオンライン凸最適化の観点から定式化 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

トルで生成された重みベクを

の取り得る範囲で凸は

Page 7: クラシックな機械学習の入門  7. オンライン学習

より。 □の定義最後の等式は

でも成り立つで成立し、この式は

を加えると両辺に

仮定する。つまりで不等式が成立すると

を選べる。より、式の成立するの定義の場合は

を帰納法で導く。  そこのこの不等式

き移項するとの不等式の両辺から引を

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

Page 8: クラシックな機械学習の入門  7. オンライン学習

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

Page 9: クラシックな機械学習の入門  7. オンライン学習

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

Page 10: クラシックな機械学習の入門  7. オンライン学習

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の上限が

𝑇に比例していることに注目!

Page 11: クラシックな機械学習の入門  7. オンライン学習

損失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

 

が以下。 これを使った

と同じ。連続なら

 と書く。 と呼び のの集合をを満たす

上の凸関数 がが凸集合、

Page 12: クラシックな機械学習の入門  7. オンライン学習

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

問題はこの部分

Page 13: クラシックな機械学習の入門  7. オンライン学習

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 にできる。

付録参照

Page 14: クラシックな機械学習の入門  7. オンライン学習

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)という

Page 15: クラシックな機械学習の入門  7. オンライン学習

数学的ツールの準備

• 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

Page 16: クラシックな機械学習の入門  7. オンライン学習

数学的ツールの準備 • 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

Page 17: クラシックな機械学習の入門  7. オンライン学習

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 これらを合わせるとなお、

の定義より

不等式から

であるならで  補題 

Page 18: クラシックな機械学習の入門  7. オンライン学習

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

Page 19: クラシックな機械学習の入門  7. オンライン学習

パーセプトロン(Perceptron)

FoReLから導出されたOnline Gradient Descent

の例としてパーセプトロンを紹介する。

パーセプトロンはF. Rosenblattが1956年に提案した線形識別の繰り返しアルゴリズム

効率がよく、現在でもその価値が高い

入力xtが目的のクラスに

属する場合にyt=1, 属さない場合にyt= −1

右図

正 これより失敗側では00

,

t

ttt

f

yf xwwtty xw, 

Page 20: クラシックな機械学習の入門  7. オンライン学習

𝑓𝑡 𝑤 の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

に当てはめるとの形式:

 

Page 21: クラシックな機械学習の入門  7. オンライン学習

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に足し込むという至って単純な更新

Page 22: クラシックな機械学習の入門  7. オンライン学習

線形分離可能性

線形分離可能:クラスを識別するする超平面が存在する場合

そうでない場合を線形分離不可能という。

下図参照

線形分離可能 線形分離不可能

γ:マージン

Page 23: クラシックな機械学習の入門  7. オンライン学習

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)の上界が使える

Page 24: クラシックな機械学習の入門  7. オンライン学習

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

Page 25: クラシックな機械学習の入門  7. オンライン学習

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

Page 26: クラシックな機械学習の入門  7. オンライン学習

損失関数による定式化 境界面そのもので判定はきわどいのでマージンを持たせる。マージンを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

Page 27: クラシックな機械学習の入門  7. オンライン学習

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

Page 28: クラシックな機械学習の入門  7. オンライン学習

最適化問題(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

Page 29: クラシックな機械学習の入門  7. オンライン学習

Passive Aggressive

xt

tt ww 1

Passive

xt

ttttt y xww 1

Aggressive

2

t

tt

x

Page 30: クラシックな機械学習の入門  7. オンライン学習

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

Page 31: クラシックな機械学習の入門  7. オンライン学習

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

Page 32: クラシックな機械学習の入門  7. オンライン学習

付録: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

  と同じく 元々の

について最適化するととなるので、これを

に代入しを

に分けて考える。と以下では

  よりなので、条件より

の最小化ができない。ので、

れるはいくらでも小さくなすると、 である。そうでないと

のとき。  で  の最小値は

          

は以下の通りの

Page 33: クラシックな機械学習の入門  7. オンライン学習

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

を合せると 

より なので、条件から

だったから、 で

を組み合わせると  と

   により と 

   

元々の

  

Page 34: クラシックな機械学習の入門  7. オンライン学習

付録: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

Page 35: クラシックな機械学習の入門  7. オンライン学習

損失の限界の評価

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

に対して上記

Page 36: クラシックな機械学習の入門  7. オンライン学習

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

  

  

の場合にだけ注目:よって、

しない場合は、を

なので

Page 37: クラシックな機械学習の入門  7. オンライン学習

         ■  

  

同じく 

の場合 

*2

22*

22

*

22

112

,2

1,

1,,10

ttttt

ttttt

ttttttt

ttt

ttttttttt

x

x

xxuwy

xuy

xwyxwy

Page 38: クラシックな機械学習の入門  7. オンライン学習

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

Page 39: クラシックな機械学習の入門  7. オンライン学習

   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は次ページ

Page 40: クラシックな機械学習の入門  7. オンライン学習

■          

を使うと  

ほうの解。とした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

Page 41: クラシックな機械学習の入門  7. オンライン学習

Proofは次のページ

T

t

t

t

ttt

CuCRmistakes

Cx

Rx

1

*22

2

22

21,max#

,min

   

PA-Iにおける入力データ識別の失敗回数の上限

Page 42: クラシックな機械学習の入門  7. オンライン学習

    ■

を掛けるとの両辺に

  より  

に代入すると   これを

かつ

  なので  

回数とする。るを繰り返し全体におけ

よりと

が起きたとすると回目の繰り返しで

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

Page 43: クラシックな機械学習の入門  7. オンライン学習

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は次のページ

Page 44: クラシックな機械学習の入門  7. オンライン学習

■を使えば、

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

Page 45: クラシックな機械学習の入門  7. オンライン学習

Confidence Weighted

Algorithm

Crammer et al. 2008

Page 46: クラシックな機械学習の入門  7. オンライン学習

学習する重みベクトルWを点ではなく分布(正規分布)にする

Wの期待値と分散を更新する

Page 47: クラシックな機械学習の入門  7. オンライン学習

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

Page 48: クラシックな機械学習の入門  7. オンライン学習

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

を選ぶ。から全データ

初期化

Page 49: クラシックな機械学習の入門  7. オンライン学習

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

つに対して次式が成り立のとき、

ただし  

の劣微分の要素はルの列とする:を以下のようなベクト

を閉凸集合とする。とし、を

Page 50: クラシックな機械学習の入門  7. オンライン学習

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

を代入すると

まで総和をとるとを

を組み合わせるとと

によりなのでかつ

 である。よって なので  

でありへののは とおき、

内積

は劣微分の要素なのでで、は

Page 51: クラシックな機械学習の入門  7. オンライン学習

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

Page 52: クラシックな機械学習の入門  7. オンライン学習

convexstrongly -

2:convexstrongly -,1

Lemma1Theorem1

;minarg1 then

projection if

:Proof

2

1

の和なのでのヒンジ損失の平均値とは、

ことを証明する。の前提条件が成立するを証明するには

 の球で、は半径

が起こらない

tt

ttttB

t

AAf

AfB

ww

wwwww

Page 53: クラシックな機械学習の入門  7. オンライン学習

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

ここで

が実行されなかった 

かつ

が実行された

の上界を求める。次に

ここの導出は初等的がだちょっとした計算

Page 54: クラシックな機械学習の入門  7. オンライン学習

とすると、双対問題の解を主問題の解を

題を導く。とおき、以下の双対問

の主問題は以下の形式ここで対象にしている

を示す。した場合は、

と言える。

により しない場合は、

を示す。最後に

***

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的

Page 55: クラシックな機械学習の入門  7. オンライン学習

られる。 □  に適用すれば定理が得を以上の結果

が成り立つのでの問題では強双対定理

る。は次のように書き直せであり

とすると、双対問題の解を主問題の解を

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

強双対定理の実に賢い使い方だ

Page 56: クラシックな機械学習の入門  7. オンライン学習

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αααα

Page 57: クラシックな機械学習の入門  7. オンライン学習

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

α

ααα

の更新式は下式を計算することによる

の双対は

Page 58: クラシックな機械学習の入門  7. オンライン学習

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αα

Page 59: クラシックな機械学習の入門  7. オンライン学習

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

   

   

の計算により

の計算

の初期化、および

Page 60: クラシックな機械学習の入門  7. オンライン学習

オンライン学習とストリーム学習

学習 正解との比較 モデル 1データづつ

到着データのモデル学習

と分類などの結果

学習結果 1データづつ

モデル

データ発生

オンライン学習

ストリーム学習

Page 61: クラシックな機械学習の入門  7. オンライン学習

バッチ、オンライン、ストリームの比較

バッチ学習 オンライン学習 ストリーム学習

メモリに乗せるデータ 同時に全部 同時には1データ 同時には1データ

メモリ量 大 小でも可能 小

データの到来 全データが揃ってから処理

全データが揃ってから処理

1データ到着ごとに処理

データの消去 消去せず 消去せず データは処理後に消去

同一データの処理回数

収束するまで繰り返し

収束するまで繰り返し

1回

メモリに保持するモノ

全データと途中に内部状態

内部状態のみでも可能

内部状態のみ

性能 精度高 バッチより劣る。ただし、最近はバッチに肉迫

劣る

可能な処理 何でもあり やや制限あり 限定的

Page 62: クラシックな機械学習の入門  7. オンライン学習

捕捉:世の中、ビッグデータがホットだと言うけれど

? ?

? ?

? 異なる分類のデータ

分類されていない生のデータ

Page 63: クラシックな機械学習の入門  7. オンライン学習

パーセプトロンの別のアルゴリズム

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

この部分が線形識別

Page 64: クラシックな機械学習の入門  7. オンライン学習

パーセプトロンは有限回で収束 mistakeのupper bound

Novikoffの定理(バイアスのない場合)

回である

る回数はたかだかアルゴリズムが失敗す

セプトロンが存在するなら、パーである

マージン

22

1

)1(:,

0max

opt

opt

iopti

iNi

wR

w

xwy

xR

Page 65: クラシックな機械学習の入門  7. オンライン学習

証明

   より

項は負は負例なので第

より

を繰り返し用いてとすれば

より

 このときのとき起こる。  更新は、

重みを回目の失敗 に先立つ

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

Page 66: クラシックな機械学習の入門  7. オンライン学習

メモリ容量より大きなデータの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)をブロックごとに適用

ここが重要

Page 67: クラシックな機械学習の入門  7. オンライン学習

主問題を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

に分割を

     

では次の最適化をする

Page 68: クラシックな機械学習の入門  7. オンライン学習

双対問題でCoordinate Descent(CD)を使う場合

は更新すればよい。の更新部分でという更新で

なお、

だけ。ロック最適化に必要なのはブ  

ておけば をメモリ中に保持しさて、

更新部分:の

に注意)う(使い、下の最適化を行

に関する部分だけをロックのうちメモリにいるブここで、

の双対問題  は主問題   

w

xww

BBxwdα

xw

dαααα

αdedαdddα

B

BBxx

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

Page 69: クラシックな機械学習の入門  7. オンライン学習

双対化の御利益: 教師データアクセスの観点から

主問題と双対問題は最適化するパラメタ-数が違う。

主問題パラメタ-数 >>双対問題パラメタ-数 なら双対問題を解くほうが楽 教科書的

SVMの場合:

主問題のパラメタ-は重みベクトル:w

双対問題にパラメタ-は個別データ:xi

必ずしも教科書的なお得感ではない。

Page 70: クラシックな機械学習の入門  7. オンライン学習

双対化の御利益

SVMの場合:

主問題のパラメタ-は重みベクトル:w

下の定式化なので、全教師データ{tn,xn}が同時に必要

データ量が大きくメモリにロード仕切れない場合に困ったことになる。

データ量は最近、増加傾向

)30(,,11))((subject to

| || |2

1minarg 2

,

SVMNnbt nT

n

b

xw

ww

Page 71: クラシックな機械学習の入門  7. オンライン学習

双対化の御利益

必ずしも教科書的なお得感ではない。

一方、双対問題では入力データ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

Page 72: クラシックな機械学習の入門  7. オンライン学習

双対化の御利益

入力データ、あるいはカーネル行列全体がメモリに乗り切らないビッグデータを扱うために、入力(すなわちカーネルk(xn, xm)の一部を取捨選択し

てメモリにロードして使う方法が、この双対化で可能になっている。

ビッグデータ時代における御利益 cf. 台湾大学のLIBSVM (SVMの実装)

全データからどのようにメモリにロードする部分を切り出すかについてはここで紹介した通り。

k(xn, xm)

M

N

この部分だけ使って最適化:

次に使う部分ロードし直して最適化:繰り返す

Page 73: クラシックな機械学習の入門  7. オンライン学習

内外のバランス など

内側の繰り返しで最適化でCDにおいてαの更新を1回にし、looseな解を求めると、外側の繰り返しが多数回必要

内側の繰り返しで精密な最適化を行えば、外側の繰り返しは少なくてよい。

Bj{j=1,..,m}内の要素の最適化処理における

順番は外側の繰り返し毎にランダムに変更した方が収束が早い

Page 74: クラシックな機械学習の入門  7. オンライン学習

小さなブロックに分けてデータマイニング、機械学習

ブロックをメモリに順次ロードして学習し、その結果を活用して次のブロックへ と繰り返す:

例えば Stream SVM

Page 75: クラシックな機械学習の入門  7. オンライン学習

転移学習

? 異なる分類のデータ

分類されていない生のデータ

この分類での学習の結果を別のグループに転移して有効利用

Page 76: クラシックな機械学習の入門  7. オンライン学習

人間に正解をつけてもらうデータを絞り込む:Active学習

? ?

? ?

? 異なる分類のデータ

分類されていない生のデータ

分類しにくい部分のデータ

Page 77: クラシックな機械学習の入門  7. オンライン学習

付録: 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

Page 78: クラシックな機械学習の入門  7. オンライン学習

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

はとおくと

はと略記すると

とするだと      なお、

は正則化関数とする   で

Page 79: クラシックな機械学習の入門  7. オンライン学習

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

ここで以下が言える

Page 80: クラシックな機械学習の入門  7. オンライン学習

パーセプトロンの別のアルゴリズム

),(

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

この部分が線形識別

Page 81: クラシックな機械学習の入門  7. オンライン学習

は改善していく。い方向にしたがって、失敗しな

よって、 

項は必ず正第

みる更新後の判定式を見て

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

Page 82: クラシックな機械学習の入門  7. オンライン学習

w(k)

w(k+1)

Page 83: クラシックな機械学習の入門  7. オンライン学習

パーセプトロンは有限回で収束 mistakeのupper bound

Novikoffの定理(バイアスのある場合)

回である

る回数はたかだかアルゴリズムが失敗す

セプトロンが存在するなら、パーである

マージン かつ  

2

1

2

)1(:1

0max

R

w

bxwyw

xR

opt

opti

T

optiopt

iNi

Page 84: クラシックな機械学習の入門  7. オンライン学習

証明

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

、なぜなら

このとき

は内積 る。     のとき起こ          

更新は、

重みを回目の失敗 に先立つ

とする。

とする。次元加え、となる入力ベクトルに値

Page 85: クラシックな機械学習の入門  7. オンライン学習

証明 つづき

   より

項は負は負例なので第

より

を繰り返し用いてとすれば

より

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

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