SlideShare a Scribd company logo
1 KYOTO UNIVERSITY
KYOTO UNIVERSITY
第6章 オンライン学習
Daiki	Tankaa
Department	of	Intelligence	
Science	and	Technology
2 KYOTO UNIVERSITY
contents:
n 6.1 概要
n 6.2 正則化項つき累積損失最小化法
n 6.3 パーセプトロン
n 6.4 Passive-Aggressiveアルゴリズム
n 6.5 ラウンド数の対数オーダの収束
n 6.6 双対化座標降下法
3 KYOTO UNIVERSITY
6.1 概要
4 KYOTO UNIVERSITY
6.1 概要:
概念と定式化
n バッチ学習
観測データは全てメモリにロードされ、処理する順番に制約は
ない
n オンライン学習
• 観測データ集合から1つずつデータを取り出して学習を行う
• 1データ読み込むごとに学習結果を更新
• 時系列データに有効
• メモリに乗り切らないほど大きなデータに対する学習が可能
5 KYOTO UNIVERSITY
6.1 概要:
概念と定式化
n オンライン学習の骨格
Step0	:	step1をℎ(#)
が収束するまで繰り返す
Step1	:	 𝑡 = 1,2, … , 𝑇まで以下のstep1-1、step1-2を繰り返す
Step1-1	:	データ𝑥#に対するℎ # 𝑥# を計算
Step1-2	:	ℎ # 𝑥# ≠ 𝑦#なら、 ℎ(#)をℎ(#/0)に更新
ラウンド
6 KYOTO UNIVERSITY
6.1.2 評価指標:
累積損失
n 累積損失
l 時刻Tまでの損失の和
l 累積損失			=	∑ ℒ(ℎ #
𝑥# , 𝑦#)4
#50
= ∑ 𝐿#(𝑤#)4
#50 		(線形な分類器の場合)
7 KYOTO UNIVERSITY
6.1.2 評価指標:
Regret(1)		
n 累積損失 ∑ ℒ(ℎ #
𝑥# , 𝑦#)4
#50 を最小化したい
n 累積損失の上界を求めたいが、損失の評価は難しい
n そこで、ある時刻によらない分類器 h	が生ずる累積損
失との差をRegret	といい、評価指標とする
n 特定の h	に対して、T個の訓練データを処理した時のRegretは、
𝑅𝑒𝑔𝑟𝑒𝑡4(ℎ) = C ℒ ℎ #
𝑥# , 𝑦# − C ℒ(ℎ 𝑥# , 𝑦#)
4
#50
4
#50
8 KYOTO UNIVERSITY
6.1.2 評価指標:
Regret	(2)	
n 仮設空間ℋに拡張したら
𝑅𝑒𝑔𝑟𝑒𝑡4 ℋ = max
I∗∈ℋ
𝑅𝑒𝑔𝑟𝑒𝑡4 ℎ
= C ℒ ℎ #
𝒙# , 𝑦# − min
I∈ℋ
C ℒ(ℎ 𝒙# , 𝑦#)
4
#50
4
#50
= C ℒ ℎ #
𝒙# , 𝑦# −
4
#50
C ℒ(ℎ∗
𝒙# , 𝑦#)
4
#50
ただし、ℎ∗
= 𝑎𝑟𝑔min
I(P)∈ℋ
∑ ℒ(ℎ(#)
𝒙# , 𝑦#)4
#50
9 KYOTO UNIVERSITY
6.1.2 評価指標:
Regret	(3)	
𝑚𝑖𝑛	𝑅𝑒𝑔𝑟𝑒𝑡4 ℋ = 𝑚𝑖𝑛		𝑚𝑎𝑥 𝑅𝑒𝑔𝑟𝑒𝑡4 ℎ
𝑅𝑒𝑔𝑟𝑒𝑡4 ℎ∗
10 KYOTO UNIVERSITY
6.1.2 評価指標:
失敗回数の上界
n 二値分類で、2つのクラスが完全に分類できる場合
n あるラウンドからは完全にクラスを分類できるはず
n 常に予測結果が正解と一致するはず
n 失敗しなくなるまでのラウンド数を失敗回数の上界という
11 KYOTO UNIVERSITY
6.2 正則化項つき累積損失最小化法
12 KYOTO UNIVERSITY
6.2.1 :	累積損失最小化法
Follow-The-Leader	(FTL)
n 1つ前までのラウンドに対する累積損失を最小にするように𝑤T
を選ぶ
n 現在のラウンド:𝜏
𝑤T = argmin
V∈W
C ℒ#(𝑤)
TX0
#50
									 𝜏 = 2, … , 𝑇 .
13 KYOTO UNIVERSITY
6.2.1 :	累積損失最小化法
FTLのRegret
補題6.1	 FTLで学習した重み𝑤0, 𝑤, … 𝑤4と、 𝑢 ∈ 𝑆に対して∀
𝑅𝑒𝑔𝑟𝑒𝑡4 𝑢 = C(𝐿# 𝑤# − 𝐿#(𝑢
4
#50
)) ≤ C(𝐿# 𝑤# − 𝐿# 𝑤#/0 )
4
#50
l ∑ 𝐿# 𝑤#/0
4
#50 ≤ ∑ 𝐿# 𝑢4
#50 を示せばいい
l 帰納法
14 KYOTO UNIVERSITY
6.2.1 :	累積損失最小化法
FTLのRegret上界
系6.1	 FTLで学習した重み𝑤0, 𝑤, … 𝑤4に対して
𝑅𝑒𝑔𝑟𝑒𝑡4 𝑆 = C(𝐿# 𝑤# − min
a∈W
𝐿#(𝑢)
4
#50
) ≤ C(𝐿# 𝑤# − 𝐿# 𝑤#/0 )
4
#50
15 KYOTO UNIVERSITY
6.2.1 :	正則化つき方法
Follow-The-Regularized-Leader	(FoReL)
n FTLでは、wに制約がなく、wの値がラウンドごとに大きく変化
してしまうことがある
n 正則化項をつけて安定化させる
𝑤T/0 = argmin
V∈W
(C ℒ# 𝑤
T
#50
+ 𝑅 𝑤 )								 𝜏 = 1,2, … , 𝑇 .
16 KYOTO UNIVERSITY
6.2.1 :	累積損失最小化法
FoReLのRegret
補題6.2	 F𝑜𝑅𝑒𝐿で学習した重み𝑤0, 𝑤, … 𝑤4と、 𝑢 ∈ 𝑆に対して∀
𝑅𝑒𝑔𝑟𝑒𝑡4 𝑢 = C(𝐿# 𝑤# − 𝐿#(𝑢
4
#50
)) ≤ 𝑅 𝑢 + 𝑅 𝑤0 + C(𝐿# 𝑤# − 𝐿# 𝑤#/0 )
4
#50
なので、FoReLのRegret上界は、
系6.2
𝑅𝑒𝑔𝑟𝑒𝑡4 𝑆 = C(𝐿# 𝑤# − min
a∈W
𝐿#(𝑢)
4
#50
) ≤ min 𝑅(𝑢) + 𝑅 𝑤0 + C(𝐿# 𝑤# − 𝐿# 𝑤#/0 )
4
#50
17 KYOTO UNIVERSITY
6.2.2	:	正則化項つき方法
FoReLの具体例:オンライン勾配降下法
n 訓練データ ∶	 𝑧# = 𝛻ℒ#(𝑤#)
n 損失:ℒ# 𝑤 = 𝑤, 𝑧# は、𝑧# = 𝛻ℒ#(𝑤#)を満たす
n 正則化項:𝑅 𝑤 =
0
g
𝑤 

とする
n この時、FoReLの式は、	 𝑤T/0 = argmin
V∈W
(∑ ℒ# 𝑤T
#50 + 𝑅 𝑤 ) に代入して
𝑤T/0 = argmin
V∈W
(C 𝑤, 𝑧#
T
#50
+
1
2𝜂
𝑤 

)
𝑤T/0を求めるためには、wで偏微分して0をとけば良い
18 KYOTO UNIVERSITY
6.2.2	:	正則化項つき方法
FoReLの具体例:オンライン勾配降下法
n 𝑤T/0を求めるためには、wで偏微分して0をとけば良い
0 =
𝜕
𝜕𝑤
(C 𝑤, 𝑧#
T
#50
+
1
2𝜂
𝑤 

) = C 𝑧#
T
#50
+
𝑤
𝜂
よって、𝑤T/0 = −𝜂 C 𝑧#
T
#50
, 𝑤T = −𝜂 C 𝑧#
TX0
#50
𝑤T/0 = 𝑤T − 𝜂𝑧#
ここで、𝑧# = 𝛻ℒ#(𝑤#)を代入すると
𝑤T/0 = 𝑤T − 𝜂𝛻ℒT(𝑤T)
このwの更新方法をオンライン勾配降下法という
19 KYOTO UNIVERSITY
6.2.2 :	正則化項つき方法
オンライン勾配降下法のRegret(1)
任意の 𝑢 ∈ 𝑆 に対して、 𝑅𝑒𝑔𝑟𝑒𝑡4 𝑢 の上界は
𝑅𝑒𝑔𝑟𝑒𝑡4 𝑢 ≤ 𝑅 𝑢 + 𝑅 𝑤0 + C(𝐿# 𝑤# − 𝐿# 𝑤#/0 )
4
#50
																							=
1
2𝜂
𝑢 

+ 0 + C( 𝑤#, 𝑧# − 𝑤#/0, 𝑧# )
4
#50
																						=
1
2𝜂
𝑢 

+ C( 𝑤# − 𝑤#/0, 𝑧# )
4
#50
																					=
1
2𝜂
𝑢 

+ C 𝜂𝑧#, 𝑧#
4
#50
																				=
1
2𝜂
𝑢 

+ 𝜂 C 𝑧# 

4
#50
20 KYOTO UNIVERSITY
6.2.2 :	正則化項つき方法
オンライン勾配降下法のRegret(2)
l 𝑅𝑒𝑔𝑟𝑒𝑡4 𝒰 = max
a∈𝒰
𝑅𝑒𝑔𝑟𝑒𝑡4 𝑢 	≤
0
g
𝑢 

+ 𝜂 ∑ 𝑧# 
4
#50
																														 	 ≤
1
2𝜂
𝐵
+ 𝜂𝑇𝐿
																															 =
𝐿 2𝑇
2𝐵
𝐵 +
𝐵
𝐿 2𝑇
𝑇𝐿 = 𝐵𝐿 2𝑇
l 1データあたりのRegretの平均値は↓で抑えられる
1
𝑇
𝑅𝑒𝑔𝑟𝑒𝑡4 𝒰 ≤
2 𝐵𝐿
𝑇
訓練データの数(T)	が増えるほど分類器の性能が良くなることがわかる
21 KYOTO UNIVERSITY
6.2.3	:	劣勾配
損失関数ℒの微分が連続でない場合
n 定義6.1
任意の𝑣, 𝑢に対して、
𝑓 𝑢 ≥ 𝑓 𝑣 + 𝑢 − 𝑣, 𝑧
を満たすベクトル z	を v	における f	の劣勾配と呼ぶ。f	の劣勾配
の集合を劣微分と呼び、𝜕𝑓 𝑣 とかく。
f	の微分が連続なら、 𝜕𝑓 𝑣 = 𝛻𝑓 𝑣
劣勾配を使ったオンライン勾配降下法は、
𝑤#/0 = 𝑤# − 𝜂𝑧#
ただし、 𝜂 > 0, 𝑤0 = 0, 𝑧# ∈ 𝜕ℒ#(𝑤#)
22 KYOTO UNIVERSITY
6.2.4	:	オンライン勾配降下法のRegret上界
より厳しい上界(1)
𝑤T/0 = argmin
V∈W
(C 𝒘, 𝒛𝒕
T
#50
+ 𝑅 𝒘 )
										= argm𝑎𝑥
V∈W
(− C 𝒘, 𝒛𝒕
T
#50
− 𝑅 𝒘 )
										= 𝑎𝑟𝑔max
V
( 𝒘, − C 𝒛#
T
#50
− 𝑅 𝒘 )									
とおくと、FoReLの更新アルゴリズムは、
𝑤u = 0
𝑓𝑜𝑟	𝑡 = 1,2, … , 𝑇
					𝑤#/0 = 𝑎𝑟𝑔max
V
( 𝒘, − C 𝒛#
T
#50
− 𝑅 𝒘 )
								𝑧#/0 ∈ 𝜕ℒ#(𝑤)
このアルゴリズムの
Regret上界を求める
23 KYOTO UNIVERSITY
6.2.4	:	オンライン勾配降下法のRegret上界
より厳しい上界(2) 準備1
n Fenchel-Young不等式(1)
𝑅 𝑢 : 	微分可能な凸関数、例えば
0

𝑢 

𝑓 𝜃 = 𝑢, 𝜃 − 𝑅 𝑢 の最大値
𝑅∗ 𝜃 = max
a
( 𝑢, 𝜃 − 𝑅 𝑢 )をR(u)のFenchel共役という
定義から、以下のFenchel-Young不等式が成り立つ
任意のuに対して、𝑅∗ 𝜃 ≥ 𝑢, 𝜃 − 𝑅 𝑢
𝑢 ∈ 𝜕𝑅∗ 𝜃 あるいは𝑢 = 𝜃で微分可能なら𝑢 = 𝛻𝑅∗ 𝜃 とすると、
𝑅∗ 𝜃 = 𝑢, 𝜃 − 𝑅 𝑢
24 KYOTO UNIVERSITY
6.2.4	:	オンライン勾配降下法のRegret上界
より厳しい上界(3) 準備1
n Fenchel-Young不等式(2)
𝑅∗ 𝜃 = max
a
( 𝑢, 𝜃 − 𝑅 𝑢 ) ∶		R(u)のFenchel共役
𝑅 𝑤 =
0
g
𝑤 

										だったら、RのFenchel共役は、
𝑅∗ 𝜃 = max
a
( 𝑢, 𝜃 −
1
2𝜂
𝑢 

)
												=
𝜂
2
𝜃
25 KYOTO UNIVERSITY
6.2.4	:	オンライン勾配降下法のRegret上界
より厳しい上界(4) 準備2
n Bregmanダイバージェンス
𝑅∗ 𝒖 =
g

𝒖 

のBregmanダイバージェンスは、
𝛻 𝑅∗ 𝒖 = 𝜂𝒖 から、
𝐷€ 𝒘 ∥ 𝒖 =
𝜂
2
𝒘 − 𝒖
26 KYOTO UNIVERSITY
6.2.4	:	オンライン勾配降下法のRegret上界
より厳しい上界(5)
n 補題6.3		
さっきの更新アルゴリズムを用いた場合、対象領域Sの中に
𝑤#, 𝑢が入っている時、次の不等式が成り立つ
C 𝑤# − 𝑢, 𝑧#
4
#50
≤ 𝑅 𝑢 − 𝑅 𝑤0 + C 𝐷€∗(− C 𝑧‚
#
‚50
∥
4
#50
− C 𝑧‚
#X0
‚50
)
27 KYOTO UNIVERSITY
6.2.4	:	オンライン勾配降下法のRegret上界
より厳しい上界(6)
n 定理6.1	
さっきの更新アルゴリズムを用いた場合、
𝑅 𝑤 =
0
g
𝑤 

なら、次の不等式が成り立つ
C 𝑤# − 𝑢, 𝑧#
4
#50
≤
1
2𝜂
𝑢 

+
𝜂
2
C 𝑧# 

4
#50
𝐿 =
1
𝑇
C 𝑧# 

4
#50
かつ、 𝑢  ≤ 𝐵とおくと上の右辺は、
𝜂 =
𝐵
𝐿 𝑇
の時最小となり、
Regret
28 KYOTO UNIVERSITY
6.3 パーセプトロン
29 KYOTO UNIVERSITY
6.3:パーセプトロン
n FoReLから導出されるオンライン勾配降下法の例
n 観測データが目的のクラスに
l 属するなら1
l 属さないなら-1
n 損失関数 ℒ# 𝑤 =	[−𝑦# 𝑤, 𝑥# ]/
• 	[−𝑦# 𝑤, 𝑥# ]/= …
	−𝑦# 𝑤, 𝑥# 						𝑖𝑓	[−𝑦# 𝑤, 𝑥# ] ≥ 0
0																											𝑜𝑡ℎ𝑒𝑟𝑤𝑖𝑠𝑒
30 KYOTO UNIVERSITY
6.3:パーセプトロン
n 損失関数が w	=	0	で微分可能ではないので劣微分	𝑧#	を使う
				𝑖𝑓	𝑦# 𝑤, 𝑥# > 0							𝑡ℎ𝑒𝑛									𝑧# = 𝛻ℒ# 𝑤 = 0
																																					𝑜𝑡ℎ𝑒𝑟𝑤𝑖𝑠𝑒		𝑧# = 𝛻ℒ# 𝑤 = −𝑦# 𝑥#
∈ 𝜕ℒ#(𝑤)
n 𝑤T/0 = 𝑤T − 𝜂𝑧# に当てはめると、、、
31 KYOTO UNIVERSITY
6.3:パーセプトロン
パーセプトロンの更新アルゴリズム
𝑤0 = 0
𝑓𝑜𝑟	𝑡 = 1,2, … , 𝑇
					𝑖𝑓		𝑦# 𝑤#, 𝑥# ≤ 0
											𝑡ℎ𝑒𝑛													𝑤T/0 = 𝑤T + 𝜂𝑦# 𝑥#
											𝑜𝑡ℎ𝑒𝑟𝑤𝑖𝑠𝑒		𝑤#/05 𝑤#
初期化
分類に失敗した時だけ更新
32 KYOTO UNIVERSITY
6.3:パーセプトロン
分類の失敗回数の上限(1)
𝑅𝑒𝑔𝑟𝑒𝑡4 𝑢 ≤
1
2𝜂
𝑢 

+
𝜂
2
C 𝑧# 

4
#50
簡単のために、損失関数をヒンジ損失で近似
分類失敗時の劣微分𝑧# = −𝑦# 𝒙#、 𝑧# 

= 𝑥# 

分類に失敗した時、𝑦# 𝑤#, 𝑥# < 0なので、損失は
𝐿# 𝑤 = 1 − 𝑦# 𝑤#, 𝑥# > 1
33 KYOTO UNIVERSITY
6.3:パーセプトロン
分類の失敗回数の上限(2)
𝑅𝑒𝑔𝑟𝑒𝑡4 𝑢 ≤
1
2𝜂
𝑢 

+
𝜂
2
C 𝑧# 

4
#50
𝐿# 𝑤 = 1 − 𝑦# 𝑤#, 𝑥# > 1
分類に失敗した𝑥#の集合をℳとすると失敗回数は ℳ で、
ℳ ≤ C 𝐿# 𝑤
4
#50
よって
ℳ − C 𝐿# 𝑢
4
#5u
≤ C 𝐿# 𝑤
4
#50
− C 𝐿# 𝑢
4
#5u
≤ C 𝐿# 𝑤
4
#5u
− C 𝐿# 𝑢
4
#5u
= 𝑅𝑒𝑔𝑟𝑒𝑡4 𝑢
34 KYOTO UNIVERSITY
6.3:パーセプトロン
分類の失敗回数の上限(3)
𝑅 = 𝑚𝑎𝑥 𝑥# がなりたつとすると、 𝑅𝑒𝑔𝑟𝑒𝑡4 𝑢 ≤
0
g
𝑢 

+
g

∑ 𝑧# 
4
#50 から、
𝑅𝑒𝑔𝑟𝑒𝑡4 𝑢 = C 𝐿# 𝑤
4
#50
− C 𝐿# 𝑢
4
#50
≤
1
2𝜂
𝑢 

+
𝜂
2
C 𝑧# 

4
#50
=
1
2𝜂
𝑢 

+
𝜂
2
C 𝑥# 

4
‰P VP,ŠP ‹u
≤
1
2𝜂
𝑢 

+
𝜂
2
ℳ 𝑅
ℳ − C 𝐿# 𝑢
4
#5u
≤ 𝑅𝑒𝑔𝑟𝑒𝑡4 𝑢 ≤
1
2𝜂
𝑢 

+
𝜂
2
ℳ 𝑅
右辺は𝜂 =
a Œ
€ •
で最小値 𝑀 𝑅 𝑢 を取るので
ℳ − C 𝐿# 𝑢
4
#50
≤ 𝑀 𝑅 𝑢
35 KYOTO UNIVERSITY
6.3:パーセプトロン
分類の失敗回数の上限(4)
ℳ − C 𝐿# 𝑢
4
#50
≤ 𝑀 𝑅 𝑢 
適切なuを選べば、 ∑ 𝐿# 𝑢4
#50 = 0とすることができるので、
ℳ ≤ 𝑀 𝑅 𝑢 
ℳ についてとけば、
ℳ ≤ 𝑅 𝑢 

=
𝑅
𝛾
ただし、𝛾は分離境界面と最も距離の近いデータと境界面の距離
失敗回数はある値で抑えられる
36 KYOTO UNIVERSITY
6.4		Passive-Aggressiveアルゴリズム
37 KYOTO UNIVERSITY
6.4:PAアルゴリズム
n 2006年に誕生
n 損失:ヒンジ損失
n 正則化項:𝑅 𝑤 =
0

𝑤 − 𝑤# 

n FoReLの式は、
𝑤#/0 = 𝑎𝑟𝑔min
V∈W
		𝜂ℒ(𝑤, ( 𝑦#, 𝑥#)) +
1
2
𝑤 − 𝑤# 

𝜂:損失の重み
38 KYOTO UNIVERSITY
6.4:PAアルゴリズム
6.4.1	線形分離可能な場合
さっきの式は、以下の最適化問題として定式化できる
𝑤#/0 = 𝑎𝑟𝑔min
V∈W
1
2
𝑤 − 𝑤# 

𝑠𝑢𝑏𝑗𝑒𝑐𝑡	𝑡𝑜	ℒ 𝑤, 𝑦#, 𝑥# = 0.
制約条件は新しい訓練データを正しく分類すること
ヒンジ損失は微分可能でないので
1. ℒ 𝑤, 𝑦#, 𝑥# = 0の時
2. ℒ 𝑤, 𝑦#, 𝑥# = 1 − 𝑦# 𝑤, 𝑥# > 0のとき
で場合分けする
39 KYOTO UNIVERSITY
6.4:PAアルゴリズム
6.4.1	線形分離可能な場合
1. ℒ 𝑤, 𝑦#, 𝑥# = 0の時
𝑤#/0 = 𝑎𝑟𝑔min
V∈W
1
2
𝑤 − 𝑤# 

𝑠𝑢𝑏𝑗𝑒𝑐𝑡	𝑡𝑜	ℒ 𝑤, 𝑦#, 𝑥# = 0.
明らかに𝑤#/0 = 𝑤#
Wに変化がない「Passiveな状態」という
40 KYOTO UNIVERSITY
6.4:PAアルゴリズム
6.4.1	線形分離可能な場合
2. ℒ 𝑤, 𝑦#, 𝑥# = 1 − 𝑦# 𝑤, 𝑥# > 0のとき
ラグランジュの未定乗数法でとく。Lagrange関数は
𝐿 𝑤, 𝜂 =
1
2
𝑤 − 𝑤# 

+ 𝜂 1 − 𝑦# 𝑤, 𝑥#
𝑤で微分して0とおくと、𝑤 = 𝑤# + 𝜂𝑦# 𝑥# をえる。上の式に代入したら
𝐿 𝜂 =
1
2
𝜂𝑦# 𝒙# 

+ 𝜂 1 − 𝑦# 𝑤, 𝑥# =
1
2
𝜂 𝒙# 

+ 𝜂 1 − 𝑦# 𝑤, 𝑥#
𝜂で微分して0とおくと、 𝜂# =
ℒP(VP)
𝒙P Œ
Œ を得る
41 KYOTO UNIVERSITY
6.4:PAアルゴリズム
6.4.1	線形分離可能な場合
以上まとめて
𝜂# =
ℒ#(𝑤#)
𝒙# 
 , 𝑤 = 𝑤# + 𝜂𝑦# 𝑥#
Yやxによってwが変化するaggressiveな状態
42 KYOTO UNIVERSITY
6.4:PAアルゴリズム
6.4.2	ソフトマージンPAアルゴリズム
線形分離できないとき、SVMのときみたいな手法を用いる
誤分類をある程度許容するが、誤分類の程度を最小化する
PAアルゴリズムのソフトマージン化にはPA-1とPA-2がある
PA-1とPa-2の性能はほぼ同じ
43 KYOTO UNIVERSITY
6.4:PAアルゴリズム
6.4.2	PA-1アルゴリズム
n PA-1アルゴリズム
l 損失関数はヒンジ
l 以下の最適化問題として定義
𝑤#/0 = 𝑎𝑟𝑔min
V∈W
1
2
𝑤 − 𝑤# 

+ 𝐶𝜉
𝑠𝑢𝑏𝑗𝑒𝑐𝑡	𝑡𝑜				ℒ# 𝑤 ≤ 𝜉, 𝜉 ≥ 0
ℒ# 𝑤 > 0であるAggressiveな場合の更新式は以下のとおり
𝜂# =
ℒ#(𝑤#)
𝒙# 
 , 𝑤 = 𝑤# + 𝜂𝑦# 𝑥#
Passiveな時は普通のPAアルゴリズムと一緒
44 KYOTO UNIVERSITY
6.4:PAアルゴリズム
6.4.2	PA-1アルゴリズム
n まずLagrange関数
𝐿 𝑤, 𝜉, 𝜂, 𝜆 =
1
2
𝑤 − 𝑤# 

+ 𝐶𝜉 + 𝜂 1 − 𝜉 − 𝑦# 𝑤, 𝑥# − 𝜆𝜉
=	
1
2
𝑤 − 𝑤# 

+ 𝜉 𝐶 − 𝜂 − 𝜆 + 𝜂(1 − 𝑦# 𝑤, 𝑥# )
(𝜂 ≥ 0, 𝜆 ≥ 0)
Wで微分して0と置いて、𝑤 = 𝑤# + 𝜂𝑦# 𝑥#をえる
𝐶 − 𝜂 − 𝜆 < 0だったら、Lをいくらでも小さくできるので
𝐶 − 𝜂 − 𝜆 ≥ 0、つまりC − 𝜂 ≥ 𝜆 ≥ 0なので𝐶 ≥ 𝜂
(よくわかりませんが)Cの範囲について場合分けして考える
KKT条件
45 KYOTO UNIVERSITY
6.4:PAアルゴリズム
6.4.2	PA-1アルゴリズム
1
2
𝑤 − 𝑤# 

+ 𝜉 𝐶 − 𝜂 − 𝜆 + 𝜂 1 − 𝑦# 𝑤, 𝑥#
l 𝐶 ≥
ℒP(VP)
𝒙P Œ
Œ
𝜉 > 0であるべきなので𝐶 − 𝜂 − 𝜆 = 0となる
結局
0

𝑤 − 𝑤# 

+ 𝜂 1 − 𝑦# 𝑤, 𝑥# を最小化すること
これはさっきやったやつと同じ形なので
𝜂# =
ℒ#(𝑤#)
𝒙# 

を得る
46 KYOTO UNIVERSITY
6.4:PAアルゴリズム
6.4.2	PA-1アルゴリズム
1
2
𝑤 − 𝑤# 

+ 𝜉 𝐶 − 𝜂 − 𝜆 + 𝜂 1 − 𝑦# 𝑤, 𝑥#
l 𝐶 <
ℒP(VP)
𝒙P Œ
Œ ↔ 𝐶 𝒙# 

< ℒ#(𝑤#)
1 − 𝑦# 𝑤, 𝑥# ≤ 𝜉に𝑤 = 𝑤# + 𝜂𝑦# 𝑥#を代入し、 1 − 𝑦# 𝑤#, 𝑥# − 𝜂 𝒙# 

≤ 𝜉となる
組み合わせると、
𝐶 𝒙# 

− 𝜂 𝒙# 

< 𝜉 ↔ 𝐶 − 𝜂 𝒙# 

< 𝜉
𝐶 ≥ 𝜂なので、𝜉 > 0. KKT条件から		𝜆𝜉 = 0.なので𝜆 = 0.
𝐶 − 𝜂 − 𝜆 = 0だったので 𝜂 = 𝐶
47 KYOTO UNIVERSITY
6.4:PAアルゴリズム
6.4.2	PA-2アルゴリズム
PA-2アルゴリズムの最適化問題は以下の通り定義される
𝑤#/0 = 𝑎𝑟𝑔min
V∈W
1
2
𝑤 − 𝑤# 

+ 𝐶𝜉	
𝑠𝑢𝑏𝑗𝑒𝑐𝑡	𝑡𝑜				ℒ# 𝑤 ≤ 𝜉,	
更新式は、
𝜂# =
ℒ#(𝑤#)
𝒙# 

+
1
2𝐶
, 𝑤 = 𝑤# + 𝜂𝑦# 𝑥#
Passiveな時は普通のPAと一緒なのでℒ# 𝑤 > 0の𝐴𝑔𝑔𝑟𝑒𝑠𝑖𝑣𝑒な時を
考える
48 KYOTO UNIVERSITY
6.4:PAアルゴリズム
6.4.2	PA-2アルゴリズム
まずLagrange関数
𝐿 𝑤, 𝜉, 𝜂 =
1
2
𝑤 − 𝑤# 

+ 𝐶𝜉	 + 𝜂 1 − 𝜉 − 𝑦# 𝑤, 𝑥#
Wで微分して0と置いて、𝑤 = 𝑤# + 𝜂𝑦# 𝑥#をえる
𝜉で微分して0と置いて、 𝜉 =
g
œ
をえる
Lに代入して、
𝐿 𝑤, 𝜂 =
1
2
𝜂𝑦# 𝑥# 

+ 𝐶
𝜂
4𝐶
+ 𝜂 1 −
𝜂
2𝐶
− 𝑦# 𝑤# + 𝜂𝑦# 𝑥#, 𝑥#
= −
𝜂
2
𝑥# 

+
1
2𝐶
+ 𝜂 1 − 𝑦# 𝑤#, 𝑥#
49 KYOTO UNIVERSITY
6.4:PAアルゴリズム
6.4.2	PA-2アルゴリズム
𝐿 𝑤, 𝜂 = −
𝜂
2
𝑥# 

+
1
2𝐶
+ 𝜂 1 − 𝑦# 𝑤#, 𝑥# 																
これを𝜂で微分して、0とおくと
𝜂 =
1 − 𝑦# 𝑤#, 𝑥#
𝑥# 

+
1
2𝐶
=
ℒ#(𝑤#)
𝑥# 

+
1
2𝐶
50 KYOTO UNIVERSITY
6.5	ラウンド数の対数オーダの収束
51 KYOTO UNIVERSITY
6.5	ラウンド数の対数オーダの収束
n 強凸な目的関数とラウンド数に反比例する勾配への係
数を導入するとRegret上界はlog(t)に比例する
52 KYOTO UNIVERSITY
6.6 双対化座標降下法
53 KYOTO UNIVERSITY
6.6	双対化座標降下法:
n 双対化を活用した座標降下法によるSVM
n オンライン学習ではない?が、1データごとに学習し
分類器を更新するのが似ている
n 訓練データT個
54 KYOTO UNIVERSITY
6.6	双対化座標降下法:
n ソフトマージンSVMと類似の以下の主問題を双対化する
min
V
1
2
𝑤 

+ 𝐶 C 𝜉#
4
#50
					ただし𝐶 > 0
𝑠𝑢𝑏𝑗𝑒𝑐𝑡	𝑡𝑜				1 − 𝑦# 𝑤, 𝑥# − 𝜉# ≤ 0									(𝑡 = 1, … , 𝑇)
𝜉# ≥ 0						
ソフトマージンSVM
55 KYOTO UNIVERSITY
6.6	双対化座標降下法:
双対化
n 双対化すると、
min
ž
𝑓 𝒂 ≡ (
1
2
𝒂4
𝑄𝒂 − 𝒆4
𝒂)
𝑠𝑢𝑏𝑗𝑒𝑐𝑡	𝑡𝑜			0 ≤ 𝑎# ≤ 𝐶, 𝒆 = 1,1, … , 1
𝑤ℎ𝑒𝑟𝑒			𝑄‚£ = 𝑦‚ 𝑦£ 𝑥‚, 𝑥£
重みパラメータ→個別データパラメータ
56 KYOTO UNIVERSITY
6.6	双対化座標降下法:
座標降下法
n 順番に1変数ずつ選び、他の縁数は固定して最適化
n 1〜t-1番目までの重みが更新済み、t〜T番目までが未更新
n 𝑎# = [𝑎0¥, … 𝑎#X0,¦ 𝑎#, … , 𝑎4]	4
n 𝑎#の更新を行う。	𝑎#の更新による変化量をdとすると更新後の
𝒂 𝒕 = 𝒂 𝒕 + 𝑑𝑒#						𝑒# ∶	one-hot
n 最適化問題を書き換えると
min
¨
𝑓 𝒂 𝒕
+ 𝑑𝑒#
𝑠𝑢𝑏𝑗𝑒𝑐𝑡	𝑡𝑜			0 ≤ 𝑎# + 𝑑 ≤ 𝐶
57 KYOTO UNIVERSITY
6.6	双対化座標降下法:
n 𝑓 𝒂 𝒕
+ 𝑑𝑒# =
0

𝑄## 𝑑
+ ∇# 𝑓 𝒂 𝒕
𝑑 + 𝑐𝑜𝑛𝑠𝑡
n 制約付き勾配∇#
ª
𝑓 𝑎 を以下のように定義
𝛻#
ª
𝑓 𝑎 = «
𝛻# 𝑓 𝑎 												0 < 𝑎# < 𝐶
min 0, 𝛻# 𝑓 𝑎 				
max 0, 𝛻# 𝑓 𝑎 						𝑎# = 𝐶
𝑎# = 0
58 KYOTO UNIVERSITY
6.6	双対化座標降下法:
n 𝑓 𝒂 𝒕
+ 𝑑𝑒# =
0

𝑄## 𝑑
+ ∇# 𝑓 𝒂 𝒕
𝑑 + 𝑐𝑜𝑛𝑠𝑡
=
1
2
𝑄## 𝑑
+
2
𝑄##
𝛻# 𝑓 𝒂 𝒕
𝑑 + const
=
1
2
𝑄##(𝑑 +
1
𝑄##
𝛻# 𝑓 𝒂 𝒕
)	
+ 𝑐𝑜𝑛𝑠𝑡
l d=−
-P® žP
¯PP
でfは最小化されるので
l 更新式は、
𝑎±# = min	(max	(0, 𝑎# −
-P® žP
¯PP
),	C)
59 KYOTO UNIVERSITY
6.6	双対化座標降下法:
𝛻# 𝑓 𝒂#
= 𝛻#
1
2
𝒂4
𝑄𝒂 − 𝑒4
𝑎 = 𝑄𝒂 − 𝑒4
#
= C 𝑄#² 𝑎² − 1
4
²50
= C 𝑦# 𝑦² 𝑥#, 𝑥² 𝑎² − 1
4
²50
= 𝑦# C 𝑦² 𝑎² 𝒙²
4
²50
, 𝑥# − 1 = 𝑦# 𝑤, 𝑥# − 1
𝑄#²の計算よりもwの計算の方が計算量が小さい
wの更新式は
𝑤³´V = 𝑤 + 𝑦#(𝑎# − 𝑎±#)𝑥#
60 KYOTO UNIVERSITY
6.6	双対化座標降下法:
n メモリより大きなデータに対応したSVM
n 全訓練データをメモリより小さなブロッックに分割
する
n ブロックを1つずつ読み込み、𝒂が収束するまで双対
化座標降下法で更新
n 収束した𝑎, 𝑤を初期値として次のブロックに移る

More Related Content

Similar to オンライン学習 : Online learning

Fourier transform
Fourier transformFourier transform
Fourier transform
ShinoharaTakuto
 
スパースモデリングによる多次元信号・画像復元
スパースモデリングによる多次元信号・画像復元スパースモデリングによる多次元信号・画像復元
スパースモデリングによる多次元信号・画像復元
Shogo Muramatsu
 
「plyrパッケージで君も前処理スタ☆」改め「plyrパッケージ徹底入門」
「plyrパッケージで君も前処理スタ☆」改め「plyrパッケージ徹底入門」「plyrパッケージで君も前処理スタ☆」改め「plyrパッケージ徹底入門」
「plyrパッケージで君も前処理スタ☆」改め「plyrパッケージ徹底入門」
Nagi Teramo
 
ITエンジニアのための機械学習理論入門 第5章
ITエンジニアのための機械学習理論入門 第5章ITエンジニアのための機械学習理論入門 第5章
ITエンジニアのための機械学習理論入門 第5章
Isao Takaesu
 
Variational autoencoder
Variational autoencoderVariational autoencoder
Variational autoencoder
Mikio Shiga
 
Deeplearning4.4 takmin
Deeplearning4.4 takminDeeplearning4.4 takmin
Deeplearning4.4 takmin
Takuya Minagawa
 
わかりやすいパターン認識 4章
わかりやすいパターン認識 4章わかりやすいパターン認識 4章
わかりやすいパターン認識 4章
Motokawa Tetsuya
 
AI2: Safety and Robustness Certification of Neural Networks with Abstract Int...
AI2: Safety and Robustness Certification of Neural Networks with Abstract Int...AI2: Safety and Robustness Certification of Neural Networks with Abstract Int...
AI2: Safety and Robustness Certification of Neural Networks with Abstract Int...
T T
 
充足可能性問題のいろいろ
充足可能性問題のいろいろ充足可能性問題のいろいろ
充足可能性問題のいろいろ
Hiroshi Yamashita
 
退化拡散項をもつ放物・放物型Keller--Segel系の解の有限時刻爆発について
退化拡散項をもつ放物・放物型Keller--Segel系の解の有限時刻爆発について退化拡散項をもつ放物・放物型Keller--Segel系の解の有限時刻爆発について
退化拡散項をもつ放物・放物型Keller--Segel系の解の有限時刻爆発について
Takahiro Hashira
 
LLM は数学を理解しているのか?
LLM は数学を理解しているのか?LLM は数学を理解しているのか?
LLM は数学を理解しているのか?
Hide Koba
 
Fourier analysis on symmetric group
Fourier analysis on symmetric groupFourier analysis on symmetric group
Fourier analysis on symmetric group
HanpenRobot
 
退化型Keller--Segel系の解の有限時刻爆発について
退化型Keller--Segel系の解の有限時刻爆発について退化型Keller--Segel系の解の有限時刻爆発について
退化型Keller--Segel系の解の有限時刻爆発について
Takahiro Hashira
 
Blow up in a degenerate keller--segel system
Blow up in a degenerate keller--segel systemBlow up in a degenerate keller--segel system
Blow up in a degenerate keller--segel system
Takahiro Hashira
 
Time series analysis with python chapter2-1
Time series analysis with python  chapter2-1Time series analysis with python  chapter2-1
Time series analysis with python chapter2-1
ShoKumada
 
猫でも分かるVariational AutoEncoder
猫でも分かるVariational AutoEncoder猫でも分かるVariational AutoEncoder
猫でも分かるVariational AutoEncoder
Sho Tatsuno
 
波動方程式
波動方程式波動方程式
波動方程式
yu sa
 
University CodeSprint 4 - Magic value
University CodeSprint 4 - Magic valueUniversity CodeSprint 4 - Magic value
University CodeSprint 4 - Magic value
satanic
 
PRML復々習レーン#3 3.1.3-3.1.5
PRML復々習レーン#3 3.1.3-3.1.5PRML復々習レーン#3 3.1.3-3.1.5
PRML復々習レーン#3 3.1.3-3.1.5
sleepy_yoshi
 
PRML第6章「カーネル法」
PRML第6章「カーネル法」PRML第6章「カーネル法」
PRML第6章「カーネル法」
Keisuke Sugawara
 

Similar to オンライン学習 : Online learning (20)

Fourier transform
Fourier transformFourier transform
Fourier transform
 
スパースモデリングによる多次元信号・画像復元
スパースモデリングによる多次元信号・画像復元スパースモデリングによる多次元信号・画像復元
スパースモデリングによる多次元信号・画像復元
 
「plyrパッケージで君も前処理スタ☆」改め「plyrパッケージ徹底入門」
「plyrパッケージで君も前処理スタ☆」改め「plyrパッケージ徹底入門」「plyrパッケージで君も前処理スタ☆」改め「plyrパッケージ徹底入門」
「plyrパッケージで君も前処理スタ☆」改め「plyrパッケージ徹底入門」
 
ITエンジニアのための機械学習理論入門 第5章
ITエンジニアのための機械学習理論入門 第5章ITエンジニアのための機械学習理論入門 第5章
ITエンジニアのための機械学習理論入門 第5章
 
Variational autoencoder
Variational autoencoderVariational autoencoder
Variational autoencoder
 
Deeplearning4.4 takmin
Deeplearning4.4 takminDeeplearning4.4 takmin
Deeplearning4.4 takmin
 
わかりやすいパターン認識 4章
わかりやすいパターン認識 4章わかりやすいパターン認識 4章
わかりやすいパターン認識 4章
 
AI2: Safety and Robustness Certification of Neural Networks with Abstract Int...
AI2: Safety and Robustness Certification of Neural Networks with Abstract Int...AI2: Safety and Robustness Certification of Neural Networks with Abstract Int...
AI2: Safety and Robustness Certification of Neural Networks with Abstract Int...
 
充足可能性問題のいろいろ
充足可能性問題のいろいろ充足可能性問題のいろいろ
充足可能性問題のいろいろ
 
退化拡散項をもつ放物・放物型Keller--Segel系の解の有限時刻爆発について
退化拡散項をもつ放物・放物型Keller--Segel系の解の有限時刻爆発について退化拡散項をもつ放物・放物型Keller--Segel系の解の有限時刻爆発について
退化拡散項をもつ放物・放物型Keller--Segel系の解の有限時刻爆発について
 
LLM は数学を理解しているのか?
LLM は数学を理解しているのか?LLM は数学を理解しているのか?
LLM は数学を理解しているのか?
 
Fourier analysis on symmetric group
Fourier analysis on symmetric groupFourier analysis on symmetric group
Fourier analysis on symmetric group
 
退化型Keller--Segel系の解の有限時刻爆発について
退化型Keller--Segel系の解の有限時刻爆発について退化型Keller--Segel系の解の有限時刻爆発について
退化型Keller--Segel系の解の有限時刻爆発について
 
Blow up in a degenerate keller--segel system
Blow up in a degenerate keller--segel systemBlow up in a degenerate keller--segel system
Blow up in a degenerate keller--segel system
 
Time series analysis with python chapter2-1
Time series analysis with python  chapter2-1Time series analysis with python  chapter2-1
Time series analysis with python chapter2-1
 
猫でも分かるVariational AutoEncoder
猫でも分かるVariational AutoEncoder猫でも分かるVariational AutoEncoder
猫でも分かるVariational AutoEncoder
 
波動方程式
波動方程式波動方程式
波動方程式
 
University CodeSprint 4 - Magic value
University CodeSprint 4 - Magic valueUniversity CodeSprint 4 - Magic value
University CodeSprint 4 - Magic value
 
PRML復々習レーン#3 3.1.3-3.1.5
PRML復々習レーン#3 3.1.3-3.1.5PRML復々習レーン#3 3.1.3-3.1.5
PRML復々習レーン#3 3.1.3-3.1.5
 
PRML第6章「カーネル法」
PRML第6章「カーネル法」PRML第6章「カーネル法」
PRML第6章「カーネル法」
 

More from Daiki Tanaka

[Paper Reading] Theoretical Analysis of Self-Training with Deep Networks on U...
[Paper Reading] Theoretical Analysis of Self-Training with Deep Networks on U...[Paper Reading] Theoretical Analysis of Self-Training with Deep Networks on U...
[Paper Reading] Theoretical Analysis of Self-Training with Deep Networks on U...
Daiki Tanaka
 
カーネル法:正定値カーネルの理論
カーネル法:正定値カーネルの理論カーネル法:正定値カーネルの理論
カーネル法:正定値カーネルの理論
Daiki Tanaka
 
[Paper Reading] Causal Bandits: Learning Good Interventions via Causal Inference
[Paper Reading] Causal Bandits: Learning Good Interventions via Causal Inference[Paper Reading] Causal Bandits: Learning Good Interventions via Causal Inference
[Paper Reading] Causal Bandits: Learning Good Interventions via Causal Inference
Daiki Tanaka
 
[Paper reading] L-SHAPLEY AND C-SHAPLEY: EFFICIENT MODEL INTERPRETATION FOR S...
[Paper reading] L-SHAPLEY AND C-SHAPLEY: EFFICIENT MODEL INTERPRETATION FOR S...[Paper reading] L-SHAPLEY AND C-SHAPLEY: EFFICIENT MODEL INTERPRETATION FOR S...
[Paper reading] L-SHAPLEY AND C-SHAPLEY: EFFICIENT MODEL INTERPRETATION FOR S...
Daiki Tanaka
 
Selective inference
Selective inferenceSelective inference
Selective inference
Daiki Tanaka
 
Anomaly Detection with VAEGAN and Attention [JSAI2019 report]
Anomaly Detection with VAEGAN and Attention [JSAI2019 report]Anomaly Detection with VAEGAN and Attention [JSAI2019 report]
Anomaly Detection with VAEGAN and Attention [JSAI2019 report]
Daiki Tanaka
 
[Paper Reading] Attention is All You Need
[Paper Reading] Attention is All You Need[Paper Reading] Attention is All You Need
[Paper Reading] Attention is All You Need
Daiki Tanaka
 
Local Outlier Detection with Interpretation
Local Outlier Detection with InterpretationLocal Outlier Detection with Interpretation
Local Outlier Detection with Interpretation
Daiki Tanaka
 
Interpretability of machine learning
Interpretability of machine learningInterpretability of machine learning
Interpretability of machine learning
Daiki Tanaka
 
The Million Domain Challenge: Broadcast Email Prioritization by Cross-domain ...
The Million Domain Challenge: Broadcast Email Prioritization by Cross-domain ...The Million Domain Challenge: Broadcast Email Prioritization by Cross-domain ...
The Million Domain Challenge: Broadcast Email Prioritization by Cross-domain ...
Daiki Tanaka
 
The Limits of Popularity-Based Recommendations, and the Role of Social Ties
The Limits of Popularity-Based Recommendations, and the Role of Social TiesThe Limits of Popularity-Based Recommendations, and the Role of Social Ties
The Limits of Popularity-Based Recommendations, and the Role of Social Ties
Daiki Tanaka
 
Learning Deep Representation from Big and Heterogeneous Data for Traffic Acci...
Learning Deep Representation from Big and Heterogeneous Data for Traffic Acci...Learning Deep Representation from Big and Heterogeneous Data for Traffic Acci...
Learning Deep Representation from Big and Heterogeneous Data for Traffic Acci...
Daiki Tanaka
 
Toeplitz Inverse Covariance-Based Clustering of Multivariate Time Series Data
Toeplitz Inverse Covariance-Based Clustering of Multivariate Time Series DataToeplitz Inverse Covariance-Based Clustering of Multivariate Time Series Data
Toeplitz Inverse Covariance-Based Clustering of Multivariate Time Series Data
Daiki Tanaka
 

More from Daiki Tanaka (13)

[Paper Reading] Theoretical Analysis of Self-Training with Deep Networks on U...
[Paper Reading] Theoretical Analysis of Self-Training with Deep Networks on U...[Paper Reading] Theoretical Analysis of Self-Training with Deep Networks on U...
[Paper Reading] Theoretical Analysis of Self-Training with Deep Networks on U...
 
カーネル法:正定値カーネルの理論
カーネル法:正定値カーネルの理論カーネル法:正定値カーネルの理論
カーネル法:正定値カーネルの理論
 
[Paper Reading] Causal Bandits: Learning Good Interventions via Causal Inference
[Paper Reading] Causal Bandits: Learning Good Interventions via Causal Inference[Paper Reading] Causal Bandits: Learning Good Interventions via Causal Inference
[Paper Reading] Causal Bandits: Learning Good Interventions via Causal Inference
 
[Paper reading] L-SHAPLEY AND C-SHAPLEY: EFFICIENT MODEL INTERPRETATION FOR S...
[Paper reading] L-SHAPLEY AND C-SHAPLEY: EFFICIENT MODEL INTERPRETATION FOR S...[Paper reading] L-SHAPLEY AND C-SHAPLEY: EFFICIENT MODEL INTERPRETATION FOR S...
[Paper reading] L-SHAPLEY AND C-SHAPLEY: EFFICIENT MODEL INTERPRETATION FOR S...
 
Selective inference
Selective inferenceSelective inference
Selective inference
 
Anomaly Detection with VAEGAN and Attention [JSAI2019 report]
Anomaly Detection with VAEGAN and Attention [JSAI2019 report]Anomaly Detection with VAEGAN and Attention [JSAI2019 report]
Anomaly Detection with VAEGAN and Attention [JSAI2019 report]
 
[Paper Reading] Attention is All You Need
[Paper Reading] Attention is All You Need[Paper Reading] Attention is All You Need
[Paper Reading] Attention is All You Need
 
Local Outlier Detection with Interpretation
Local Outlier Detection with InterpretationLocal Outlier Detection with Interpretation
Local Outlier Detection with Interpretation
 
Interpretability of machine learning
Interpretability of machine learningInterpretability of machine learning
Interpretability of machine learning
 
The Million Domain Challenge: Broadcast Email Prioritization by Cross-domain ...
The Million Domain Challenge: Broadcast Email Prioritization by Cross-domain ...The Million Domain Challenge: Broadcast Email Prioritization by Cross-domain ...
The Million Domain Challenge: Broadcast Email Prioritization by Cross-domain ...
 
The Limits of Popularity-Based Recommendations, and the Role of Social Ties
The Limits of Popularity-Based Recommendations, and the Role of Social TiesThe Limits of Popularity-Based Recommendations, and the Role of Social Ties
The Limits of Popularity-Based Recommendations, and the Role of Social Ties
 
Learning Deep Representation from Big and Heterogeneous Data for Traffic Acci...
Learning Deep Representation from Big and Heterogeneous Data for Traffic Acci...Learning Deep Representation from Big and Heterogeneous Data for Traffic Acci...
Learning Deep Representation from Big and Heterogeneous Data for Traffic Acci...
 
Toeplitz Inverse Covariance-Based Clustering of Multivariate Time Series Data
Toeplitz Inverse Covariance-Based Clustering of Multivariate Time Series DataToeplitz Inverse Covariance-Based Clustering of Multivariate Time Series Data
Toeplitz Inverse Covariance-Based Clustering of Multivariate Time Series Data
 

オンライン学習 : Online learning

  • 1. 1 KYOTO UNIVERSITY KYOTO UNIVERSITY 第6章 オンライン学習 Daiki Tankaa Department of Intelligence Science and Technology
  • 2. 2 KYOTO UNIVERSITY contents: n 6.1 概要 n 6.2 正則化項つき累積損失最小化法 n 6.3 パーセプトロン n 6.4 Passive-Aggressiveアルゴリズム n 6.5 ラウンド数の対数オーダの収束 n 6.6 双対化座標降下法
  • 4. 4 KYOTO UNIVERSITY 6.1 概要: 概念と定式化 n バッチ学習 観測データは全てメモリにロードされ、処理する順番に制約は ない n オンライン学習 • 観測データ集合から1つずつデータを取り出して学習を行う • 1データ読み込むごとに学習結果を更新 • 時系列データに有効 • メモリに乗り切らないほど大きなデータに対する学習が可能
  • 5. 5 KYOTO UNIVERSITY 6.1 概要: 概念と定式化 n オンライン学習の骨格 Step0 : step1をℎ(#) が収束するまで繰り返す Step1 : 𝑡 = 1,2, … , 𝑇まで以下のstep1-1、step1-2を繰り返す Step1-1 : データ𝑥#に対するℎ # 𝑥# を計算 Step1-2 : ℎ # 𝑥# ≠ 𝑦#なら、 ℎ(#)をℎ(#/0)に更新 ラウンド
  • 6. 6 KYOTO UNIVERSITY 6.1.2 評価指標: 累積損失 n 累積損失 l 時刻Tまでの損失の和 l 累積損失 = ∑ ℒ(ℎ # 𝑥# , 𝑦#)4 #50 = ∑ 𝐿#(𝑤#)4 #50 (線形な分類器の場合)
  • 7. 7 KYOTO UNIVERSITY 6.1.2 評価指標: Regret(1) n 累積損失 ∑ ℒ(ℎ # 𝑥# , 𝑦#)4 #50 を最小化したい n 累積損失の上界を求めたいが、損失の評価は難しい n そこで、ある時刻によらない分類器 h が生ずる累積損 失との差をRegret といい、評価指標とする n 特定の h に対して、T個の訓練データを処理した時のRegretは、 𝑅𝑒𝑔𝑟𝑒𝑡4(ℎ) = C ℒ ℎ # 𝑥# , 𝑦# − C ℒ(ℎ 𝑥# , 𝑦#) 4 #50 4 #50
  • 8. 8 KYOTO UNIVERSITY 6.1.2 評価指標: Regret (2) n 仮設空間ℋに拡張したら 𝑅𝑒𝑔𝑟𝑒𝑡4 ℋ = max I∗∈ℋ 𝑅𝑒𝑔𝑟𝑒𝑡4 ℎ = C ℒ ℎ # 𝒙# , 𝑦# − min I∈ℋ C ℒ(ℎ 𝒙# , 𝑦#) 4 #50 4 #50 = C ℒ ℎ # 𝒙# , 𝑦# − 4 #50 C ℒ(ℎ∗ 𝒙# , 𝑦#) 4 #50 ただし、ℎ∗ = 𝑎𝑟𝑔min I(P)∈ℋ ∑ ℒ(ℎ(#) 𝒙# , 𝑦#)4 #50
  • 9. 9 KYOTO UNIVERSITY 6.1.2 評価指標: Regret (3) 𝑚𝑖𝑛 𝑅𝑒𝑔𝑟𝑒𝑡4 ℋ = 𝑚𝑖𝑛 𝑚𝑎𝑥 𝑅𝑒𝑔𝑟𝑒𝑡4 ℎ 𝑅𝑒𝑔𝑟𝑒𝑡4 ℎ∗
  • 10. 10 KYOTO UNIVERSITY 6.1.2 評価指標: 失敗回数の上界 n 二値分類で、2つのクラスが完全に分類できる場合 n あるラウンドからは完全にクラスを分類できるはず n 常に予測結果が正解と一致するはず n 失敗しなくなるまでのラウンド数を失敗回数の上界という
  • 11. 11 KYOTO UNIVERSITY 6.2 正則化項つき累積損失最小化法
  • 12. 12 KYOTO UNIVERSITY 6.2.1 : 累積損失最小化法 Follow-The-Leader (FTL) n 1つ前までのラウンドに対する累積損失を最小にするように𝑤T を選ぶ n 現在のラウンド:𝜏 𝑤T = argmin V∈W C ℒ#(𝑤) TX0 #50 𝜏 = 2, … , 𝑇 .
  • 13. 13 KYOTO UNIVERSITY 6.2.1 : 累積損失最小化法 FTLのRegret 補題6.1 FTLで学習した重み𝑤0, 𝑤, … 𝑤4と、 𝑢 ∈ 𝑆に対して∀ 𝑅𝑒𝑔𝑟𝑒𝑡4 𝑢 = C(𝐿# 𝑤# − 𝐿#(𝑢 4 #50 )) ≤ C(𝐿# 𝑤# − 𝐿# 𝑤#/0 ) 4 #50 l ∑ 𝐿# 𝑤#/0 4 #50 ≤ ∑ 𝐿# 𝑢4 #50 を示せばいい l 帰納法
  • 14. 14 KYOTO UNIVERSITY 6.2.1 : 累積損失最小化法 FTLのRegret上界 系6.1 FTLで学習した重み𝑤0, 𝑤, … 𝑤4に対して 𝑅𝑒𝑔𝑟𝑒𝑡4 𝑆 = C(𝐿# 𝑤# − min a∈W 𝐿#(𝑢) 4 #50 ) ≤ C(𝐿# 𝑤# − 𝐿# 𝑤#/0 ) 4 #50
  • 15. 15 KYOTO UNIVERSITY 6.2.1 : 正則化つき方法 Follow-The-Regularized-Leader (FoReL) n FTLでは、wに制約がなく、wの値がラウンドごとに大きく変化 してしまうことがある n 正則化項をつけて安定化させる 𝑤T/0 = argmin V∈W (C ℒ# 𝑤 T #50 + 𝑅 𝑤 ) 𝜏 = 1,2, … , 𝑇 .
  • 16. 16 KYOTO UNIVERSITY 6.2.1 : 累積損失最小化法 FoReLのRegret 補題6.2 F𝑜𝑅𝑒𝐿で学習した重み𝑤0, 𝑤, … 𝑤4と、 𝑢 ∈ 𝑆に対して∀ 𝑅𝑒𝑔𝑟𝑒𝑡4 𝑢 = C(𝐿# 𝑤# − 𝐿#(𝑢 4 #50 )) ≤ 𝑅 𝑢 + 𝑅 𝑤0 + C(𝐿# 𝑤# − 𝐿# 𝑤#/0 ) 4 #50 なので、FoReLのRegret上界は、 系6.2 𝑅𝑒𝑔𝑟𝑒𝑡4 𝑆 = C(𝐿# 𝑤# − min a∈W 𝐿#(𝑢) 4 #50 ) ≤ min 𝑅(𝑢) + 𝑅 𝑤0 + C(𝐿# 𝑤# − 𝐿# 𝑤#/0 ) 4 #50
  • 17. 17 KYOTO UNIVERSITY 6.2.2 : 正則化項つき方法 FoReLの具体例:オンライン勾配降下法 n 訓練データ ∶ 𝑧# = 𝛻ℒ#(𝑤#) n 損失:ℒ# 𝑤 = 𝑤, 𝑧# は、𝑧# = 𝛻ℒ#(𝑤#)を満たす n 正則化項:𝑅 𝑤 = 0 g 𝑤 とする n この時、FoReLの式は、 𝑤T/0 = argmin V∈W (∑ ℒ# 𝑤T #50 + 𝑅 𝑤 ) に代入して 𝑤T/0 = argmin V∈W (C 𝑤, 𝑧# T #50 + 1 2𝜂 𝑤 ) 𝑤T/0を求めるためには、wで偏微分して0をとけば良い
  • 18. 18 KYOTO UNIVERSITY 6.2.2 : 正則化項つき方法 FoReLの具体例:オンライン勾配降下法 n 𝑤T/0を求めるためには、wで偏微分して0をとけば良い 0 = 𝜕 𝜕𝑤 (C 𝑤, 𝑧# T #50 + 1 2𝜂 𝑤 ) = C 𝑧# T #50 + 𝑤 𝜂 よって、𝑤T/0 = −𝜂 C 𝑧# T #50 , 𝑤T = −𝜂 C 𝑧# TX0 #50 𝑤T/0 = 𝑤T − 𝜂𝑧# ここで、𝑧# = 𝛻ℒ#(𝑤#)を代入すると 𝑤T/0 = 𝑤T − 𝜂𝛻ℒT(𝑤T) このwの更新方法をオンライン勾配降下法という
  • 19. 19 KYOTO UNIVERSITY 6.2.2 : 正則化項つき方法 オンライン勾配降下法のRegret(1) 任意の 𝑢 ∈ 𝑆 に対して、 𝑅𝑒𝑔𝑟𝑒𝑡4 𝑢 の上界は 𝑅𝑒𝑔𝑟𝑒𝑡4 𝑢 ≤ 𝑅 𝑢 + 𝑅 𝑤0 + C(𝐿# 𝑤# − 𝐿# 𝑤#/0 ) 4 #50 = 1 2𝜂 𝑢 + 0 + C( 𝑤#, 𝑧# − 𝑤#/0, 𝑧# ) 4 #50 = 1 2𝜂 𝑢 + C( 𝑤# − 𝑤#/0, 𝑧# ) 4 #50 = 1 2𝜂 𝑢 + C 𝜂𝑧#, 𝑧# 4 #50 = 1 2𝜂 𝑢 + 𝜂 C 𝑧# 4 #50
  • 20. 20 KYOTO UNIVERSITY 6.2.2 : 正則化項つき方法 オンライン勾配降下法のRegret(2) l 𝑅𝑒𝑔𝑟𝑒𝑡4 𝒰 = max a∈𝒰 𝑅𝑒𝑔𝑟𝑒𝑡4 𝑢 ≤ 0 g 𝑢 + 𝜂 ∑ 𝑧# 4 #50 ≤ 1 2𝜂 𝐵 + 𝜂𝑇𝐿 = 𝐿 2𝑇 2𝐵 𝐵 + 𝐵 𝐿 2𝑇 𝑇𝐿 = 𝐵𝐿 2𝑇 l 1データあたりのRegretの平均値は↓で抑えられる 1 𝑇 𝑅𝑒𝑔𝑟𝑒𝑡4 𝒰 ≤ 2 𝐵𝐿 𝑇 訓練データの数(T) が増えるほど分類器の性能が良くなることがわかる
  • 21. 21 KYOTO UNIVERSITY 6.2.3 : 劣勾配 損失関数ℒの微分が連続でない場合 n 定義6.1 任意の𝑣, 𝑢に対して、 𝑓 𝑢 ≥ 𝑓 𝑣 + 𝑢 − 𝑣, 𝑧 を満たすベクトル z を v における f の劣勾配と呼ぶ。f の劣勾配 の集合を劣微分と呼び、𝜕𝑓 𝑣 とかく。 f の微分が連続なら、 𝜕𝑓 𝑣 = 𝛻𝑓 𝑣 劣勾配を使ったオンライン勾配降下法は、 𝑤#/0 = 𝑤# − 𝜂𝑧# ただし、 𝜂 > 0, 𝑤0 = 0, 𝑧# ∈ 𝜕ℒ#(𝑤#)
  • 22. 22 KYOTO UNIVERSITY 6.2.4 : オンライン勾配降下法のRegret上界 より厳しい上界(1) 𝑤T/0 = argmin V∈W (C 𝒘, 𝒛𝒕 T #50 + 𝑅 𝒘 ) = argm𝑎𝑥 V∈W (− C 𝒘, 𝒛𝒕 T #50 − 𝑅 𝒘 ) = 𝑎𝑟𝑔max V ( 𝒘, − C 𝒛# T #50 − 𝑅 𝒘 ) とおくと、FoReLの更新アルゴリズムは、 𝑤u = 0 𝑓𝑜𝑟 𝑡 = 1,2, … , 𝑇 𝑤#/0 = 𝑎𝑟𝑔max V ( 𝒘, − C 𝒛# T #50 − 𝑅 𝒘 ) 𝑧#/0 ∈ 𝜕ℒ#(𝑤) このアルゴリズムの Regret上界を求める
  • 23. 23 KYOTO UNIVERSITY 6.2.4 : オンライン勾配降下法のRegret上界 より厳しい上界(2) 準備1 n Fenchel-Young不等式(1) 𝑅 𝑢 : 微分可能な凸関数、例えば 0 𝑢 𝑓 𝜃 = 𝑢, 𝜃 − 𝑅 𝑢 の最大値 𝑅∗ 𝜃 = max a ( 𝑢, 𝜃 − 𝑅 𝑢 )をR(u)のFenchel共役という 定義から、以下のFenchel-Young不等式が成り立つ 任意のuに対して、𝑅∗ 𝜃 ≥ 𝑢, 𝜃 − 𝑅 𝑢 𝑢 ∈ 𝜕𝑅∗ 𝜃 あるいは𝑢 = 𝜃で微分可能なら𝑢 = 𝛻𝑅∗ 𝜃 とすると、 𝑅∗ 𝜃 = 𝑢, 𝜃 − 𝑅 𝑢
  • 24. 24 KYOTO UNIVERSITY 6.2.4 : オンライン勾配降下法のRegret上界 より厳しい上界(3) 準備1 n Fenchel-Young不等式(2) 𝑅∗ 𝜃 = max a ( 𝑢, 𝜃 − 𝑅 𝑢 ) ∶ R(u)のFenchel共役 𝑅 𝑤 = 0 g 𝑤 だったら、RのFenchel共役は、 𝑅∗ 𝜃 = max a ( 𝑢, 𝜃 − 1 2𝜂 𝑢 ) = 𝜂 2 𝜃
  • 25. 25 KYOTO UNIVERSITY 6.2.4 : オンライン勾配降下法のRegret上界 より厳しい上界(4) 準備2 n Bregmanダイバージェンス 𝑅∗ 𝒖 = g 𝒖 のBregmanダイバージェンスは、 𝛻 𝑅∗ 𝒖 = 𝜂𝒖 から、 𝐷€ 𝒘 ∥ 𝒖 = 𝜂 2 𝒘 − 𝒖
  • 26. 26 KYOTO UNIVERSITY 6.2.4 : オンライン勾配降下法のRegret上界 より厳しい上界(5) n 補題6.3 さっきの更新アルゴリズムを用いた場合、対象領域Sの中に 𝑤#, 𝑢が入っている時、次の不等式が成り立つ C 𝑤# − 𝑢, 𝑧# 4 #50 ≤ 𝑅 𝑢 − 𝑅 𝑤0 + C 𝐷€∗(− C 𝑧‚ # ‚50 ∥ 4 #50 − C 𝑧‚ #X0 ‚50 )
  • 27. 27 KYOTO UNIVERSITY 6.2.4 : オンライン勾配降下法のRegret上界 より厳しい上界(6) n 定理6.1 さっきの更新アルゴリズムを用いた場合、 𝑅 𝑤 = 0 g 𝑤 なら、次の不等式が成り立つ C 𝑤# − 𝑢, 𝑧# 4 #50 ≤ 1 2𝜂 𝑢 + 𝜂 2 C 𝑧# 4 #50 𝐿 = 1 𝑇 C 𝑧# 4 #50 かつ、 𝑢 ≤ 𝐵とおくと上の右辺は、 𝜂 = 𝐵 𝐿 𝑇 の時最小となり、 Regret
  • 28. 28 KYOTO UNIVERSITY 6.3 パーセプトロン
  • 29. 29 KYOTO UNIVERSITY 6.3:パーセプトロン n FoReLから導出されるオンライン勾配降下法の例 n 観測データが目的のクラスに l 属するなら1 l 属さないなら-1 n 損失関数 ℒ# 𝑤 = [−𝑦# 𝑤, 𝑥# ]/ • [−𝑦# 𝑤, 𝑥# ]/= … −𝑦# 𝑤, 𝑥# 𝑖𝑓 [−𝑦# 𝑤, 𝑥# ] ≥ 0 0 𝑜𝑡ℎ𝑒𝑟𝑤𝑖𝑠𝑒
  • 30. 30 KYOTO UNIVERSITY 6.3:パーセプトロン n 損失関数が w = 0 で微分可能ではないので劣微分 𝑧# を使う 𝑖𝑓 𝑦# 𝑤, 𝑥# > 0 𝑡ℎ𝑒𝑛 𝑧# = 𝛻ℒ# 𝑤 = 0 𝑜𝑡ℎ𝑒𝑟𝑤𝑖𝑠𝑒 𝑧# = 𝛻ℒ# 𝑤 = −𝑦# 𝑥# ∈ 𝜕ℒ#(𝑤) n 𝑤T/0 = 𝑤T − 𝜂𝑧# に当てはめると、、、
  • 31. 31 KYOTO UNIVERSITY 6.3:パーセプトロン パーセプトロンの更新アルゴリズム 𝑤0 = 0 𝑓𝑜𝑟 𝑡 = 1,2, … , 𝑇 𝑖𝑓 𝑦# 𝑤#, 𝑥# ≤ 0 𝑡ℎ𝑒𝑛 𝑤T/0 = 𝑤T + 𝜂𝑦# 𝑥# 𝑜𝑡ℎ𝑒𝑟𝑤𝑖𝑠𝑒 𝑤#/05 𝑤# 初期化 分類に失敗した時だけ更新
  • 32. 32 KYOTO UNIVERSITY 6.3:パーセプトロン 分類の失敗回数の上限(1) 𝑅𝑒𝑔𝑟𝑒𝑡4 𝑢 ≤ 1 2𝜂 𝑢 + 𝜂 2 C 𝑧# 4 #50 簡単のために、損失関数をヒンジ損失で近似 分類失敗時の劣微分𝑧# = −𝑦# 𝒙#、 𝑧# = 𝑥# 分類に失敗した時、𝑦# 𝑤#, 𝑥# < 0なので、損失は 𝐿# 𝑤 = 1 − 𝑦# 𝑤#, 𝑥# > 1
  • 33. 33 KYOTO UNIVERSITY 6.3:パーセプトロン 分類の失敗回数の上限(2) 𝑅𝑒𝑔𝑟𝑒𝑡4 𝑢 ≤ 1 2𝜂 𝑢 + 𝜂 2 C 𝑧# 4 #50 𝐿# 𝑤 = 1 − 𝑦# 𝑤#, 𝑥# > 1 分類に失敗した𝑥#の集合をℳとすると失敗回数は ℳ で、 ℳ ≤ C 𝐿# 𝑤 4 #50 よって ℳ − C 𝐿# 𝑢 4 #5u ≤ C 𝐿# 𝑤 4 #50 − C 𝐿# 𝑢 4 #5u ≤ C 𝐿# 𝑤 4 #5u − C 𝐿# 𝑢 4 #5u = 𝑅𝑒𝑔𝑟𝑒𝑡4 𝑢
  • 34. 34 KYOTO UNIVERSITY 6.3:パーセプトロン 分類の失敗回数の上限(3) 𝑅 = 𝑚𝑎𝑥 𝑥# がなりたつとすると、 𝑅𝑒𝑔𝑟𝑒𝑡4 𝑢 ≤ 0 g 𝑢 + g ∑ 𝑧# 4 #50 から、 𝑅𝑒𝑔𝑟𝑒𝑡4 𝑢 = C 𝐿# 𝑤 4 #50 − C 𝐿# 𝑢 4 #50 ≤ 1 2𝜂 𝑢 + 𝜂 2 C 𝑧# 4 #50 = 1 2𝜂 𝑢 + 𝜂 2 C 𝑥# 4 ‰P VP,ŠP ‹u ≤ 1 2𝜂 𝑢 + 𝜂 2 ℳ 𝑅 ℳ − C 𝐿# 𝑢 4 #5u ≤ 𝑅𝑒𝑔𝑟𝑒𝑡4 𝑢 ≤ 1 2𝜂 𝑢 + 𝜂 2 ℳ 𝑅 右辺は𝜂 = a Œ € • で最小値 𝑀 𝑅 𝑢 を取るので ℳ − C 𝐿# 𝑢 4 #50 ≤ 𝑀 𝑅 𝑢
  • 35. 35 KYOTO UNIVERSITY 6.3:パーセプトロン 分類の失敗回数の上限(4) ℳ − C 𝐿# 𝑢 4 #50 ≤ 𝑀 𝑅 𝑢 適切なuを選べば、 ∑ 𝐿# 𝑢4 #50 = 0とすることができるので、 ℳ ≤ 𝑀 𝑅 𝑢 ℳ についてとけば、 ℳ ≤ 𝑅 𝑢 = 𝑅 𝛾 ただし、𝛾は分離境界面と最も距離の近いデータと境界面の距離 失敗回数はある値で抑えられる
  • 37. 37 KYOTO UNIVERSITY 6.4:PAアルゴリズム n 2006年に誕生 n 損失:ヒンジ損失 n 正則化項:𝑅 𝑤 = 0 𝑤 − 𝑤# n FoReLの式は、 𝑤#/0 = 𝑎𝑟𝑔min V∈W 𝜂ℒ(𝑤, ( 𝑦#, 𝑥#)) + 1 2 𝑤 − 𝑤# 𝜂:損失の重み
  • 38. 38 KYOTO UNIVERSITY 6.4:PAアルゴリズム 6.4.1 線形分離可能な場合 さっきの式は、以下の最適化問題として定式化できる 𝑤#/0 = 𝑎𝑟𝑔min V∈W 1 2 𝑤 − 𝑤# 𝑠𝑢𝑏𝑗𝑒𝑐𝑡 𝑡𝑜 ℒ 𝑤, 𝑦#, 𝑥# = 0. 制約条件は新しい訓練データを正しく分類すること ヒンジ損失は微分可能でないので 1. ℒ 𝑤, 𝑦#, 𝑥# = 0の時 2. ℒ 𝑤, 𝑦#, 𝑥# = 1 − 𝑦# 𝑤, 𝑥# > 0のとき で場合分けする
  • 39. 39 KYOTO UNIVERSITY 6.4:PAアルゴリズム 6.4.1 線形分離可能な場合 1. ℒ 𝑤, 𝑦#, 𝑥# = 0の時 𝑤#/0 = 𝑎𝑟𝑔min V∈W 1 2 𝑤 − 𝑤# 𝑠𝑢𝑏𝑗𝑒𝑐𝑡 𝑡𝑜 ℒ 𝑤, 𝑦#, 𝑥# = 0. 明らかに𝑤#/0 = 𝑤# Wに変化がない「Passiveな状態」という
  • 40. 40 KYOTO UNIVERSITY 6.4:PAアルゴリズム 6.4.1 線形分離可能な場合 2. ℒ 𝑤, 𝑦#, 𝑥# = 1 − 𝑦# 𝑤, 𝑥# > 0のとき ラグランジュの未定乗数法でとく。Lagrange関数は 𝐿 𝑤, 𝜂 = 1 2 𝑤 − 𝑤# + 𝜂 1 − 𝑦# 𝑤, 𝑥# 𝑤で微分して0とおくと、𝑤 = 𝑤# + 𝜂𝑦# 𝑥# をえる。上の式に代入したら 𝐿 𝜂 = 1 2 𝜂𝑦# 𝒙# + 𝜂 1 − 𝑦# 𝑤, 𝑥# = 1 2 𝜂 𝒙# + 𝜂 1 − 𝑦# 𝑤, 𝑥# 𝜂で微分して0とおくと、 𝜂# = ℒP(VP) 𝒙P Œ Œ を得る
  • 41. 41 KYOTO UNIVERSITY 6.4:PAアルゴリズム 6.4.1 線形分離可能な場合 以上まとめて 𝜂# = ℒ#(𝑤#) 𝒙# , 𝑤 = 𝑤# + 𝜂𝑦# 𝑥# Yやxによってwが変化するaggressiveな状態
  • 43. 43 KYOTO UNIVERSITY 6.4:PAアルゴリズム 6.4.2 PA-1アルゴリズム n PA-1アルゴリズム l 損失関数はヒンジ l 以下の最適化問題として定義 𝑤#/0 = 𝑎𝑟𝑔min V∈W 1 2 𝑤 − 𝑤# + 𝐶𝜉 𝑠𝑢𝑏𝑗𝑒𝑐𝑡 𝑡𝑜 ℒ# 𝑤 ≤ 𝜉, 𝜉 ≥ 0 ℒ# 𝑤 > 0であるAggressiveな場合の更新式は以下のとおり 𝜂# = ℒ#(𝑤#) 𝒙# , 𝑤 = 𝑤# + 𝜂𝑦# 𝑥# Passiveな時は普通のPAアルゴリズムと一緒
  • 44. 44 KYOTO UNIVERSITY 6.4:PAアルゴリズム 6.4.2 PA-1アルゴリズム n まずLagrange関数 𝐿 𝑤, 𝜉, 𝜂, 𝜆 = 1 2 𝑤 − 𝑤# + 𝐶𝜉 + 𝜂 1 − 𝜉 − 𝑦# 𝑤, 𝑥# − 𝜆𝜉 = 1 2 𝑤 − 𝑤# + 𝜉 𝐶 − 𝜂 − 𝜆 + 𝜂(1 − 𝑦# 𝑤, 𝑥# ) (𝜂 ≥ 0, 𝜆 ≥ 0) Wで微分して0と置いて、𝑤 = 𝑤# + 𝜂𝑦# 𝑥#をえる 𝐶 − 𝜂 − 𝜆 < 0だったら、Lをいくらでも小さくできるので 𝐶 − 𝜂 − 𝜆 ≥ 0、つまりC − 𝜂 ≥ 𝜆 ≥ 0なので𝐶 ≥ 𝜂 (よくわかりませんが)Cの範囲について場合分けして考える KKT条件
  • 45. 45 KYOTO UNIVERSITY 6.4:PAアルゴリズム 6.4.2 PA-1アルゴリズム 1 2 𝑤 − 𝑤# + 𝜉 𝐶 − 𝜂 − 𝜆 + 𝜂 1 − 𝑦# 𝑤, 𝑥# l 𝐶 ≥ ℒP(VP) 𝒙P Œ Œ 𝜉 > 0であるべきなので𝐶 − 𝜂 − 𝜆 = 0となる 結局 0 𝑤 − 𝑤# + 𝜂 1 − 𝑦# 𝑤, 𝑥# を最小化すること これはさっきやったやつと同じ形なので 𝜂# = ℒ#(𝑤#) 𝒙# を得る
  • 46. 46 KYOTO UNIVERSITY 6.4:PAアルゴリズム 6.4.2 PA-1アルゴリズム 1 2 𝑤 − 𝑤# + 𝜉 𝐶 − 𝜂 − 𝜆 + 𝜂 1 − 𝑦# 𝑤, 𝑥# l 𝐶 < ℒP(VP) 𝒙P Œ Œ ↔ 𝐶 𝒙# < ℒ#(𝑤#) 1 − 𝑦# 𝑤, 𝑥# ≤ 𝜉に𝑤 = 𝑤# + 𝜂𝑦# 𝑥#を代入し、 1 − 𝑦# 𝑤#, 𝑥# − 𝜂 𝒙# ≤ 𝜉となる 組み合わせると、 𝐶 𝒙# − 𝜂 𝒙# < 𝜉 ↔ 𝐶 − 𝜂 𝒙# < 𝜉 𝐶 ≥ 𝜂なので、𝜉 > 0. KKT条件から 𝜆𝜉 = 0.なので𝜆 = 0. 𝐶 − 𝜂 − 𝜆 = 0だったので 𝜂 = 𝐶
  • 47. 47 KYOTO UNIVERSITY 6.4:PAアルゴリズム 6.4.2 PA-2アルゴリズム PA-2アルゴリズムの最適化問題は以下の通り定義される 𝑤#/0 = 𝑎𝑟𝑔min V∈W 1 2 𝑤 − 𝑤# + 𝐶𝜉 𝑠𝑢𝑏𝑗𝑒𝑐𝑡 𝑡𝑜 ℒ# 𝑤 ≤ 𝜉, 更新式は、 𝜂# = ℒ#(𝑤#) 𝒙# + 1 2𝐶 , 𝑤 = 𝑤# + 𝜂𝑦# 𝑥# Passiveな時は普通のPAと一緒なのでℒ# 𝑤 > 0の𝐴𝑔𝑔𝑟𝑒𝑠𝑖𝑣𝑒な時を 考える
  • 48. 48 KYOTO UNIVERSITY 6.4:PAアルゴリズム 6.4.2 PA-2アルゴリズム まずLagrange関数 𝐿 𝑤, 𝜉, 𝜂 = 1 2 𝑤 − 𝑤# + 𝐶𝜉 + 𝜂 1 − 𝜉 − 𝑦# 𝑤, 𝑥# Wで微分して0と置いて、𝑤 = 𝑤# + 𝜂𝑦# 𝑥#をえる 𝜉で微分して0と置いて、 𝜉 = g œ をえる Lに代入して、 𝐿 𝑤, 𝜂 = 1 2 𝜂𝑦# 𝑥# + 𝐶 𝜂 4𝐶 + 𝜂 1 − 𝜂 2𝐶 − 𝑦# 𝑤# + 𝜂𝑦# 𝑥#, 𝑥# = − 𝜂 2 𝑥# + 1 2𝐶 + 𝜂 1 − 𝑦# 𝑤#, 𝑥#
  • 49. 49 KYOTO UNIVERSITY 6.4:PAアルゴリズム 6.4.2 PA-2アルゴリズム 𝐿 𝑤, 𝜂 = − 𝜂 2 𝑥# + 1 2𝐶 + 𝜂 1 − 𝑦# 𝑤#, 𝑥# これを𝜂で微分して、0とおくと 𝜂 = 1 − 𝑦# 𝑤#, 𝑥# 𝑥# + 1 2𝐶 = ℒ#(𝑤#) 𝑥# + 1 2𝐶
  • 51. 51 KYOTO UNIVERSITY 6.5 ラウンド数の対数オーダの収束 n 強凸な目的関数とラウンド数に反比例する勾配への係 数を導入するとRegret上界はlog(t)に比例する
  • 52. 52 KYOTO UNIVERSITY 6.6 双対化座標降下法
  • 53. 53 KYOTO UNIVERSITY 6.6 双対化座標降下法: n 双対化を活用した座標降下法によるSVM n オンライン学習ではない?が、1データごとに学習し 分類器を更新するのが似ている n 訓練データT個
  • 54. 54 KYOTO UNIVERSITY 6.6 双対化座標降下法: n ソフトマージンSVMと類似の以下の主問題を双対化する min V 1 2 𝑤 + 𝐶 C 𝜉# 4 #50 ただし𝐶 > 0 𝑠𝑢𝑏𝑗𝑒𝑐𝑡 𝑡𝑜 1 − 𝑦# 𝑤, 𝑥# − 𝜉# ≤ 0 (𝑡 = 1, … , 𝑇) 𝜉# ≥ 0 ソフトマージンSVM
  • 55. 55 KYOTO UNIVERSITY 6.6 双対化座標降下法: 双対化 n 双対化すると、 min ž 𝑓 𝒂 ≡ ( 1 2 𝒂4 𝑄𝒂 − 𝒆4 𝒂) 𝑠𝑢𝑏𝑗𝑒𝑐𝑡 𝑡𝑜 0 ≤ 𝑎# ≤ 𝐶, 𝒆 = 1,1, … , 1 𝑤ℎ𝑒𝑟𝑒 𝑄‚£ = 𝑦‚ 𝑦£ 𝑥‚, 𝑥£ 重みパラメータ→個別データパラメータ
  • 56. 56 KYOTO UNIVERSITY 6.6 双対化座標降下法: 座標降下法 n 順番に1変数ずつ選び、他の縁数は固定して最適化 n 1〜t-1番目までの重みが更新済み、t〜T番目までが未更新 n 𝑎# = [𝑎0¥, … 𝑎#X0,¦ 𝑎#, … , 𝑎4] 4 n 𝑎#の更新を行う。 𝑎#の更新による変化量をdとすると更新後の 𝒂 𝒕 = 𝒂 𝒕 + 𝑑𝑒# 𝑒# ∶ one-hot n 最適化問題を書き換えると min ¨ 𝑓 𝒂 𝒕 + 𝑑𝑒# 𝑠𝑢𝑏𝑗𝑒𝑐𝑡 𝑡𝑜 0 ≤ 𝑎# + 𝑑 ≤ 𝐶
  • 57. 57 KYOTO UNIVERSITY 6.6 双対化座標降下法: n 𝑓 𝒂 𝒕 + 𝑑𝑒# = 0 𝑄## 𝑑 + ∇# 𝑓 𝒂 𝒕 𝑑 + 𝑐𝑜𝑛𝑠𝑡 n 制約付き勾配∇# ª 𝑓 𝑎 を以下のように定義 𝛻# ª 𝑓 𝑎 = « 𝛻# 𝑓 𝑎 0 < 𝑎# < 𝐶 min 0, 𝛻# 𝑓 𝑎 max 0, 𝛻# 𝑓 𝑎 𝑎# = 𝐶 𝑎# = 0
  • 58. 58 KYOTO UNIVERSITY 6.6 双対化座標降下法: n 𝑓 𝒂 𝒕 + 𝑑𝑒# = 0 𝑄## 𝑑 + ∇# 𝑓 𝒂 𝒕 𝑑 + 𝑐𝑜𝑛𝑠𝑡 = 1 2 𝑄## 𝑑 + 2 𝑄## 𝛻# 𝑓 𝒂 𝒕 𝑑 + const = 1 2 𝑄##(𝑑 + 1 𝑄## 𝛻# 𝑓 𝒂 𝒕 ) + 𝑐𝑜𝑛𝑠𝑡 l d=− -P® žP ¯PP でfは最小化されるので l 更新式は、 𝑎±# = min (max (0, 𝑎# − -P® žP ¯PP ), C)
  • 59. 59 KYOTO UNIVERSITY 6.6 双対化座標降下法: 𝛻# 𝑓 𝒂# = 𝛻# 1 2 𝒂4 𝑄𝒂 − 𝑒4 𝑎 = 𝑄𝒂 − 𝑒4 # = C 𝑄#² 𝑎² − 1 4 ²50 = C 𝑦# 𝑦² 𝑥#, 𝑥² 𝑎² − 1 4 ²50 = 𝑦# C 𝑦² 𝑎² 𝒙² 4 ²50 , 𝑥# − 1 = 𝑦# 𝑤, 𝑥# − 1 𝑄#²の計算よりもwの計算の方が計算量が小さい wの更新式は 𝑤³´V = 𝑤 + 𝑦#(𝑎# − 𝑎±#)𝑥#
  • 60. 60 KYOTO UNIVERSITY 6.6 双対化座標降下法: n メモリより大きなデータに対応したSVM n 全訓練データをメモリより小さなブロッックに分割 する n ブロックを1つずつ読み込み、𝒂が収束するまで双対 化座標降下法で更新 n 収束した𝑎, 𝑤を初期値として次のブロックに移る