- 概念
1)凸優化:是指一種比較特殊的優化,是指求取最小值的目標函數為凸函數的一類優化問題。
2)兩個不等式:
兩個正數的算數平均值大於幾何平均值,即:
給定可逆矩陣Q,對於任意的向量x,y有:
3)凸集:集合C中任意兩個不同點的線段仍在集合C內,則稱集合S為凸集。
凸函數的上方區域一定是凸集ó一個函數上方是凸集,則該函數一定是凸函數。
4)幾何體的向量表達:
超平面(hyperplane)
還可以表達為:
a是法向量。超平面在n為空間中是n-1維,如2維空間中1維直線,3維空間中2維平面
半平面:
半平面在n為空間中是n維。
幾何體:
超平面退化到二維就是直線,幾何體退化到二維就是線段。
5)仿射集(Affine Set):通過集合C中任意兩個不同點的直線仍在集合C內,則稱集合C為仿射集。如:直線、平面、超平面。數學表達:
仿射集一定是凸集。
仿射變換:非奇異的線性變換
6)凸包:集合C上的凸組合形成的集合,叫做集合C的凸包。
7)多面體:有限個半平面與超平面的交集,即
仿射集(超平面,直線),射線,線段,半空間都是多面體。
多面體都是凸集。
8)性質
如果兩個集合是凸集,那么它們的交集也是凸集
如果一個集合x是凸集,那么它的仿射變換也是凸的,即:f=Ax+b,f是凸集。
如果一個集合x是凸集,那么它的透視變換也是凸的。
如果一個集合x是凸集,那么它的投射變換也是凸的。
9)分割超平面
C與D與不相交的凸集,那么一定存在一個超平面P,將C與D分開。
且
10)支撐(Support)超平面
設集合C,x0為集合C邊界上的點,若存在a對於任意C上的點滿足ax≤ax0,那么稱超平面
為集合C的支撐超平面。支撐超平面就是集合C的切平面,x0為切點。
如果一個集合在邊界上任何一個點上都存在支撐超平面,那么一定為凸集。
凸集的邊界上任意一點都存在支撐超平面。
11)凸函數:函數f的定義域C為凸集,且滿足:
為凸函數。
若f一階可微,函數f為凸函數當且僅當f的定義域為凸集。
切線方程,
切線方程實際上可以理解為支撐超平面。
若函數f二階可微,函數f為凸函數當且僅當f的二階導數
若為一元函數則二階導數大於等於0
若為多元函數則Hessian矩陣為半正定。
凸函數舉例:
、
、
、
、范數函數
、最大值函數
、指數線性函數
12)上鏡圖(epigraph)
函數f的圖像可以定義為:
C為定義域。上鏡圖可以定義為:
函數為凸函數,則上鏡圖一定為凸集,反之,一個函數是凹函數,則其亞圖(hypograph)是凸集。
13)Jensen不等式
若f是凸函數
推廣到k元
如果將θ看作x的概率,那么不等式左側括號內可以看作x的期望E(x),那么不等式左側可以看作期望的函數,即f(E(x)),右側可以看作函數的期望,即E (f (x)),那么
期望的函數小於期望的函數。
Jenson不等式幾乎是所有不等式的基礎。
給定概率密度p(x)與q(x),證明:
其中-lnx為凸函數,所以可以用Jetson不等式。D(p||q)是概率密度,為EM算法的基礎。
14)保持函數凸性的算子(保凸運算)
凸函數非負加權和也是凸函數,即
凸函數與仿射函數的復合也是凸函數
凸函數的逐點求最大值
證明:
逐點上確界,就是也是凸函數
性質:直線是即凸且凹的,那么f(x)為直線方程式時,下式
構成了凸函數,而
就構成了凹函數。
- 凸優化
優化問題的基本形式(所有的優化問題都可以化成這種形式):
優化的目標函數:
服從1:
服從2:
如果、
為凸函數,
為仿射函數(線性函數)那么為凸優化問題。
優化的變量為:x
不等式約束:
等式約束:
無約束優化:i, j
優化問題域:
可行解:
可行域:所有可行解的集合
拉格朗日函數:
對於固定的x,拉格朗日函數為關於λ與v的仿射函數。
根據約束條件,其中λ≥0滿足:
才有等號。原始問題為求
在x上的最小值,所以原問題可以描述為:
將原始問題轉變一下,表示為:
那么,就是將原問題轉換為對偶問題(最大最小轉換為最小最大)。凸優化最為核心的解決方法。為什么要這么做?在x不定的情況下,求兩個變量(λ與v)的最大值不容易做。
對於λ1而言,
其中,α剩余項,那么α表示λ1的常數,那么
就是關於λ1的仿射函數。所以可以得到關於λi都是仿射的。同理關於vj也是仿射的。由於仿射變換是線性的,可以表示為空間中的好多條線。x的不同線也不同。對這若干條線逐點(下圖中的黑點所示)求下界一定是一個凹函數。這個凹函數可以即為:
稱為拉格朗日對偶函數。對該函數(凹函數)求最大值,即
求解過程:
領,可以得到:
,然后回代到
,得到關於λ, v的函數
。求解最大值。
與
的關系?
那么可以認為是關於x的一個函數,即為:
,所以有:
那么對取最小,即
為定值(常數),所以
,那么
,而
是關於λ, v的函數,即為
,所以有:
全部還原得到:
所以通過對偶問題求解的最小值有可能比原問題的最小值小,如果能滿足f(x)是凸函數,h(x)是仿射的,那么原問題與對偶問題相等。
(意味着不要輸在起跑線上)
KKT是必要條件:為了滿足等號,即:
有駐點。