coordinate descent 法について

94
Coordinate Descent 法について 京都大学大学院情報学研究科 山下 信雄 2015年3月「最適化の基盤とフロンティア」研究部会 講演資料

Post on 07-Jan-2017

930 views

Category:

Presentations & Public Speaking


0 download

TRANSCRIPT

Page 1: coordinate descent 法について

Coordinate Descent 法について

京都大学大学院情報学研究科

山下信雄

2015年3月「最適化の基盤とフロンティア」研究部会 講演資料

Page 2: coordinate descent 法について

平成28年度数理工学専攻説明会

第1回: 平成28年5月 7日(土) 13:30~第2回: 平成28年5月30日(月) 17:00~

場所、プログラムの詳細は以下の専攻HPをご覧ください。http://www.amp.i.kyoto-u.ac.jp

*説明会は教員とのコネクションを作るチャンスです。*本説明会は修士課程の説明会も兼ねています。

京都大学大学院 情報学研究科 数理工学専攻

博士後期課程の学生募集

Page 3: coordinate descent 法について

Coordinate Descent法について(座標降下法ともいう)

• CD法は各反復で決定変数の一部を更新する手法.

• すごく遅い.実用的な実装が容易ではない.

⇒ 使い物にならない.授業で教えにくい

⇒ 簡単な方法だけど,あまりよく知られていない

• 数百万変数の超大規模な問題でも動く.

⇒ 機械学習,圧縮センシングなどで使われる

Page 4: coordinate descent 法について

講演概要

第1部: Coordinate Descent (CD)法とその性質– CD法の紹介

– CD法の収束性(既存の結果と我々の結果)

第2部: 特別なCD法– 複雑な構造をもつ問題

EMアルゴリズムなど

– 線形制約をもつ問題

単体法,交互方向乗数法など

– 均衡問題

Page 5: coordinate descent 法について

第1部:CD法とその性質

1. 考える問題

2. CD法 CD法とその特徴 CD法のヴァリエーション

3. CD法の収束性 (既存の結果)

4. CD法の一般化とその性質 (我々の結果) 一般化されたCD法 収束性

Page 6: coordinate descent 法について

考える問題

• は微分可能な関数

• は凸関数.(多変数関数に拡張可能)

例:

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

Page 7: coordinate descent 法について

応用例: データ解析

データ

機械学習: 損失関数 ,基底ベクトル ,カーネル行列

* は の共役関数

