coordinate descent 法について
Post on 07-Jan-2017
930 views
TRANSCRIPT
Coordinate Descent 法について
京都大学大学院情報学研究科
山下信雄
2015年3月「最適化の基盤とフロンティア」研究部会 講演資料
平成28年度数理工学専攻説明会
第1回: 平成28年5月 7日(土) 13:30~第2回: 平成28年5月30日(月) 17:00~
場所、プログラムの詳細は以下の専攻HPをご覧ください。http://www.amp.i.kyoto-u.ac.jp
*説明会は教員とのコネクションを作るチャンスです。*本説明会は修士課程の説明会も兼ねています。
京都大学大学院 情報学研究科 数理工学専攻
博士後期課程の学生募集
Coordinate Descent法について(座標降下法ともいう)
• CD法は各反復で決定変数の一部を更新する手法.
• すごく遅い.実用的な実装が容易ではない.
⇒ 使い物にならない.授業で教えにくい
⇒ 簡単な方法だけど,あまりよく知られていない
• 数百万変数の超大規模な問題でも動く.
⇒ 機械学習,圧縮センシングなどで使われる
講演概要
第1部: Coordinate Descent (CD)法とその性質– CD法の紹介
– CD法の収束性(既存の結果と我々の結果)
第2部: 特別なCD法– 複雑な構造をもつ問題
EMアルゴリズムなど
– 線形制約をもつ問題
単体法,交互方向乗数法など
– 均衡問題
第1部:CD法とその性質
1. 考える問題
2. CD法 CD法とその特徴 CD法のヴァリエーション
3. CD法の収束性 (既存の結果)
4. CD法の一般化とその性質 (我々の結果) 一般化されたCD法 収束性
考える問題
• は微分可能な関数
• は凸関数.(多変数関数に拡張可能)
•
例:
1
min ( )
s.
) (
t
( )
.
n
i i
i
F x f x
Ax b
x
) |( |i i ix x
0 if( )
otherwise
i i i
i i
l x ux
: nf R R
{ }:i RR
,m n mRA Rb
応用例: データ解析
データ
機械学習: 損失関数 ,基底ベクトル ,カーネル行列
*
* は の共役関数
圧縮センシング(L1-L2最適化):
, ),( , ,1i i i T
2
1
(P) min ( ( ) )2
Ti
i
i
xC
x
*
1
1( )
2(D) min
T
i i
i
KC
2
1
(P) min ( ( ) )2
Ti
i
i
x xC
1
*
1
(D) min
s. t. 0
1( )
2
T
i i
T
i
i
i
KC
K
( ) ,( )i
i
i i
*
i
2
1
1|
2min |
n
i
i
Qx q x
ちなみに機械学習における損失関数とその共役関数は
共役関数:
- SVM:
- SVR:
ロジスティック回帰, 正則化なども同様に議論できる.
*( ) max , ( ) nu v Rvu v
1L ( ) max{ 10, }i
i v v
* if 0( )
otherwis
1
e
i i
i
uu
u
1L ( ) max{0 | |, }i
i v v
* || | if 1( )
otherwis
|
e
i
i
u uuu
1L
2. CD法
(Block) Coordinate Descent 法
ステップ0: 適当な初期点を選ぶ
ステップ1: 更新する変数の集合(更新変数集合)
を選ぶ.
ステップ2:
1,2, ,kJ n
1 argm ( )ink kJ J
kk
Ax bx F x
x x
はの補集合
kJ
kJ
1
1 argmi ( , )nkk k k
Jk
k
k
k
k kJJ J Jx
k k
J J
k
J J JF x Ax x A b
x x
x x
CD法のイメージ
CD法に適した問題
CD法に適した問題• スパース性のない超大規模な問題
応用例: 機械学習,圧縮センシング• 各ブロックでは簡単な問題
応用例: EMアルゴリズム,交互方向乗数法
CD法に適さない問題• スパースな問題• 分割できない微分不可能な関数• たくさんの制約があるとき• 高精度な解がほしいとき
2
,minU V
A U V
CD法が収束しない例
制約があるとき
分離不可能かつ微分不可能な関数があるとき
1
1 2
1 2
min
s.t. 1
0, 0
x
x
x
x x
0 (1,0)x
1 {1}J 1 1( ,0)x
2 {2}J 2 (1 )0,x
第1ステップ:
第2ステップ:
等式制約の数より多く変数を選ぶ必要がある
2 2
1 2 1 2
2
min |
s.t
3 |
.
x x x
Rx
x
0 (1, 1)x
1 {1}J 1 ( , 11 )x
2 {2}J 2 (1, 1)x
第1ステップ:
第2ステップ:
* (0,1)x 最適解
* (0,0)x 最適解
超大規模な問題での各反復の実装(計算時間)
圧縮センシング(L1-L2最適化)
1回の反復時間( , のとき)
ニュートン型の手法:
勾配型の手法:
CD法:
*ただし,すべての変数を更新すると
2
1
|1
min |2
n
i
i
Qx q x
3( )O n
( )O mn
( )O m
m nQ R
( )O mn
| | 1kJ
の勾配 の計算
まず, を計算.
だったCD法では, 前の結果 を用いて
を計算.
次の反復で のとき,
必要な情報は と だけ. を保持する必要がない.
k kg Qx q
(( ) )k kf x Q Qx q
( )O mn
( )O mn
11 kkg Qx q
1 1( )
k k
k k k
j j j
g Qx
Qx q xx Q
q
( )O m
( )kk
i
i
f x
xQ g
( )O m
iQ jQ Q
21( )
2qf x Qx ‖ ‖ ( )kf x
{ }kJ j
1 { }kJ i
もうちょっと一般化すると
目的関数を とし,
とする.
先ほどと同様, で更新できる.
1
(( ) )m
j j
j
f x x ba
1 1
,
m m
a b
Q q
a b
k kg Qx q
( )O m
1
( )( )
'( )k
k
j i j
i
m
j
af x
gx
CD法が復活した理由
数百万を超えるような大規模な問題が増えている.
機械学習,圧縮センシング,医療画像
メモリ上にすべてのデータを持つことさえ大変
CD法は,1回の反復に,
• すべてのデータを必要としない
• 1回の反復時間が短い
とりあえず動く!
注意すべき点
実用的な実装が難しい
前の反復の情報を利用しないと1回の反復に必要な
時間やメモリが勾配法と同じなる
スパースな問題では意味がない
のヘッセ行列 の非ゼロ要素数が のとき
ニュートン型手法:
勾配型手法:
CD法:(全変数を更新したとき)
f2 ( )f x ( )O n
( )O n
( )O n
( )O n
ニュートン型手法がよい
CD法のヴァリエーション
CD法で重要となるのは
1. 更新する変数集合 の選び方
2. 部分問題の解き方
それらの方法の違いによって様々なCD法がある
kJ
1 argm ( )ink
kk
kkJJJ
Ax bx F x
x x
更新変数集合 の選び方
Cyclic ルール(Gauss-Seidel ルール)• 順番に選ぶ
• 何回かに必ず選ぶという一般化もある
貪欲ルール (Gauss-Southwellルール)• 最も効果が高そうな変数を選ぶ
ランダムルール• ランダムに選ぶ
• 証明が簡単
kJ
例えば( )
arg mink
ii
f xj
x
部分問題の解き方- 厳密に解く -
• CD法,Block CD法
• Successive Over Relaxation (SOR)法:ステップ幅を導入
0argmi
0n ( )
kJ
kkd
xA
d dFd
1k k kx x d
1 argm n (i )kk
kk
JJ
Ax bx F x
x x
部分問題の解き方― inexact に解く -
• Inexact CD法
• Coordinate Gradient Descent (CGD) 法
• Coordinate Proximal Gradient (CPG) 法
1argmin ( ) ( )
0,
2 0k
k k k k
k
J
F x f xAd
d d Hd
d d
1k k k
kx dx t
( )k k
i ix
1argmin ( ) (
02
0, ( ))
k
k k k k
i i i k
J
F x f x dAd
d d x H dd
d
1k k k
kx dx t
Fの1次近似
CD法のヴァリエーション
Exact Inexact
Cyclic ルール Cyclic-CD, Cyclic-BCD Cyclic-CGD, Cyclic-BCGDCyclic-CPG, Cyclic-BPG
貪欲ルール Greedy-CD, Greedy-BCD Greedy-CGD, Greedy-BCGDGreedy-CPG, Greedy-BPG
ランダムルール Random-CD, Random-BCD Random-CGD, Random-BCGDRandom-CPG, Random-BPG
• Cyclic ルールはわかりやすい.すべての変数が更新される• 貪欲ルールは反復回数が少ない.1回の反復に時間がかかる.• Randomルールは理論的解析が簡単.実用上は?
• Exactは f が2次関数にはよい.一般のときは近接勾配がよい.
私見
補足:高速化版
近接勾配法には高速化法がある.
[Nesterov, 2010]ではRandom-CD法の高速化法が与えられている.
• 高速化法では2つのベクトル を更新する.
• は1部の成分が更新されるが, は全成分が更新される.
f が2次関数だと使えるが,一般の関数だと意味がない.
,k kx ykx
ky
1 ( )k k
i i k
i
k
x x tf
x
y
第1部:CD法とその性質
1. CD法 CD法の紹介
CD法の変数の選び方
2. CD法の収束性 (既存の結果)
3. CD法の一般化とその性質 (我々の結果) 一般化されたCD法
収束性
CD法の性質(制約なし)大域的収束性
次のどれかの条件を満たすとき,大域的収束する.
a. 目的関数が各変数に関して(準)凸関数で,微分不可能な関数が分離可能なとき [Tseng, 2001]
b. 目的関数が微分可能で,各部分問題の解が唯一なとき.[Luenberger, 1973]
最近は,若干緩い条件で大域的収束性が示されている.
CD法の性質(制約なし)一次収束性
CGD法 [Tseng and Yun, 2009]
局所的エラーバウンド性のもとで一次収束
補足: が強凸関数であれば成り立つ.
凸でなくても2次計画問題であれば成り立つ.
CD法 [Luo and Tseng, 1992]
が微分可能なとき,局所的エラーバウンド性のもとで一次収束F
F
反復回数の見積もりについて
次の条件を満たす最小の kを知りたい.
ただし,
劣勾配法:
近接勾配法:
高速化近接勾配法:
*(( ) )k FF xx
2O
1O
1
2O
0 であれば210
2
1
1
2
10000
100
10
Nesterovの証明(簡単のため )
まず, を示す.
は凸関数であるから,
よって,
ただし
1 2) ( ) ( )( k k kf x f x f x ‖ ‖
f
* * *( ) ( ), ( ) ( )k k k k kxf x x x f x x f x f x
*( ) ( )( )
kk f x f x
f xR
‖ ‖
* 0max (( ) )R xf fxx x ‖ ‖
0i
つづき
とすると
両辺を で割り, に注意すると
これらの式を足すと
つまり,
* 22
1*
2
*( ) (( )( ( ) ( ))
) ( ( ))k
k k kf f x fxf
xx f x
f x f xR
*) ( )( k
k xx ff 2
1 2k k kR
1k k 1
1k
k
2
1
1 1
k k R
1 0
2
1 1
k
kR
*2
1
1) ( )( k
k
Rf f x
kx
2Rk
なるのはと
についてはリプシッツ連続とする.
このとき
最急降下法: とすると
CGD法(CD法も同様にできる):
貪欲ルール:
ランダムルール:
1 2) ( ) ( )( k k kf x f x f x ‖ ‖
1 1 1 2) ( ),( )2
(k k k k k k kLf x f x f x x x x ‖x ‖
f ( ) ( )f x f y L x y
1 1( )k k kx f x
Lx
1 2( ( )) ( )2
k k kLf xx f x f ‖ ‖
22
1 ( ))
2( ( )
2( )
kk k k
i
L f x Lf x
x nf x f x
22
1 (( ( ( ))
))
2 2
k
i
k k k
i
L fp
x LE f xx f
x nf x
CGD法の反復回数の見積もりは凸関数とする.
ランダム,貪欲ルール [Nesterov, 2012 (初出2010)]
注意:勾配法と比較するためnで割ってある.
ランダムでは
Cyclicルールの場合はそのままでは証明できない.
[Nesterov, 2012] “The simplest variant of the coordinate descent method is based on a cyclic coordinate search. However, for this strategy it is difficult to prove convergence, and almost impossible to estimate the rate of convergence.”
1O
f
*)( ( )kE f x f x
CGD法の反復回数の見積もりCyclic ルール
[Saha and Tewari, 2013 (初出は2010)]
の非対角成分が非負で,特別な初期点から始めたら
[Beck and Tetruashvili, 2013 (初出は2012)]
1O
On
2 ( )f x
2 21 t
t
LO
n
1,t
L
1t
L
1t
nL O
n
はステップ幅
CD法の性質等式制約 がある場合
同条件で,大域的収束,1次収束する.
ただし,反復回数は莫大に増える.なぜ??
の要素数は 以上.
組合せの数は .
ランダムルール:
貪欲ルール:
ただし,それを選ぶのに時間がかかる.[Tseng and Yun, 2010]
Ax b
kJ 1m
1n mC
1n mCO
n
1O
1 ( )m O n のとき
3 2( ( )3 )m O m n m のとき
2 ( )lnm O nn のとき
第1部:CD法とその性質
1. CD法 CD法の紹介
CD法の変数の選び方
2. CD法の収束性 (既存の結果)
3. CD法の一般化とその性質 (我々の結果) 一般化されたCD法
収束性
考える問題
• は微分可能な関数
• は凸関数.(多変数関数に拡張可能)
以下では とする.
1
min ( )
s.
) (
t
( )
.
n
i
i
n
iF x f x
x
x
R
: nf R R
{ }:i RR
( ) ( )ix x
一般化されたBCD法
ステップ0: 適当な初期点を選ぶ
ステップ1: 更新する変数の集合 を選ぶ.
ステップ2:
ただし,
であり, は に関して凸関数.
ステップ3:アルミホのルールでステップ幅 を求め
1,2, ,kJ n
) 0argmin ( ( ), ( ) ( , )kk
k k k k k
i i i Jf x f x d x xd d dd xB
オリジナル
( ) ( ), () ,( )x y xB y yx y
( , )k k
k J Jx x
kJx
kt1k k k
kx x dt
のとき既存のBCPG法
1( )
2
k
kx x H x
一般化CD法の特別な場合(1)
CD法 (ただし, は各 に対して凸)
( ) ( )k x f x
( , ) ( ) ) ),((k
k k k k kx x d f x f x dB d f x
(
arg mi
argmin ) ( ), ( ) ( , ) 0
) ( ) 0n (
kk
k
k k k k k
i i i J
k
i i i J
d f x d B df x d x x x
x d
d
xf dd
オリジナル
fkJx
1k k k
kx dx t ならCD法!1kt
一般化CD法の特別な場合(2)Inexact CGD法 (Inexact CD法も同様にできる)
正確な場合の部分問題の最適性の条件
近似条件
( )kg x
1( ) ( ) ( ) 0k k k k
k k k
J J J J
k kf x xx g
( )kg x1( )( ( ))
k k k kk k k
k k kk
J J J J J JJ
k kf x g x x
k
k ‖ ‖
オリジナル
0k
k
J
( , ) ( ) ( )xB x yx y
InexactなCGD法
行列 を以下の条件をみたすように定義する
を とすると,近似条件は
となる.
E
( )1
( )2
k ky y Eyy k
1
1
1
10 ( ) (
( ) (
( ) (
( )
) ( )
) ( ) ( )
) ( )
k k k k
k k k
k
k
k
k k
J
k k k k k
J J J J
k k k k k
J
k
k
J
k
J J
k k k
J J J
k
k
f x g x
f x g
x
xx
f x
E x
g x x
x
オリジナル
1( )k k kE x x
InexactなCGD法
が に関して(強)凸関数であれば,
後知恵的に一般化CD法とみなせる.
いま は に関して係数 の強凸とする.
( )1
( )2
k ky y Eyy
k
オリジナル
kJxk
kJx
0E であれば強凸.
どのような行列 Eを考え,近似精度 を設定するか?
k
k
InexactなCGD法:条件オリジナル
1( )k k kE x x
0E
1arg max{| |}k k
jj
jx xi とすると,
1
1
1
1
1
1
1
11 1
( )
0
2
0 0
1
0
k
k
k k k
j
k k k k k
i i nk k k k
i i i i
k
i
k
n
i
n
j j
j
iEx
x x
x xx
1
2 k
k k
i i
Ex x
1
2
k k k
k i ix x
E
大域的収束性と一次収束性
大域的収束
が に関して(一様に)リプシッツ連続であれば大域的収束する
一次収束
以下の条件が成り立てば1次収束する.
• 局所的エラーバウンド性が成り立つとする.
• が に関して(一様に)リプシッツ連続
• が に関して(一様に)強凸関数
オリジナル
kkJx
k
kkJx
kJx
特別な場合
CD法
が に関して強凸関数であり,
が に関してリプシッツ連続であれば
となり,大域的収束する.
さらに局所的エラーバウンド性が成り立てば1次収束する
Inexact CGD法
が に関して係数 の強凸関数であるとする.
とする.
ExactなCD法と同条件で,大域的収束し,一次収束する.
オリジナル
kJxf
kJ fkJx
1kt
k kJx 1k k k
k i ixx
Cyclic-CD法の反復回数の見積もり
反復の見積もり用の新しい仮定:
通常の仮定(リプシッツ連続):
オリジナル
1 2 3 1 2
1 1
2 31
1 2
1
2
1 1 2
1
2 1
3 1 1 2
1
3 1
2
1
( , , , ( , , ,
( , , , , ( , , ,
( , , , , , ( , , ,
( , , , , (
) )
, ) )
) )
) ), , ,
n n
n n n
n
n
n
n
n n
n
f x x x x f x x x
x x
f x x x x f x x x
x x
f x x x f x x x
x x
f x f x x x
x
y
y y
x
y y y
M x y
‖ ‖
M nL
( ) ( )f y f x L x y
が成り立つ
凸関数だとひょっとしたら
M L
反復の見積もり
前頁の不等式が成り立つとする.
このとき,
ちなみに,既存の結果: [CGD法]
[勾配法]
オリジナル
( 1)t
t
M MO
~nn
O O
LO
1,t
L
はステップ幅
1
max , Lt
M
max ,O
L M
1~O O
n
になるか?
• ヘッセ行列が優対角行列や三重対角のとき
• で 行列 の非対角成分が負のとき
ちなみにランダムな行列で調べてみると
が成り立っていた...
( , )
オリジナル
2M L
M L
( )f x x xBx c B
B U D U ,M U L B
第1部のまとめ
CD法が使える問題
• 超大規模な問題
• 変数を固定すると簡単になる問題
CD法の大事なところ
• 更新する変数の選び方
• 部分問題の解き方
• 前反復の情報の利用の仕方
CD法の収束性
• 部分問題が凸ならば大域的収束
• 局所的エラーバウンドが成り立つなら一次収束
• 最悪の反復回数の見積もりは,ほぼ勾配法と同じ
講演概要
第1部: Coordinate Descent (CD)法とその性質– CD法– CD法の収束性(既存の結果と我々の結果)
第2部: 特別なCD法– 大規模な問題(SVM)– 複雑な構造をもつ問題
EMアルゴリズム,均衡問題など– 線形制約をもつ問題
単体法,交互方向乗数法など
第3部: 考えていること
第2部: 特別なCD法
1. 超大規模な問題(SVM)に対するCD法
2. 複雑な構造をもつ問題に対するCD法– EMアルゴリズム– 相関係数の最適化– DSLゲームの均衡問題
3. 線形制約をもつ問題に対するCD法– 単体法– Alternating Direction Method of Multipliers
(交互方向乗数法)
SVMに対するSequential Minimum Optimization
C-SVM
データ
損失関数
双対問題
( { 1,1, ) }i i sR
( ( ) ) max{0, )}( )1 (i i i
i x x
0
0 (
1min
1, )
2
s. t.
1 ,
i i
i
i i
C
T
K
i
*if 0
( )otherwis
1
e
i i
i
uu
u
ii
iC
1C
C
SMO[Platt, 1999]
更新変数集合:
1つの等式制約がある.
minimum(最小)の更新変数集合
部分問題:
変数が2つ,等式制約が1つの2次計画問題
⇒ 1変数の2次関数の最小化
効率のよい実装: データをすべて取り込まない.
| 1 2|k mJ
第2部: 特別なCD法
1. 超大規模な問題(SVM)に対するCD法
2. 複雑な構造をもつ問題に対するCD法– EMアルゴリズム– 相関係数の最適化– DSLゲームの均衡問題
3. 線形制約をもつ問題に対するCD法– 単体法– Alternating Direction Method of Multipliers
(交互方向乗数法)
EMアルゴリズムの参考文献
と
Hathaway, R.J., “Another interpretation of the EM algorithm
for mixture distributions”,Statics and Probability Letters, Vol. 4. pp. 53-56, 1986.
潜在変数をもつ最尤推定問題
• 観測変数 ,潜在変数
• 観測データと潜在変数の同時分布の確率モデルが与えられている. はモデルパラメータ
• 潜在変数の確率密度関数 が与えられているとき,周辺分布
N 個の観測データ が与えられたとき
パラメータ の最尤推定
( , | )p x z
( | ) ( , | ) ( d| )p x p x z q z z
1
min ln ( | )N
i
i
p x
x z
q
ix
例:混合正規分布の最尤推定(応用:クラスタリング)
• K個のクラスがあり,どのクラスに入っているかは潜在変数
で表す. ( ならクラス k に所属)
• クラス kに入っている観測変数は正規分布に従う.
• クラス k に入る確率を とする.
同時分布
周辺分布(混合正規分布)
{0,1}Kz 1kz
1, , ) |( )| ( ,k k kNx z xp
k
( | )k kq z
1
) ( | , , ) ( |( , | ) ,( )|k k
Kz z
k k
k
p x z N xp x z q z
1
, ) ( |, )( ,| k
Kz
k k
k
Np x z x
1
)( | k
Kz
k k
k
q z
) ( , | ) ( )( | ( | ),k k k
z k
p x N xp x z q z
対数尤度の最大化は,対数の中に和(積分)があるので難しい.
EMアルゴリズム
Expectation-Step: 対数尤度の期待値を計算.
Maximization-Step: 最大化
1
1
) ln( ( )( , | )
ln , |( ( )) d( | , )
Nk i
z
i
i kN
i
i i
E p x
p x z
Q
q z
z
z x
1 argmax ( )k kQ
同時分布の期待値
1
min ( , ( | )ln | ) dN
i
i
p x z q z z
対数尤度の計算
同時分布
いま, を確率密度関数の集合とし,
とすると
lnln ( , | ) ln ( ), )( ||z pxp x z q x
) ( | , ) (| |( , )q z xp x z x p
( , , )( , | )
( ) ln d( )
pr r
r
xz zL x
z
z
) ln ( )d ( ) ln ( , | )d
ln ( )d ( ) ln ( | , )d
( , ,
( ) d
( | , )ln
ln ( | )
ln ( |
( )
( )
)d( )
( )
r r r r
r r r r
L x z z z p x z z
z z z q z x z z z
q z x
z
z
zz
zr
p x
p xr
r
「対数尤度の最大化」と等価な最大化問題
(注意: f は r に関して汎関数)
停留点(や最適解)では
つまり,
( | , )( , , ) ( ) ln d
(l )
)n ( |
ii
i
i
i
i
i
i
i
r rr
q z xL x z z
zp x
( | , )( , ) ( , , ) ( )ln ( n d
)) l
(|i
i
i
i i
ii
i
i
q zr r p x
xf L rx z z
zr
)m
s
ax
.t
( ,
.
f r
r
( ) ( | , )i
ir z q z x
max ) l | )( n, ( i
ri
f pr x
Kullback-Lieblerdivergence
の最大化に対するCD法
ステップ1: に関する最大化
ステップ2: に関する最大化
ステップ1 E-Step
ステップ2:
M-Step
max )
s. t. ,
( ,
( 1, )
k
i N
f
r i
r
( , )f r
r
1 ) ( , )( |k i k
ir z q z x
1ax )( ,m kf r
1 1
1 1 1
, ) )
ln ( )d ( ) l
( ( , ,
( ) n ( , | )d
k i k
i
i
k
i
k k
i i i
i
ir z z r
f r L x
pz zr x z
r
z
max ln ( , | ) ( | , )di i k
i i
p x z q z x z
混合正規分布の推定
潜在変数は離散分布なので,
と考える.
1 2, , , )(i i i iKr rr r
( , | )) , ) ln
)
( , ( ,
( | ,
( ,
ln
ln ln ln | )
ii
i i
i
ikk ik
ikk ik
ik
k
k
i
k
ik
i
k k k
ki
k
k k
f r Lp x z
rr
x
rr
r r
x r
N
N x
0, 1K
krr R r
1
1
( | , )
( | , )
k i
k k k k
Kikk
j
i
j j
j
N xr
N x
EMアルゴリズムをCD法として解釈する利点
CD法の収束定理が利用できる
*部分問題が凸であれば,
適当な条件で収束する.
一般化,拡張,近似などができる.
*部分問題を近似的に解いても収束.BGCD法など.
⇒ 一般化EMアルゴリズム
*パラメータに正則化や制約条件をつけられる.
*解きやすい近似モデルの性質を(たぶん)議論できる.
に制限 ⇒ 変分推論
混合正規分布に対するL1正則化と制約つき最尤推定
• のとき偏相関行列がスパースになる.
• のとき少ないデータでも安定する.
• EMアルゴリズム(CD法)は収束する.
• 部分問題は簡単に解ける.
オリジナル
1max ln
s.t. ,
( | , )
1
i
i
k k k k
k
k k
k
k
I
N x
0 , 0
第2部: 特別なCD法
1. 超大規模な問題(SVM)に対するCD法
2. 複雑な構造をもつ問題に対するCD法– EMアルゴリズム– 相関係数の最適化– DSLゲームの均衡問題
3. 線形制約をもつ問題に対するCD法– 単体法– Alternating Direction Method of Multipliers
(交互方向乗数法)
相関係数の最適化
• t期の経済指標 j の値:
• t期の企業 iの株価:
• t 期から t+1 期の企業 iの株価収益率:
既存の経済指標から期待収益率が予測できたらうれしい.
多くの研究では となる f を推定
相関が強い新しい経済指標とポートフォリオができるととうれしそう.
( 1, , )t
jI mj
( 1, , )t
iP ni
1t tt i ii t
i
P PR
P
1 2 1 2, , , , , ,) ( )( n mR f IIR R I
強い相関
1( , , )t t
mI I I1( , , )n
t tR R R
相関係数の最適化
新しい経済指標:
ポートフォリオの収益率:
予測ができる ⇒ 相関係数が大きい
1
( )m
i i
i
I yy I
1
( )n
i i
i
R x R x
2 2
( ( ) [ ( )])( ( ) [ ( )min
s. t. ,
])
[( ( ) [ ( )]) ] [( ( ) [ ( )]) ]
E R x E R x I y E I y
E R x U R x E I y E I y
X Yx y
オリジナル
相関係数の最適化問題
経済指標,株価収益率の分散共分散行列を
とすると,
• のとき一般化固有値問題として解ける.
• 通常の非線形計画の手法でも解けるが,問題の構造を利用していないため効率が悪い.
min
s. t. ,
RR
R
II
Ix V y
x V x y
X
V
Y
y
x y
,n mX R Y R
オリジナル
, ,n m n n n m
RI RR IIR RV V V R
相関係数最適化問題に対するBlock Coordinate Descent 法
ステップ1: 次の問題の(近似)解を とする
ステップ2: 次の問題の(近似)解を とする
オリジナル
(min
)
s. t.
R
k
RI
k k
R II
V y
V y
x
x x
x X
V y
1
1 1
(
( )
)min
s. t.
R
k
RI
k k
R II
y
y
x V
x V
y
V
Y
x y
1kx
1ky
部分問題:分数計画問題
ステップ1の部分問題は分数計画問題になる.
ただし,
この問題の特徴
• 目的関数の分母も分子も凸関数
• 分母は正.また一般に分子は負.
( )
k
RI
k k
IIyc
V y
V y
min
s. t.
RR
x
x x
x
V
X
c
分数計画問題の解法1変数非線形方程式への変換
1
2
( )min
( )
s. t.
g x
g x
x X
)( 0G
1 2) min( { ( ) ( )}Xx gG x xg
* *
*
*
1 2
1 2
* *) 0 such that ( ) ( ) 0
( ) ( 0
(
)
xX
x
G x
x x X
g g
g
x
g
実際,
1*1
2
*
2
*
( ) (
( )
)
( )
g g x
xgx
g
xX
x
1変数非線形方程式の解法
• は単調増加凸関数
• の劣勾配:
ただし, は の解
は一般化ニュートン法で簡単に解ける.
1 2 2 1ˆ ) ( ) min { ( ) ( )} max { ( )( ( )}Xx x XG G g g gx x gx x
G
G
ˆ )( 0G
2ˆ( ) ( )xg G
x 2 1max { ( ) ( )}x X x xg g
new 2 1 1
2 2 2
ˆ ( )ˆ ˆ ˆ( ) ( )( )
( ) ( )ˆ )ˆ ( ˆ
x xg g gG
g g g
x
x x x
一般化ニュートン法の各反復でを解かなければならない!!2 1max { ( ) ( )}x X x xg g
の解き方
解きたい問題は以下のようになる.
一般に であるから, が凸多面体のとき
2次錐計画問題
と等価である. ただし, は となる行列.
2 1max { ( ) ( )}x X x xg g
min
s.t.
RRx Vc x
X
x
x
0 X
min
s. t.
c x
x
t
X
Vx t
RRV V VV
オリジナル
実験結果
オリジナル
第2部: 特別なCD法
1. 超大規模な問題(SVM)に対するCD法
2. 複雑な構造をもつ問題に対するCD法– EMアルゴリズム– 相関係数の最適化– 均衡問題
3. 線形制約をもつ問題に対するCD法– 単体法– Alternating Direction Method of Multipliers
(交互方向乗数法)
均衡問題
• 交通流均衡問題
– ネットワーク上の交通流は,Wardropの等時間配分原理に従うとする.
– 各ODペアごとにすべてのパスを考慮したモデル.
– 考慮するODペアとパスを限定して解く ⇒ CD法
• 通信の均衡問題
– 各ユーザが通信チャネルを共有
– 他ユーザの通信はノイズとなる.
• etc
DSLゲームの均衡問題
N人ユーザが,Kチャネルある通信路を使って通信している.
ユーザ iの最適化問題
• 決定変数: ( i以外のユーザの決定変数 )
• 目的関数(通信量):
• ユーザーの制約:
1
( , ) ln 1i i ij
k k
j
K
k
i
i
i
k
ii kxu x
x
x
max
1
0,K
i i
k
i
k kx x P
Kix Rix
分母はノイズ
システム最適とユーザ最適
全体の最適化:
⇒ 難しい.ユーザが固定されていないことも
ユーザ最適:
– 各ユーザが自分だけの最適化問題を解く
– 実装しやすい
⇒ 均衡問題に対するRandom-CD法 ⇒ 収束する??
ma
1
1
x
max ( , )
s. t. 0 ( 1,, , )
Ni
i
i
i
Ki i
k
k
i
xu
x
x
P Nx i
(KKT条件)
ユーザの最適化問題
max
1
max ( , )
s. t. 0,
i
i
i
i
Ki i
k
k
u
x x
x x
P
max max
( 1,1
0 ,
0,
)
0 ( 1,0, ,
,
)
00,
i ij i
k k k
i i
k k k
i i i i
k k
k
k
kx
x x k
x
K
K
P x P
[Luo and Pang, 2006]
max
0 ( 1 , )
0, 0, ,
,
0 ( 1, )
i ij i i i
k k k k
i i
k
i i i i
k k k k
K
x K
x P
x
x k
k
均衡問題
Nash均衡: すべてのユーザが最適
max
0 ( 1 , )
0, 0, ,
,
0 ( 1, )
i ij i i i
k k k k
i i
k
i i i i
k k k k
K
x K
x P
x
x k
k
等価な最適化問題
対角行列 を以下のように定義する
さらに行列 ,A と b を以下のように定義する.
Nash均衡:
,i j K KM R ,i j ij
kk kM NK NKM R
1,1 1,
max
,1 ,
m
1
ax
1 1 0 0
0 1 1, ,
0
0 0 1 1
N
N N N N
M M P
M A b
M M P
0
0, 0, 0
A
A
Mx q
x
x b
x
DSLゲームの均衡問題とCD法
が対称行列のとき
CD法の1ステップ ⇔ ユーザごとの最適化
つまり,非同期でユーザが自分の最適化をしているのは,上記の問題に対してRandom-CD法をしているとみなせる.
Mが対称行列でないときは相補性問題に対するガウスザイデル法として解析できる.しかしながら,条件が厳しくなる.
M
1min
2
s. t.
0
x xMx q
Ax b
x
ちなみに[Luo and Pang, 2006]では,Cyclicの場合のみを議論
第2部: 特別なCD法
1. 超大規模な問題(SVM)に対するCD法
2. 複雑な構造をもつ問題に対するCD法– EMアルゴリズム– 相関係数の最適化– DSLゲームの均衡問題
3. 線形制約をもつ問題に対するCD法– 単体法– Alternating Direction Method of Multipliers
(交互方向乗数法)
単体法
基底変数,行列:
非基底変数,行列:
実行可能基底解:
ピボット操作:
B とNから1つずつ要素を入れ替え,実行可能解を生成する.
min
s. t.
0
c x
Ax b
x
,B Bx A,N Nx A
1 0, 0B B Nx bA x
単体法とCD法
ピボット操作をする非基底変数を とする.
さらに, とする.(SMO!!)
このとき,CD法の部分問題は
ただし,
j N{ }kJ B j
1 argmin{ | 0, 0}
argmin{ 0,
,
| }
k
k
J
j jB j j
c x
c
x Ax b x x
x x xb b y
1 1 1, ,B B j j B B j jb b y A a c A a cA
単体法とCD法
部分問題:
最適解:
min
s. t. ,( 1 ),
0
j j
i i j
j
b n
x
y x i
x
1
0
arg
if 0
min 0 otherwise
j
k
j ii
i
by
y
x
単体法をCD法としてみると
• 大域的収束性の証明が簡単
(でも面白くない)
• 一次収束は保証できない
⇒ 各部分問題に強凸性が成り立たない
• 目的関数が凸,実行可能領域が凸多面体であれば
そのまま拡張できる.
⇒ Convex Simplex Method [Zangwill, 1967]
第2部: 特別なCD法
1. 超大規模な問題(SVM)に対するCD法
2. 複雑な構造をもつ問題に対するCD法– EMアルゴリズム– 相関係数の最適化– DSLゲームの均衡問題
3. 線形制約をもつ問題に対するCD法– 単体法– Alternating Direction Method of Multipliers
(交互方向乗数法)
制約つきの問題ー 拡張ラグランジュ法(乗数法) -
*簡単のため とする.
ラグランジュ関数:
拡張ラグランジュ関数:
min
s.t. ( ) 0,
( )
1 ,,i
f x
h ix m
1
(( ), ) ) (m
i i
i
f x hL x x
2
1
( , ) ( , ) ( )m
i
i
c x L x h xL c
0
拡張ラグランジュ法
拡張ラグランジュ法では点列 を以下のように生成する.
1 argmin ( , )k k
x cx xL
1 1
1
( )k k k
i
m
i
hc x
( ),k kx
制約なしの問題
1 1 110 ( , ) ( () )( )k k k k
x c i
k k
i ih xL x f x ch x
* * *0 ( ) ( )i if x h x
交互方向乗数法(alternating direction method of multipliers)
目的関数が分離可能な問題:
例:
応用:画像処理,信号処理
( ) ( )min
s.t.
p x q y
Ax By b
1min ( )f x Ax‖ ‖
1min
s
(
.
)
t 0. A
yf x
x y
‖‖
交互方向乗数法
拡張ラグランジュ関数の最小化を正確にするかわりに,
ブロックCD法の反復を1回する.2(( , , ( )) ) ( ) T
cL Ax Byx y p x q y b c Ax By b ‖ ‖
1
1 argmin ( , , )n
k k k
cx R
xx yL
2
1 1argmin ( , , )n
kk k
cy Rxy yL
1 1 1( )k k k kc Ax By b
交互方向乗数法が有効な例
Total variation minimization (画像処理)
z:ノイズがある元画像. : total variation
2
1min
s.t. n
x z Ax
x R
‖ ‖ ‖ ‖
1Ax‖ ‖
2
1min
s.t. 0
x z y
Ax y
‖ ‖ ‖‖
2 2
1( , , ) ( )cL Ax y cx y x z y Ax y ‖ ‖ ‖‖ ‖ ‖
Total variation minimization
交互方向乗数法
あらかじめ を計算しておけば,各反復の計算は でできる
1
2 2
arg min ( , , )
arg min )(
n
n
k k k
cx R
k
x R
x x y
x z A x c A y
L
x
‖ ‖ ‖ ‖
1( ) ( )kI cA A z A y
1 1 1)max 0,| ( | sgn(( ),) ,1,k k k
i i iy mc
iAx Ax
1( )I cA A 2( )O n
1 1 1( )k k k kc Ax y
本講演のまとめ
• Coordinate Descent (CD) 法は簡単な手法.ただし,実装には専門的な知識が必要.
• CD法には向き不向きがある
• 収束性は勾配型手法とほぼ同等
• 古典的な手法だが,いろいろと研究・開発することがある
ご清聴ありがとうございました
参考文献
S. J. Wright, “Coordinate Descent Algorithm,” Optimization Online, 2014.
http://www.optimization-online.org/DB_FILE/2014/12/4679.pdf