大規模凸計画問題に対する勾配法 京都大学大学院情報学研究科 山下信雄 最適化の研究者の立場(?) 応用のことはよくわからない. ⇒ • より広いクラスの問題に適用できる アルゴリズムの枠組みの開発 (Bregman距離の導入) • より緩い条件での収束性の証明 (局所的エラーバウンド性の元での解析) アウトライン 1. 考える問題(Structured Convex Optimization) 2. 準備 – – Bregman距離,Bregman divergence 局所的エラーバウンド 3. 近接勾配法(Proximal Gradient method) • • • 近接勾配法とその収束性 近接勾配法の実装 近接勾配法の高速化 4. 工夫 • • Bregman距離による工夫 局所的エラーバウンドによる工夫 5. まとめ 考える問題: 構造を持った凸計画問題 (structured convex optimization, composite convex optimization) min f ( x) h( x) P( x) s.t. x Rn •目的関数は f ( x) h( x) P( x) * h は微分可能の凸関数 * P は特殊な形(構造)の凸関数 n 例: lasso | x | , i 1 標示関数 i group lasso w J xJ 2 J 0 if x S P( x) S if x 問題例1 L1正則化問題 n min g ( Ax) | xi | i 1 * g は強凸関数 h( x) g ( Ax) P( x) | xi | 問題例2 単体制約をもつ凸計画問題 h( x) xi ln xi n 1 • min xi ln xi x Kx 2 i 1 s.t. x ただし, は単体制約: z R n 1 • x Kx 2 0 if x P( x) otherwize z 1 , z 0 i i 1 n *単体制約は単体の直積に一般化できる. 応用 ・条件付最大エントロピーモデル [Collins, Globerson, Carreras, Bartlett, 2007] ・CTの画像復元 [Ben-Tal, Margalit, Nemirovski, 2001] 問題例 ハードマージンSVM n 1 T min x Kx xi 2 i 1 n s.t. yx i 1 i i 0, x 0 ただし, yi {1,1} h( x ) 1 • x Kx xi 2 0 if x 0, yi xi 0 P( x) otherwize アウトライン 1. 考える問題(Structured Convex Optimization) 2. 準備 – – Bregman距離,Bregman divergence 局所的エラーバウンド 3. 近接勾配法(Proximal Gradient method) • • • 近接勾配法とその収束性 近接勾配法の実装 近接勾配法の高速化 4. 工夫 • • Bregman距離による工夫 局所的エラーバウンドによる工夫 5. まとめ Bregman距離 (Bregman divergence) を微分可能な(狭義)凸関数とする. Bregman関数 B ( x, y) ( x) ( y) ( y), x y 性質1: B ( x, y) 0 性質2: B ( x, x) 0 距離のようなもの 1 2 例1: のとき B ( x, y) x y 2 n n xi ( x ) x ln x B ( x , y ) x l n i i のとき i 例2: i 1 i 1 yi 1 ( x) x 2 2 yi xi (局所的)エラーバウンド ある問題の解集合を X とする. * 次の条件を満たす定数 , が存在するとき 関数 を局所的エラーバウンドという. (i) dist x, X * ( x) x such that (x) (ii) ( x ) 0 x X * * * 応用: ・ 収束率の解析(強凸性などのかわり) ・ 安定性の解析 ・ 有効制約の同定 局所的エラーバウンドの例 線形システム: Ax b, Cx d [Hoffman, 1952] dist x, X * Ax b max (d Cx)i , 0 n L1正則化問題: min g ( Ax) | xi | [Tseng, 2010] ただし i 1 dist x, X * x x x は, x から近接勾配法による反復点 アウトライン 1. 考える問題(Structured Convex Optimization) 2. 準備 – – Bregman距離,Bregman divergence 局所的エラーバウンド 3. 近接勾配法(Proximal Gradient method) • • • 近接勾配法とその収束性 近接勾配法の実装 近接勾配法の高速化 4. 工夫 • • Bregman距離による工夫 局所的エラーバウンドによる工夫 5. まとめ 近接勾配法=近接点法+勾配法 近接点法 x [Rockarfellar 1976] [Censor, Zenios 1992], etc k 1 1 k argmin f ( x) B ( x, x ) tk • 解が唯一でなくても ある局所的エラーバウンド性のもとで超一次収束 [Luque, 1984] • 部分問題は非線形計画 劣勾配法(Mirror Descent法) [Nemirovsky, Yudin, 1983] x k 1 • 実装が簡単 • f が微分不可能なとき, 収束が著しく遅くなる. k f ( xk ) 1 k k k k argmin f ( x ) , x x B x, x tk tk 0 とする必要があるため, 近接勾配法 特別な構造: f ( x) h( x) P( x) *hは微分可能 *Pは微分不可能でもよいが特殊な構造 Pの構造を利用 hに対して勾配法,Pに対して近接点法を適用 x k 1 k 1 k k k argmin h( x ) h( x ), x x P( x) B x, x tk 近接勾配法の収束性(1) * x 定理1 最適解 が存在するとする. k 1 k 1 B ( x , x ) tk Bh ( x , x ) が成り立つとき k f ( xk ) f * k B ( x0 , x* ) k 1 t i 0 h k が係数Lのリプシッツ連続で が係数 tk とすれば仮定は成り立つ. L 注: h の強凸関数であれば, 1 O 反復回数は k がリプシッツ連続でなくても成り立つことがある. 近接勾配法の収束性(2) 定理2 定理1の仮定が成り立つとする. 次の局所的エラーバウンド性が成り立つとする. min B ( x , x ) B ( x , x * * k x X * k k 1 ) k * このとき, f ( x ) f ( x ) は 0 に一次収束する. 局所的エラーバウンド性は成り立つ十分条件: • h が強凸関数 • L1正則化問題 近接勾配法の実装 • 近接勾配法は よい収束性を持っている. • 部分問題: 1 min h( x ) h( x ), x x P( x) B ( x, x k ) tk k s.t. k k x Rn をいかに効率よく解くかが重要となる. Key *Bregman距離の選択 *Pの構造を利用した計算法の開発 実装例1: L1正則化問題 n [部分問題] min h( x ), x k i 1 s.t. Bregman距離に 1 xi B ( x, x k ) tk x Rn B ( x, y ) 1 x y 2 2 を用いると T ( y ) (max{ y, 0} )sgn( y ) k 1 i x T tk (( x tk h( x ))i ), i 1,, n k k Iterative Shrinkage Threshold Algorithm (ISTA) 実装例2 単体制約つき凸計画問題 1 k min h( x ), x B ( x, x ) tk k [部分問題] n s.t. x i 1 n ( x) xi ln xi 1, x 0 としたBregman距離を用いると i 1 xik 1 i xik exp(tk h( x k )i ) n k k x exp( t h ( x )j) j k , i 1,, n j 1 Exponentiated Gradient Algorithm (EG) 実装例3 ハードマージンSVM [部分問題] 1 min h( x ), x B ( x, x k ) tk k s.t. x x i iP iN i 0, x 0 n ( x) xi ln xi *hは凸2次関数 *Pはクラス+1の集合 *Nはクラス-1の集合 としたBregman距離を用いると i 1 部分問題のKKT条件は k 1 x tk h( x k ) ln i k 0 i P xi xik 1 tk h( x ) ln k 0 i N xi k x iP k 1 i x kj 1 0 jN 実装例3 ハードマージンSVM ln x x iP jN exp(tk h( x )i )) k k j exp( tk h( x ) j )) k i k xik 1 xik exp(tk h( x k )i )) exp( ) i P xik 1 xik exp(tk h( x k )i )) exp( ) i N O(n) で計算可能 近接勾配法の高速化 近接勾配法の大域的な反復回数は 1 f (x ) f (x ) O k k * それまでの反復の情報を利用すると 1 f (x ) f (x ) O 2 k k に高速化できる. * 高速化手法1 [Nesterov, 1983], [Beck, Teboulle, 2009] {x }, {y }, {k } を更新 k k 1 k y x k 1 x x k 1 k 1 1 k 1 k 1 k 1 2 x argmin h( y ), x P( x) x y 2 t k k 1 k 1 ISTA k k4 4 k2 k2 2 高速化 Fast ISTA (FISTA) Beck and Teboulle, A fast iterative shrinkage-thresholding algorithm for linear inverse problems SIAM Journal on Imaging Sciences, 2009. 高速化手法2 [Nesterov, 1988], [Auslender, Teboulle, 2006] {xk }, { y k }, {z k },{ k } を更新 y k 1 (1 k ) x k k z k k k 1 k z argmin h( y ), x P( x) B ( x, z ) tk x k 1 (1 k ) x k k z k 1 k 1 k 1 k4 4 k2 k2 2 高速化手法3 [Nesterov 2005], [Tseng, 2008] {xk }, { y k }, {z k },{ k } を更新 y k 1 (1 k ) x k k z k k 1 h( y i ), x P( x) 1 k 1 z argmin ( x) i 1 tk i 1 x k 1 (1 k ) x k k z k 1 k 1 k4 4 k2 k2 2 アルゴリズムの関係 近接勾配法 x k 1 1 k k argmin h( x ), x P( x) B ( x, x ) tk h( x ) 0 近接点法 ISTA Pが標示関数 射影勾配法 Mirror Descent 法 EG法 高速化法 FISTA 高速化EG法 X. Zhang, A. Saha, S. V. N. Vishwanathan, “Accelerated Training of Max-Margin Markov Networks with Kernels”, Algorithmic Learning Theory (ALT), 2011 アウトライン 1. 考える問題(Structured Convex Optimization) 2. 準備 – – Bregman距離,Bregman divergence 局所的エラーバウンド 3. 近接勾配法(Proximal Gradient method) • • • 近接勾配法とその収束性 近接勾配法の実装 近接勾配法の高速化 4. 工夫 • • Bregman距離による工夫 局所的エラーバウンドによる工夫 5. まとめ 問題に特化した工夫 f ( x) h( x) P( x) これまでに紹介した手法,ISTA,FISTAやEG法は Pの構造を利用 関数 h の性質や最適解の構造(スパース性など) の利用を考える 実用的な工夫 – 前処理 (スケーリング) – ステップ幅の調整 (非単調直線探索) – 分割法との融合 工夫1 関数h に適したBregman距離の選択 もし h としたら, Bregman距離は Bh ( x, x ) h( x) h( x ) h( x ), x x k k k k tk 1 とした部分問題の目的関数は h( x k ) h( x k ), x x k P( x) Bh ( x, x k ) h( x) P( x) 部分問題は元の問題と同じになる!! Bregman距離の選択例 なるべく ( x) h( x) となるように選ぶ 例1: 単体制約をもつ凸計画問題 n 1 • x ln x x Kx i i 2 i 1 s.t. x n ( x) xi ln xi min i 1 例2: 成分(ブロック)ごとのスケーリング n 1 2 1 • ( x ) K x ii i h ( x ) x Kx 2 i 1 2 ( x) 1 • x Dx 2 Dはブロック対角 工夫2: 分割法 一部の成分を x k 1 xk に固定した部分問題を解く解法 1 k k argmin h( x ), x g ( x) B ( x, x ) tk x j x kj , jJ k ここで • J k は固定する成分の添え字の集合 例: ガウス-ザイデル法 Coordinate gradient descent 法 SVMのSequential Minimal Optimization 法 解の性質を利用した J の選択 k 例: [L1-L2最適化] n 1 • min x Kx | xi | 2 i 1 * * * J i x 0 , J i x 0 , J i x もし, P i N i 0 i 0 が分かれば,線形方程式になる.( x* は最適解のひとつ.) J k k J となるように を構成できれば, J0 x k 1 1 k k argmin h( x ), x g ( x) B ( x, x ) tk x j 0, jJ k としても解が求まる.(解がスパースなときに有効) ( xk ) 局所的エラーバウンド x k T t ( x k tk h( x k )) を用いた同定 k J Pk i xik ( x k ) , J Nk i xik ( x k ) , J 0k i | xik | ( x k ) * x 解 が唯一のとき,十分大きいkに対して J P J Pk , J N J Nk , J0 J0k ∵ xk x* , ( xk ) 0, J P J Pk , J P J Pk , J0 J0k i J 0 に対して | xik || xik xi* | x k x* ( x k ) ( x k ) まとめ • 特殊な構造をもつ凸計画問題に対する 近接勾配法を紹介した. • 高速化への工夫として – – Bregman距離の選択 局所的エラーバウンドの利用 非線形最適化の研究では一般化,抽象化されすぎ 問題に特化した工夫で高速化が可能(かも) (最適化の分野の) サーベイ文献+α [近接勾配法] Paul Tseng, Approximation accuracy, gradient methods, and error bound for structured convex optimization, Mathematical Programming, Ser, B, 125, pp. 263-296, 2010. [エラーバウンド性] Jong-Shi Pang, Error bounds in mathematical programming, Mathematical Programming , 79, pp. 299-332, 1997. [最新論文] http://www.optimization-online.org/ ご清聴,ありがとうございました
© Copyright 2024 ExpyDoc