文章目录
一:凸函数定义
(1)凸函数的第一种定义
- 通用定义
凸函数:设 f : R n → R f:\R^{n}\rightarrow \R f:Rn→R为适当函数,如果 f f f的定义域是凸集,且
f ( θ x + ( 1 − θ ) y ) ≤ θ f ( x ) + ( 1 − θ ) f ( y ) f(\theta x+ (1-\theta )y)\leq \theta f(x)+(1-\theta)f(y) f(θx+(1−θ)y)≤θf(x)+(1−θ)f(y)
对所有 x , y ∈ f x,y\in f x,y∈f的定义域, 0 ≤ θ ≤ 1 0 \leq \theta \leq1 0≤θ≤1都成立,则称 f f f是凸函数
- 若 f f f是凸函数,则 − f -f −f是凹函数
从几何上来看,上面的不等式意思就是下图中 ( x , f ( x ) ) (x ,f(x)) (x,f(x))和 ( y , f ( y ) ) (y, f(y)) (y,f(y))之间的线段(也即弦),位于函数 f f f的上方
(2)凸函数的第二种定义
凸函数:通俗讲就是先将其限制在任意直线上,然后判断对应的一维函数是否为凸,也即一个函数是凸函数当且仅当将函数限制在任意直线在蒂尼由于的部分上时仍是凸的。函数 f : R n → R f:\R^{n}\rightarrow \R f:Rn→R是凸的,并且当且仅当对每个 x ∈ d o m f , v ∈ R n x\in domf,v\in \R^{n} x∈domf,v∈Rn,函数 g : R → R g:\R\rightarrow\R g:R→R是关于 t t t的凸函数
g ( t ) = f ( x + t v ) ( { t ∣ x + t v ∈ d o m f } ) g(t)=f(x+tv)(\{t|x+tv \in domf\}) g(t)=f(x+tv)({t∣x+tv∈domf})
- x + t v x+tv x+tv:以 x x x为起点, v v v为方向, t t t为时间所形成的点
例如, f ( X ) = − l o g d e t X f(X)=-log det X f(X)=−logdetX是凸函数,其中 d o m f = S + + n dom f=S_{++}^{n} domf=S++n。任取 X ≻ 0 X\succ0 X≻0以及方向 V ∈ S n V\in S^{n} V∈Sn,将 f f f限制在直线 X + t V X+tV X+tV上( t t t满足 X + t V ≻ 0 X+tV\succ0 X+tV≻0),那么
g ( t ) = − l o g d e t ( X + t V ) = − l o g d e t X − l o g d e t ( I + t X − 1 2 V X − 1 2 ) g(t)=-logdet(X+tV)=-logdetX-logdet(I+tX^{-\frac{1}{2}}VX^{-\frac{1}{2}}) g(t)=−logdet(X+tV)=−logdetX−logdet(I+tX−21VX−21)
= − l o g d e t X − ∑ i = 1 n l o g ( 1 + t λ i ) =-logdetX-\sum\limits{i=1}^{n}log(1+t\lambda_{i}) =−logdetX−∑i=1nlog(1+tλi)
- λ i \lambda_{i} λi是 X − 1 2 V X − 1 2 X^{-\frac{1}{2}}VX^{-\frac{1}{2}} X−21VX−21第 i i i特征值
对每个 X ≻ 0 X\succ 0 X≻0以及方向 V V V, g g g关于 t t t是凸的,因此 f f f是凸的
(3)严格凸函数
严格凸函数:若对所有 x , y ∈ f x,y\in f x,y∈f的定义域, x ≠ y , θ < 0 < 1 x\not =y, \theta< 0 < 1 x=y,θ<0<1,有
f ( θ x + ( 1 − θ ) y ) < θ f ( x ) + ( 1 − θ ) f ( y ) f(\theta x+ (1-\theta )y)< \theta f(x)+(1-\theta)f(y) f(θx+(1−θ)y)<θf(x)+(1−θ)f(y)
则称 f f f是严格凸函数
二:凸函数例子
(1)一元凸函数的例子
凸函数
- 仿射函数:对任意 a , b ∈ R a,b\in \R a,b∈R, a x + b ax+b ax+b是 R \R R上的凸函数
- 指数函数:对任意 a ∈ R a\in \R a∈R, e a x e^{ax} eax是 R \R R上的凸函数
- 幂函数:对 α > 1 \alpha >1 α>1或 α < 0 \alpha <0 α<0, x α x^{\alpha} xα是 R + + \R_{++} R++上的凸函数
- 绝对值的幂:对 p ≥ 1 p\geq 1 p≥1, ∣ x ∣ p |x|^{p} ∣x∣p是 R \R R上的凸函数
- 负熵: x l o g x xlogx xlogx是 R + + \R_{++} R++上的凸函数
凹函数
- 仿射函数:对任意 a , b ∈ R a,b\in \R a,b∈R, a x + b ax+b ax+b是 R \R R上的凹函数
- 幂函数:对 0 ≤ α ≤ 1 0 \leq \alpha \leq1 0≤α≤1, x α x^{\alpha} xα是 R + + \R_{++} R++上的凹函数
- 对数函数: l o g x logx logx是 R + + \R_{++} R++上的凹函数
(2)多元凸函数的例子
欧式空间 R n \R^{n} Rn中的例子
- 仿射函数: f ( x ) = a T x + b f(x)=a^{T}x+b f(x)=aTx+b
- 范数: ∣ ∣ x ∣ ∣ p = ( ∑ i = 1 n ∣ x i ∣ 1 p ) ( p ≥ 1 ) ||x||_{p}=(\sum\limits_{i=1}^{n}|x_{i}|^{\frac{1}{p}})(p\geq1) ∣∣x∣∣p=(i=1∑n∣xi∣p1)(p≥1);特别地,有 ∣ ∣ x ∣ ∣ ∞ = m a x k ∣ x k ∣ ||x||_{\infty}=max_{k}|x_{k}| ∣∣x∣∣∞=maxk∣xk∣
矩阵空间 R m × n \R^{m×n} Rm×n中的例子
- 仿射函数: f ( X ) = t r ( A T X ) + b = ∑ i = 1 m ∑ j = 1 n A i j X i j + b f(X)=tr(A^{T}X)+b=\sum\limits_{i=1}^{m}\sum\limits_{j=1}^{n}A_{ij}X_{ij}+b f(X)=tr(ATX)+b=i=1∑mj=1∑nAijXij+b
- 仿射函数: f ( X ) = ∣ ∣ X ∣ ∣ 2 = σ m a x ( X ) = ( λ m a x ( X T X ) ) 1 2 f(X)=||X||_{2}=\sigma_{max}(X)=(\lambda_{max}(X^{T}X))^{\frac{1}{2}} f(X)=∣∣X∣∣2=σmax(X)=(λmax(XTX))21
三:强凸函数
定义1:若存在常数 m > 0 m>0 m>0,使得
g ( x ) = f ( x ) − m 2 ∣ ∣ x ∣ ∣ 2 g(x)=f(x)-\frac{m}{2}||x||^{2} g(x)=f(x)−2m∣∣x∣∣2
为凸函数,则称 f ( x ) f(x) f(x)为强凸函数,其中 m m m为强凸参数
定义2:若存在常数 m > 0 m>0 m>0,使得对任意 x , y ∈ d o m f x,y\in domf x,y∈domf以及 θ ∈ ( 0 , 1 ) \theta\in(0,1) θ∈(0,1),有
f ( θ x + ( 1 − θ ) y ) ≤ θ f ( x ) + ( 1 − θ ) f ( y ) − m 2 θ ( 1 − θ ) ∣ ∣ x − y ∣ ∣ 2 f(\theta x+ (1-\theta )y)\leq \theta f(x)+(1-\theta)f(y)-\frac{m}{2}\theta(1-\theta)||x-y||^{2} f(θx+(1−θ)y)≤θf(x)+(1−θ)f(y)−2mθ(1−θ)∣∣x−y∣∣2
则称 f ( x ) f(x) f(x)为强凸函数,其中 m m m为强凸参数
四:凸函数判定定理
(1)一阶条件
A:通用
一阶条件:对于定义在凸集上的可微函数 f f f, f f f为凸函数当前仅当
f ( y ) ≥ f ( x ) + ∇ f ( x ) T ( y − x ) ∀ x , y ∈ d o m f f(y)\geq f(x)+\nabla f(x)^{T}(y-x) \quad \forall x,y\in domf f(y)≥f(x)+∇f(x)T(y−x)∀x,y∈domf
从几何很容易看出,可微凸函数 f f f的图形始终在其任一点处切线的上方。因此,用可微凸函数 f f f在任意一点处的一阶近似可以得到 f f f的一个全局下界
B:梯度单调性
- 另外一个常用的一阶条件是梯度单调性
梯度单调性:设 f f f为可微函数,则 f f f为凸函数当且仅当 d o m f dom f domf为凸集且 ∇ f \nabla f ∇f为单调映射,即
( ∇ f ( x ) − ∇ f ( y ) ) T ( x − y ) ≥ 0 , x , y ∈ d o m f (\nabla f(x)-\nabla f(y))^{T}(x-y)\geq 0,\quad x,y\in domf (∇f(x)−∇f(y))T(x−y)≥0,x,y∈domf
(2)二阶条件
- 对于一元函数 f ( x ) f(x) f(x),可以通过其二阶导数的正负性来判断,如果函数的二阶导数总是非负,那么 f ( x ) f(x) f(x)为凸函数
- 对于多元函数 f ( X ) f(X) f(X),可以通过其海瑟矩阵的正定性来判断,如果海瑟矩阵是半正定矩阵,则 f ( X ) f(X) f(X)为凸函数
二阶条件:设 f f f是定义在凸集上的二阶连续可微函数, f f f是凸函数当且仅当
∇ 2 f ( x ) ⪰ 0 , ∀ x ∈ d o m f \nabla^{2}f(x)\succeq0\quad, \forall x\in domf ∇2f(x)⪰0,∀x∈domf
f f f是严格凸函数当且仅当
∇ 2 f ( x ) > 0 , ∀ x ∈ d o m f \nabla^{2}f(x)>0\quad, \forall x\in domf ∇2f(x)>0,∀x∈domf
例如,二次函数 f ( x ) = 1 2 x T P x + q T x + r f(x)=\frac{1}{2}x^{T}Px+q^{T}x+r f(x)=21xTPx+qTx+r(其中 P ∈ S n P\in S^{n} P∈Sn),其梯度与海瑟矩阵分别为
- ∇ f ( x ) = P x + q \nabla f(x)=Px+q ∇f(x)=Px+q
- ∇ 2 f ( x ) = P \nabla^{2} f(x)=P ∇2f(x)=P
f f f为凸函数当且仅当 P ⪰ 0 P\succeq0 P⪰0
再比如,最小二乘函数 f ( x ) = 1 2 ∣ ∣ A x − b ∣ ∣ 2 2 f(x)=\frac{1}{2}||Ax-b||^{2}_{2} f(x)=21∣∣Ax−b∣∣22,其梯度与海瑟矩阵分别为
- ∇ f ( x ) = A T ( A x − b ) \nabla f(x)=A^{T}(Ax-b) ∇f(x)=AT(Ax−b)
- ∇ 2 f ( x ) = A T A \nabla^{2} f(x)=A^{T}A ∇2f(x)=ATA
A T A A^{T}A ATA恒为半正定矩阵,因此,对任意的 A A A, f f f都是凸函数
(3)上方图
函数 f ( x ) f(x) f(x)为凸函数当且仅当其上方图 e p i f epif epif为凸集