パターン認識第
12, 13
回講義ノート1 制約付最適化問題
一般的な制約付最適化問題は以下のように表わされる:
min
θ f (θ) (1a)
s.t. h 1 (θ) = 0, h 2 (θ) = 0, · · · , h q (θ) = 0, (1b) g 1 (θ) ≤ 0, g 2 (θ) ≤ 0, · · · , g r (θ) ≤ 0. (1c)
ここで,θ ∈ R s
は最適化問題の未知変数を,h j : R s → R , j = 1, 2, · · · , q
は等式制約条件を,g k : R s → R , k = 1, 2, · · · , r
は不等式制約条件を表している. 未知変数θ
はs
次元変数,等式制約条件の数はq
個, 不等式制約条件の数はr
個であるとする. 以下では, 制約条件をベクトル値関数でまとめて,h(θ) =
h 1 (θ) h 2 (θ)
.. . h q (θ)
= 0, g(θ) =
g 1 (θ) g 2 (θ)
.. . g r (θ)
≤ 0 (2)
と表す.
2 等式制約のみを持つ最適化問題
まずは,等式制約のみを持つ最適化問題:
min
θ f (θ) (3a)
s.t. h(θ) = 0 (3b)
について考えよう. 具体的なイメージをつかむため, まずは図
1
に基づいて考えていこう.図
1
では,目的関数がf (θ),
等式制約がh 1 (θ) = 0
と与えられている問題を考えている.•
図1(a)
には,目的関数f (θ)
の等高線f (θ) = c (c
は定数)と等式制約h 1 (θ) = 0
が描かれている.この問題は等式制約
h 1 (θ) = 0
上で,最も低い等高線を通るような点θ ∗
をみつけることである.•
図1(b)
には最適解θ ∗
が示されている. さて,この最適解はどのような特徴を持っているだろうか.•
図1(c)
には,最適解θ ∗
における等高線の接線と,等式制約の接線が示されている. 図にはこれら2
つの接線が平行であるように描かれているが,これは偶然なのだろうか.非線形最適化問題を解析する際には,最適解
θ ∗
の近傍で問題を線形近似すると有効なことが多い. 最適 解θ ∗
における目的関数f (θ)
の線形近似はf ˜ (θ) = f (θ ∗ ) + ( ∂f
∂θ | θ=θ
∗) >
(θ − θ ∗ ) (4)
(a) (b) (c)
図1:
等式制約を持つ最適化問題の概念図(a) (b) (c)
図
2:
等式制約を持つ最適化問題の最適解における線形近似 と与えられる. 同様に,最適解θ ∗
における等式制約h j (θ), j = 1, 2, · · · , q,
の線形近似は˜ h j (θ) = h j (θ ∗ ) + ( ∂h j
∂θ | θ=θ
∗) >
(θ − θ ∗ ), j = 1, 2, · · · , q (5)
与えられる.図
2
に,最適解θ ∗
の近傍で目的関数と等式制約条件を線形近似した場合のイメージが示されている. 目 的関数を線形近似しているのでその等高線は平行な直線群で表されることになる. また,等式制約条件も 直線で表される. 最適解θ ∗
は等式制約条件の線形近似直線上で目的関数を最小とする点となっていな ければならない.図
2(a)
には目的関数の等高線の線形近似直線と等式制約の線形近似直線が平行である場合が示されて いる. 図2(b)
および(c)
にはこれらの直線が平行でない場合が示されている. 図2(b)
および(c)
の場合,θ ∗
は本当に最適解であると言えるであろうか. 図2(b)
および(c)
ではθ ∗
を図示されている矢印の向き に微少変化させると, 等式制約を保ちながら目的関数値を減らすことができる. すなわち,図2(b)
および
(c)
のような状況では,θ ∗
は最適解となっていない.図
2
で考察したように,等式制約付最適化問題においてθ ∗
が最適解であるための必要条件はθ ∗
にお ける目的関数の等高線の接線と等式制約条件の接線が平行となることである. 等式制約条件が2
つ以上 あるときは,それらの満たす交線(あるいは交平面,
交超平面)と目的関数の等高線が平行になっている 必要がある. 交線が等高線と平行であるための条件は,∂f
∂θ
θ=θ
∗, ∂h 1
∂θ
θ=θ
∗, ∂h 2
∂θ
θ=θ
∗, · · · , ∂h q
∂θ
θ=θ
∗(6)
が同一平面上にあることである. 以上の考察を整理すると,(3)
で与えられる等式制約付最適化問題にお いてθ ∗
が最適解であるための必要条件は,
∂f
∂θ
θ=θ
∗+
∑ q j=1
λ j
∂h j
∂θ
θ=θ
∗= 0, (7a)
h(θ ∗ ) = 0 (7b)
となる.
(7a)
におけるλ 1 , λ 2 , · · · , λ q
をラグランジュの未定乗数(Lagrange multiplier)
と呼ぶ.3 ラグランジュ関数
制約のない最適化問題:
min
θ f (θ) (8)
において
θ ∗
が最適解である条件は,単に,目的関数の微分係数が0
となる,すなわち,∂f
∂θ
θ=θ
∗= 0 (9)
となることであった. 等式制約付最適化問題においてもこのような単純な形式で最適性条件を表現でき るとうれしい. このような目的で以下のようなラグランジュ関数
(Lagrangian)
というものを導入する:L(θ, λ) = f (θ) +
∑ q j=1
λ j h j (θ) = f (θ) + λ > h(θ), (10)
ここで,
λ = [
λ 1 λ 2 · · · λ q ] >
である. ラグランジュ関数は未知変数
θ
とラグランジュ未定乗数λ
の関数となっている. ラグランジュ関数L
をθ
で微分をしたものを0
とすると,∂L
∂θ = ∂f
∂θ +
∑ q j=1
λ j
∂h j
∂θ = 0 (11)
となり, (7a)と等し くなることがわかる. また, ラグランジュ関数
L
をλ
で微分をしたものを0
とす ると,∂L
∂λ = h(θ) = 0 (12)
となり, (7b)と同じ条件が導かれることがわかる. すなわち,等式制約付最適化問題の最適性条件はラグ ランジュ関数の微分係数が
0
であると簡潔に表現できる.課題
1:
次の等式制約付最適化問題を解け:θ min
1,θ
2θ 1 θ 2 (13a)
s.t. θ 1 + θ 2 = 1. (13b)
•
この目的関数のラグランジュ関数L(θ 1 , θ 2 , λ 1 )
を書け.•
ラグランジュ関数をθ 1 , θ 2 , λ 1
で偏微分し,それらを0
とすることより, 3変数の連立1
次方 程式を導け.• 3
変数の連立1
次方程式を解き, 最適解におけるθ 1 , θ 2 , λ 1
の値を求めよ.4 不等式制約付最適化問題
続いて,等式制約だけでなく不等式制約もある最適化問題について考えよう. 以下のように不等式制約 条件が
r
個ある状況を考えよう:g 1 (θ) ≤ 0, g 2 (θ) ≤ 0, · · · , g r (θ) ≤ 0. (14)
これらr
個の不等式制約条件は以下のような2
つのグループに分けることができる:•
アクティブ制約:
最適解θ ∗
において等号が成り立っている,すなわち,g k (θ ∗ ) = 0 (15)
となっているもの,
•
ノンアクティブ制約: 最適解θ ∗
において不等号が成り立っている,すなわち,g k (θ ∗ ) < 0 (16)
となっているもの.
{ g k (θ) } r k=1
のうち,どれがアクティブ制約でどれがノンアクティブ制約かわかってしまえば, 不等式制 約付最適化問題は等式制約付最適化問題と同様に扱うことができる. 具体的には,アクティブ制約は等式 制約と同じように扱い,ノンアクティブ制約は(解に影響を与えないので)
無視できる.アクティブ制約の番号とノンアクティブ制約の番号の集まりを
A = { k | g k (θ ∗ ) = 0 } , (17a)
A ¯ = { k | g k (θ ∗ ) < 0 } , (17b)
と表すことにする. アクティブ制約は等式制約と同じように扱うことができるので,最適性条件は,
∂f
∂θ
θ=θ
∗+
∑ q j=1
λ j
∂h j
∂θ
θ=θ
∗+ ∑
k ∈A
µ k
∂g k
∂θ
θ=θ
∗= 0, (18a)
h(θ ∗ ) = 0 (18b)
g A (θ ∗ ) = 0 (18c)
g A ¯ (θ ∗ ) < 0 (18d)
と表すことができそうである. (18)において,等号制約
h j (θ ∗ ) = 0, j = 1, 2, · · · , q,
のラグランジュ未定乗 数λ j , j = 1, 2, · · · , q,
は任意の値をとることができる. 一方,アクティブな不等式制約g k (θ ∗ ) = 0, k ∈ A ,
のラグランジュ未定乗数µ k , k ∈ A ,
は任意の値をとれず, 0以上でなければならないという新たな条件 が必要となる.(a) (b) (c)
図
3:
不等式制約を持つ最適化問題の概念図その理由を図
3
の概念図を用いて理解しよう. 図3(a)
は図1(c)
と同じもので,等式制約と最適解の関係 を例示している. 一方, 図3(b)
および(c)
は不等式制約と最適解の関係を表している. 図3(b)
では, 制 約条件を表す曲線の下側がg 1 (θ) ≤ 0
となる領域となっており,図3(c)
では,制約条件を表す曲線の上 側がg 1 (θ) ≤ 0
となる領域となっている.(a) (b) (c)
図
4:
不等式制約を持つ最適化問題の最適解における線形近似図
3(a), (b), (c)
のそれぞれに対応する直線近似が図4(a), (b), (c)
に例示されている. 図4(a)
の等式制 約の場合, 目的関数の等高線と制約条件が平行であるため,θ ∗
は最適解となっている. 一方, 図4(b)
お よび(c)
に関してはど うであろうか. 図4(b)
では,不等式制約条件であるため,θ ∗
を等高線と平行な向きだけでなく,下側への移動させることもできる. しかし
,
下側へ移動しても目的関数f (θ)
は増加する しかないので, (解こうとしている最適化問題が最小化問題ならば)θ ∗
は最適解となっている. 図4(c)
で は,等高線の上側へ移動しても制約条件を満たすようになっている. 図に矢印で示されているように,上 側へ動くことにより目的関数f (θ)
を減少させることができるので(解こうとしている最適化問題が最小
化問題ならば) θ ∗
は最適解とは言えない. すなわち,図3
および4
において, (b)の状況であれば最適解 であるが, (c)の状況であれば最適解ではないということになる.図
3
および4
の(b)
および(c)
の状況を数式で表現すると,∂f
∂θ
θ=θ
∗+ µ 1 ∂g k
∂θ
θ=θ
∗= 0, (19)
と表される. 最急降下法において学んだように
, (19)
の∂f /∂θ | θ=θ
∗ は目的関数f (θ)
を増やす向きを表 すベクトルである. 同様に,∂g 1 /∂θ | θ=θ
∗ は制約条件の左辺g 1 (θ)
を増やす向きを表すベクトルである.(b)
の状況ならば条件を満たし, (c)の状況ならば条件を満たさないようにするためには,µ 1
の符号(正か
負か)に関する条件が必要なことがわかる. 以上の考察により, (18)に加え,µ k ≥ 0, k ∈ A (20)
という条件が必要であることがわかる.
(18)
および(20)
の形で表された最適性条件は,どの不等式制約がアクティブでありどの不等式制約が ノンアクティブであるかがわかっていない状況では使えない. この問題に対し,相補性条件:µ k g k (θ) = 0, k = 1, 2, · · · , r, (21)
と呼ばれる条件を導入すると,アクティブ不等式制約とノンアクティブ不等式制約を陽に区別すること なく, (18)および
(20)
を書き直すことができる. 相補性条件(21)
は不等式制約g k (θ) ≤ 0
がアクティブである
(g k (θ) = 0),
かラグランジュ未定乗数µ k
が0
であるかのど ちらか一方は少なくとも成り立たなければならないことを示している.
以上より,等式制約および不等式制約を持つ制約付き最適化問題の最適性条件は
∂f
∂θ
θ=θ
∗+
∑ q j=1
λ j ∂h j
∂θ
θ=θ
∗+
∑ r k=1
µ k ∂g k
∂θ
θ=θ
∗= 0, (22a)
h(θ ∗ ) = 0, (22b)
g(θ ∗ ) ≤ 0, (22c)
µ k ≥ 0, k = 1, 2, · · · , r, (22d)
µ k g k (θ ∗ ) = 0, k = 1, 2, · · · , r, (22e)
と表される. 不等式制約g k (θ) ≤ 0
がノンアクティブな場合,ラグランジュ未定乗数がµ k = 0
であるの で, (22a)および(22e)
の該当部分のg k
に対応する要素が含まれていないことになる.課題
2:
次の制約付最小化問題を考える:min − θ 1 θ 2 (23a)
s.t θ 1 ≥ − 1 (23b)
θ 1 + θ 2 ≥ − 1 (23c)
θ 1 + 2θ 2 ≤ 4. (23d)
•
この問題の最適性条件を列挙せよ.•
この問題は5
に図示されている. また,最適解はθ 1 = 2, θ 2 = 1
であることがわかっている.最適解において,すべての最適性条件が成り立っていることを確認せよ.
-4 -2 0 2 4
-4 -2 0 2 4
theta2
theta1
QRVKOCN
図
5:
問題5-2
5 双対問題
5.1
ラグランジュ関数制約付最適化問題
min
θ f (θ) (24a)
s.t. h(θ) = 0 (24b)
g(θ) ≤ 0. (24c)
のラグランジュ関数は
L(θ, λ, µ) = f (θ) +
∑ q j=1
λ j h j (θ) +
∑ r k=1
µ k g k (θ) (25a)
= f (θ) + λ > h(θ) + µ > g(θ) (25b)
と定義される. ここで,
θ =
θ 1 θ 2
.. . θ s
, λ =
λ 1 λ 2
.. . λ q
, µ =
µ 1 µ 2
.. . µ r
, (26)
である.
5.2
ラグランジュ双対関数ラグランジュ関数
(25)
はθ, λ, µ
の関数であるが,このうちθ
に関して最小化したφ(λ, µ) = inf
θ
{
f (θ) + λ > h(θ) + µ > g(θ) }
(27)
をラグランジュ双対関数という. すべてのλ, µ
につき,θ
に関する最小化が行われているので,ラグラ ンジュ双対関数はλ, µ
のみの関数であることに注意しておこう.ラグランジュ双対関数は
φ(λ, µ) ≤ f(θ ∗ ), µ ≥ 0, (28)
という重要な性質を持っている. ここで
θ ∗
は最適解であり,f (θ ∗ )
は最適解における目的関数値である.(28)
が成り立つことは以下のように容易に確認できる.(証明)
制約条件
h( ˜ θ) = 0, (29a)
g( ˜ θ) ≤ 0 (29b)
を満たす任意の
θ ˜
に対し,
L( ˜ θ, λ, µ) = f ( ˜ θ) + ∑
j=1
λ j h j ( ˜ θ) +
∑ r k=1
µ k g k ( ˜ θ) ≤ f ( ˜ θ) (30)
が成り立つ. これは,右辺第
2
項がh j ( ˜ θ) = 0, j = 1, 2, · · · , q, (31)
であるので0
となり,右辺第3
項がµ k ≥ 0, g k ( ˜ θ) ≤ 0, k = 1, 2, · · · , r, (32)
であるので負の値をとるためである. したがって,φ(λ, µ) = inf
θ L(θ, λ, µ) ≤ L( ˜ θ, λ, µ) ≤ f ( ˜ θ) ≤ f (θ ∗ ) (33)
となる
(証明終わり).
5.3
ラグランジュ双対問題制約付最適化問題
(24)
を主問題(primal problem)
と呼び,
以下のように整理しておく:(P)
制約条件h(θ) = 0
およびg(θ) ≤ 0
のもと,f (θ)
を最小化する:min
θ f (θ) (34a)
s.t. h(θ) = 0, g(θ) ≤ 0. (34b)
一方,前小節の考察により,ラグランジュ双対関数φ(λ, µ)
はµ ≥ 0
のとき制約付最小化問題の最小 値の下限を表すことがわかった. 最良の下限を求める問題は主問題に対して双対問題(dual problem)
と呼ばれ,以下のように定式化される:(D)
制約条件µ ≥ 0
のもと,φ(λ, µ)
を最大化する:max
λ,µ φ(λ, µ) (35a)
s.t. µ ≥ 0. (35b)
サポートベクトルマシンにおける最適化問題を含む凸計画問題の多くは,主問題の最小値
f (θ ∗ )
双対問 題と最大値φ(λ ∗ , µ ∗ )
が一致する強双対性(strong duality)
と呼ばれる性質があることがわかっている
(強双対性の証明は省略する).
したがって,強双対性が成り立つ制約付最適化問題においては,主問題を解くかわりに双対問題を解くこと問題が解決できる. サポートベクトルマシンの学習における最適化 問題においては,主問題の代わりに双対問題が解かれることになる.
6 二次計画問題における双対問題の導出
サポートベクトルマシンにおける双対問題を導出する練習として, 一般的な二次計画問題の双対問題 を導出してみよう. 一般的な二次計画問題として
min
θ
1
2 θ > Aθ + b > θ (36a)
s.t. Cθ + d = 0 (36b)
Eθ + f ≤ 0 (36c)
を考える. ここで,
A ∈ R s × s , b ∈ R s , C ∈ R q × s , d ∈ R q , E ∈ R r × s , f ∈ R r
である. また,A
は正定値 行列であるとする.• step 1
ラグランジュ関数を書く:ラグランジュ関数は
L(θ, λ, µ) = 1
2 θ > Aθ + b > θ + λ > (Cθ + d) + µ > (Eθ + f ) (37)
と表される.• step 2
ラグランジュ関数のθ
に関する極値を求める:ラグランジュ双対関数
inf θ L(θ, λ, µ)
を求める必要がある. 二次計画問題の場合,ラグランジュ関 数がθ
に関して二次であるため,ラグランジュ関数をθ
に関して偏微分して0
とした方程式を解 くことで極値を求めることができる. すなわち,∂L
∂θ = A θ ¯ + b + C > λ + E > µ = 0 (38a)
⇐⇒ θ ¯ = − A − 1 (C > λ + E > µ + b) (38b)
を満たすとき,ラグランジュ関数はθ
に関する最小値をとる.• step 3 step 2
で求めた極値をラグランジュ関数に代入する:(38b)
をラグランジュ関数に代入するとφ(λ, µ) = L( ¯ θ, λ, µ) = − 1
2 λ > CA − 1 C > λ − 1
2 µ > EA − 1 E > µ − λ > CA − 1 E > µ (39a) +(d > − b > A − 1 C > )λ + (f > − b > A − 1 E > )µ (39b)
+const. (39c)
と
λ
およびµ
の二次関数として表すことができる.以上より,制約付最小化問題
(36)
の双対問題はmax
λ,µ − 1
2 λ > CA − 1 C > λ − 1
2 µ > EA − 1 E > µ − λ > CA − 1 E > µ
+(d > − b > A − 1 C > )λ + (f > − b > A − 1 E > )µ (40a)
s.t. µ ≥ 0 (40b)
と与えられる.