圧縮センシング(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

Page 8: coordinate descent 法について

ちなみに機械学習における損失関数とその共役関数は

共役関数:

- 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

Page 9: coordinate descent 法について

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

Page 10: coordinate descent 法について

CD法のイメージ

Page 11: coordinate descent 法について

CD法に適した問題

CD法に適した問題• スパース性のない超大規模な問題

応用例: 機械学習,圧縮センシング• 各ブロックでは簡単な問題

応用例: EMアルゴリズム,交互方向乗数法

CD法に適さない問題• スパースな問題• 分割できない微分不可能な関数• たくさんの制約があるとき• 高精度な解がほしいとき

2

,minU V

A U V

Page 12: coordinate descent 法について

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 最適解 

Page 13: coordinate descent 法について

超大規模な問題での各反復の実装(計算時間)

圧縮センシング(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

Page 14: coordinate descent 法について

の勾配 の計算

まず, を計算.

だった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

Page 15: coordinate descent 法について

もうちょっと一般化すると

目的関数を とし,

とする.

先ほどと同様, で更新できる.

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

Page 16: coordinate descent 法について

CD法が復活した理由

数百万を超えるような大規模な問題が増えている.

機械学習,圧縮センシング,医療画像

メモリ上にすべてのデータを持つことさえ大変

CD法は,1回の反復に,

• すべてのデータを必要としない

• 1回の反復時間が短い

とりあえず動く!

Page 17: coordinate descent 法について

注意すべき点

実用的な実装が難しい

前の反復の情報を利用しないと1回の反復に必要な

時間やメモリが勾配法と同じなる

スパースな問題では意味がない

のヘッセ行列 の非ゼロ要素数が のとき

ニュートン型手法:

勾配型手法:

CD法:(全変数を更新したとき)

f2 ( )f x ( )O n

( )O n

( )O n

( )O n

ニュートン型手法がよい

Page 18: coordinate descent 法について

CD法のヴァリエーション

CD法で重要となるのは

1. 更新する変数集合 の選び方

2. 部分問題の解き方

それらの方法の違いによって様々なCD法がある

kJ

1 argm ( )ink

kk

kkJJJ

Ax bx F x

x x

Page 19: coordinate descent 法について

更新変数集合 の選び方

Cyclic ルール(Gauss-Seidel ルール)• 順番に選ぶ

• 何回かに必ず選ぶという一般化もある

貪欲ルール (Gauss-Southwellルール)• 最も効果が高そうな変数を選ぶ

ランダムルール• ランダムに選ぶ

• 証明が簡単

kJ

例えば( )

arg mink

ii

f xj

x

Page 20: coordinate descent 法について

部分問題の解き方- 厳密に解く -

• 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

Page 21: coordinate descent 法について

部分問題の解き方― 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次近似

Page 22: coordinate descent 法について

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次関数にはよい.一般のときは近接勾配がよい.

私見

Page 23: coordinate descent 法について

補足:高速化版

近接勾配法には高速化法がある.

[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

Page 24: coordinate descent 法について

第1部:CD法とその性質

1. CD法 CD法の紹介

CD法の変数の選び方

2. CD法の収束性 (既存の結果)

3. CD法の一般化とその性質 (我々の結果) 一般化されたCD法

収束性

Page 25: coordinate descent 法について

CD法の性質(制約なし)大域的収束性

次のどれかの条件を満たすとき,大域的収束する.

a. 目的関数が各変数に関して(準)凸関数で,微分不可能な関数が分離可能なとき [Tseng, 2001]

b. 目的関数が微分可能で,各部分問題の解が唯一なとき.[Luenberger, 1973]

最近は,若干緩い条件で大域的収束性が示されている.

Page 26: coordinate descent 法について

CD法の性質(制約なし)一次収束性

CGD法 [Tseng and Yun, 2009]

局所的エラーバウンド性のもとで一次収束

補足: が強凸関数であれば成り立つ.

凸でなくても2次計画問題であれば成り立つ.

CD法 [Luo and Tseng, 1992]

が微分可能なとき,局所的エラーバウンド性のもとで一次収束F

F

Page 27: coordinate descent 法について

反復回数の見積もりについて

次の条件を満たす最小の kを知りたい.

ただし,

劣勾配法:

近接勾配法:

高速化近接勾配法:

*(( ) )k FF xx

2O

1O

1

2O

0 であれば210

2

1

1

2

10000

100

10

Page 28: coordinate descent 法について

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

Page 29: coordinate descent 法について

つづき

とすると

両辺を で割り, に注意すると

これらの式を足すと

つまり,

* 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

なるのはと 

Page 30: coordinate descent 法について

についてはリプシッツ連続とする.

このとき

最急降下法: とすると

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

Page 31: coordinate descent 法について

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

Page 32: coordinate descent 法について

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

はステップ幅

Page 33: coordinate descent 法について

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 のとき

Page 34: coordinate descent 法について

第1部:CD法とその性質

1. CD法 CD法の紹介

CD法の変数の選び方

2. CD法の収束性 (既存の結果)

3. CD法の一般化とその性質 (我々の結果) 一般化されたCD法

収束性

Page 35: coordinate descent 法について

考える問題

• は微分可能な関数

• は凸関数.(多変数関数に拡張可能)

以下では とする.

1

min ( )

s.

) (

t

( )

.

n

i

i

n

iF x f x

x

x

R

: nf R R

{ }:i RR

( ) ( )ix x

Page 36: coordinate descent 法について

一般化された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

Page 37: coordinate descent 法について

一般化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

Page 38: coordinate descent 法について

一般化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

Page 39: coordinate descent 法について

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

Page 40: coordinate descent 法について

InexactなCGD法

が に関して(強)凸関数であれば,

後知恵的に一般化CD法とみなせる.

いま は に関して係数 の強凸とする.

( )1

( )2

k ky y Eyy

k

オリジナル

kJxk

kJx

0E であれば強凸.

どのような行列 Eを考え,近似精度 を設定するか?

k

k

Page 41: coordinate descent 法について

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

Page 42: coordinate descent 法について

大域的収束性と一次収束性

大域的収束

が に関して(一様に)リプシッツ連続であれば大域的収束する

一次収束

以下の条件が成り立てば1次収束する.

• 局所的エラーバウンド性が成り立つとする.

• が に関して(一様に)リプシッツ連続

• が に関して(一様に)強凸関数

オリジナル

kkJx

k

kkJx

kJx

Page 43: coordinate descent 法について

特別な場合

CD法

が に関して強凸関数であり,

が に関してリプシッツ連続であれば

となり,大域的収束する.

さらに局所的エラーバウンド性が成り立てば1次収束する

Inexact CGD法

が に関して係数 の強凸関数であるとする.

とする.

ExactなCD法と同条件で,大域的収束し,一次収束する.

オリジナル

kJxf

kJ fkJx

1kt

k kJx 1k k k

k i ixx

Page 44: coordinate descent 法について

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

Page 45: coordinate descent 法について

反復の見積もり

前頁の不等式が成り立つとする.

このとき,

ちなみに,既存の結果: [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

Page 46: coordinate descent 法について

になるか?

• ヘッセ行列が優対角行列や三重対角のとき

• で 行列 の非対角成分が負のとき

ちなみにランダムな行列で調べてみると

が成り立っていた...

( , )

オリジナル

2M L

M L

( )f x x xBx c B

B U D U ,M U L B

Page 47: coordinate descent 法について

第1部のまとめ

CD法が使える問題

• 超大規模な問題

• 変数を固定すると簡単になる問題

CD法の大事なところ

• 更新する変数の選び方

• 部分問題の解き方

• 前反復の情報の利用の仕方

CD法の収束性

• 部分問題が凸ならば大域的収束

• 局所的エラーバウンドが成り立つなら一次収束

• 最悪の反復回数の見積もりは,ほぼ勾配法と同じ

Page 48: coordinate descent 法について

講演概要

第1部: Coordinate Descent (CD)法とその性質– CD法– CD法の収束性(既存の結果と我々の結果)

第2部: 特別なCD法– 大規模な問題(SVM)– 複雑な構造をもつ問題

EMアルゴリズム,均衡問題など– 線形制約をもつ問題

単体法,交互方向乗数法など

第3部: 考えていること

Page 49: coordinate descent 法について

第2部: 特別なCD法

1. 超大規模な問題(SVM)に対するCD法

2. 複雑な構造をもつ問題に対するCD法– EMアルゴリズム– 相関係数の最適化– DSLゲームの均衡問題

3. 線形制約をもつ問題に対するCD法– 単体法– Alternating Direction Method of Multipliers

(交互方向乗数法)

Page 50: coordinate descent 法について

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

Page 51: coordinate descent 法について

SMO[Platt, 1999]

更新変数集合:

1つの等式制約がある.

minimum(最小)の更新変数集合

部分問題:

変数が2つ,等式制約が1つの2次計画問題

⇒ 1変数の2次関数の最小化

効率のよい実装: データをすべて取り込まない.

| 1 2|k mJ

Page 52: coordinate descent 法について

第2部: 特別なCD法

1. 超大規模な問題(SVM)に対するCD法

2. 複雑な構造をもつ問題に対するCD法– EMアルゴリズム– 相関係数の最適化– DSLゲームの均衡問題

3. 線形制約をもつ問題に対するCD法– 単体法– Alternating Direction Method of Multipliers

(交互方向乗数法)

Page 53: coordinate descent 法について

EMアルゴリズムの参考文献

Hathaway, R.J., “Another interpretation of the EM algorithm

for mixture distributions”,Statics and Probability Letters, Vol. 4. pp. 53-56, 1986.

Page 54: coordinate descent 法について

潜在変数をもつ最尤推定問題

• 観測変数 ,潜在変数

• 観測データと潜在変数の同時分布の確率モデルが与えられている. はモデルパラメータ

• 潜在変数の確率密度関数 が与えられているとき,周辺分布

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

Page 55: coordinate descent 法について

例:混合正規分布の最尤推定(応用:クラスタリング)

• 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

Page 56: coordinate descent 法について

対数尤度の最大化は,対数の中に和(積分)があるので難しい.

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

Page 57: coordinate descent 法について

対数尤度の計算

同時分布

いま, を確率密度関数の集合とし,

とすると

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

Page 58: coordinate descent 法について

「対数尤度の最大化」と等価な最大化問題

(注意: 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

Page 59: coordinate descent 法について

の最大化に対する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

Page 60: coordinate descent 法について

混合正規分布の推定

潜在変数は離散分布なので,

と考える.

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

Page 61: coordinate descent 法について

EMアルゴリズムをCD法として解釈する利点

CD法の収束定理が利用できる

*部分問題が凸であれば,

適当な条件で収束する.

一般化,拡張,近似などができる.

*部分問題を近似的に解いても収束.BGCD法など.

⇒ 一般化EMアルゴリズム

*パラメータに正則化や制約条件をつけられる.

*解きやすい近似モデルの性質を(たぶん)議論できる.

に制限 ⇒ 変分推論

Page 62: coordinate descent 法について

混合正規分布に対するL1正則化と制約つき最尤推定

• のとき偏相関行列がスパースになる.

• のとき少ないデータでも安定する.

• EMアルゴリズム(CD法)は収束する.

• 部分問題は簡単に解ける.

オリジナル

1max ln

s.t. ,

( | , )

1

i

i

k k k k

k

k k

k

k

I

N x

0 , 0

Page 63: coordinate descent 法について

第2部: 特別なCD法

1. 超大規模な問題(SVM)に対するCD法

2. 複雑な構造をもつ問題に対するCD法– EMアルゴリズム– 相関係数の最適化– DSLゲームの均衡問題

3. 線形制約をもつ問題に対するCD法– 単体法– Alternating Direction Method of Multipliers

(交互方向乗数法)

Page 64: coordinate descent 法について

相関係数の最適化

• 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

Page 65: coordinate descent 法について

相関係数の最適化

新しい経済指標:

ポートフォリオの収益率:

予測ができる ⇒ 相関係数が大きい

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

オリジナル

Page 66: coordinate descent 法について

相関係数の最適化問題

経済指標,株価収益率の分散共分散行列を

とすると,

• のとき一般化固有値問題として解ける.

• 通常の非線形計画の手法でも解けるが,問題の構造を利用していないため効率が悪い.

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

Page 67: coordinate descent 法について

相関係数最適化問題に対する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

Page 68: coordinate descent 法について

部分問題:分数計画問題

ステップ1の部分問題は分数計画問題になる.

ただし,

この問題の特徴

• 目的関数の分母も分子も凸関数

• 分母は正.また一般に分子は負.

( )

k

RI

k k

IIyc

V y

V y

min

s. t.

RR

x

x x

x

V

X

c

Page 69: coordinate descent 法について

分数計画問題の解法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

Page 70: coordinate descent 法について

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

Page 71: coordinate descent 法について

の解き方

解きたい問題は以下のようになる.

一般に であるから, が凸多面体のとき

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

オリジナル

Page 72: coordinate descent 法について

実験結果

オリジナル

Page 73: coordinate descent 法について

第2部: 特別なCD法

1. 超大規模な問題(SVM)に対するCD法

2. 複雑な構造をもつ問題に対するCD法– EMアルゴリズム– 相関係数の最適化– 均衡問題

3. 線形制約をもつ問題に対するCD法– 単体法– Alternating Direction Method of Multipliers

(交互方向乗数法)

Page 74: coordinate descent 法について

均衡問題

• 交通流均衡問題

– ネットワーク上の交通流は,Wardropの等時間配分原理に従うとする.

– 各ODペアごとにすべてのパスを考慮したモデル.

– 考慮するODペアとパスを限定して解く ⇒ CD法

• 通信の均衡問題

– 各ユーザが通信チャネルを共有

– 他ユーザの通信はノイズとなる.

• etc

Page 75: coordinate descent 法について

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

分母はノイズ

Page 76: coordinate descent 法について

システム最適とユーザ最適

全体の最適化:

⇒ 難しい.ユーザが固定されていないことも

ユーザ最適:

– 各ユーザが自分だけの最適化問題を解く

– 実装しやすい

⇒ 均衡問題に対する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

Page 77: coordinate descent 法について

(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

Page 78: coordinate descent 法について

均衡問題

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

Page 79: coordinate descent 法について

等価な最適化問題

対角行列 を以下のように定義する

さらに行列 ,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

Page 80: coordinate descent 法について

DSLゲームの均衡問題とCD法

が対称行列のとき

CD法の1ステップ ⇔ ユーザごとの最適化

つまり,非同期でユーザが自分の最適化をしているのは,上記の問題に対してRandom-CD法をしているとみなせる.

Mが対称行列でないときは相補性問題に対するガウスザイデル法として解析できる.しかしながら,条件が厳しくなる.

M

1min

2

s. t.

0

x xMx q

Ax b

x

ちなみに[Luo and Pang, 2006]では,Cyclicの場合のみを議論

Page 81: coordinate descent 法について

第2部: 特別なCD法

1. 超大規模な問題(SVM)に対するCD法

2. 複雑な構造をもつ問題に対するCD法– EMアルゴリズム– 相関係数の最適化– DSLゲームの均衡問題

3. 線形制約をもつ問題に対するCD法– 単体法– Alternating Direction Method of Multipliers

(交互方向乗数法)

Page 82: coordinate descent 法について

単体法

基底変数,行列:

非基底変数,行列:

実行可能基底解:

ピボット操作:

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

Page 83: coordinate descent 法について

単体法と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

Page 84: coordinate descent 法について

単体法と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

Page 85: coordinate descent 法について

単体法をCD法としてみると

• 大域的収束性の証明が簡単

(でも面白くない)

• 一次収束は保証できない

⇒ 各部分問題に強凸性が成り立たない

• 目的関数が凸,実行可能領域が凸多面体であれば

そのまま拡張できる.

⇒ Convex Simplex Method [Zangwill, 1967]

Page 86: coordinate descent 法について

第2部: 特別なCD法

1. 超大規模な問題(SVM)に対するCD法

2. 複雑な構造をもつ問題に対するCD法– EMアルゴリズム– 相関係数の最適化– DSLゲームの均衡問題

3. 線形制約をもつ問題に対するCD法– 単体法– Alternating Direction Method of Multipliers

(交互方向乗数法)

Page 87: coordinate descent 法について

制約つきの問題ー 拡張ラグランジュ法(乗数法) -

*簡単のため とする.

ラグランジュ関数:

拡張ラグランジュ関数:

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

Page 88: coordinate descent 法について

拡張ラグランジュ法

拡張ラグランジュ法では点列 を以下のように生成する.

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

Page 89: coordinate descent 法について

交互方向乗数法(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

‖‖

Page 90: coordinate descent 法について

交互方向乗数法

拡張ラグランジュ関数の最小化を正確にするかわりに,

ブロック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

Page 91: coordinate descent 法について

交互方向乗数法が有効な例

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

Page 92: coordinate descent 法について

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

Page 93: coordinate descent 法について

本講演のまとめ

• Coordinate Descent (CD) 法は簡単な手法.ただし,実装には専門的な知識が必要.

• CD法には向き不向きがある

• 収束性は勾配型手法とほぼ同等

• 古典的な手法だが,いろいろと研究・開発することがある

Page 94: coordinate descent 法について

ご清聴ありがとうございました

参考文献

S. J. Wright, “Coordinate Descent Algorithm,” Optimization Online, 2014.

http://www.optimization-online.org/DB_FILE/2014/12/4679.pdf