02-凸函数

1 基本性质和例子

[凸函数] 一个函数 (f: R^nrightarrow R) 是凸的,如果定义域 (dom,f) 是凸集,并且对于所有 (x,yin f, thetaleq 1) ,我们有 (f(theta x+(1-theta)y)leq theta f(x)+(1-theta)f(y).)

注:如果不能理解,从二维角度去理解

几何解释:点 ((x,f(x)))((y,f(y))) 之间的线段在 (f) 对应的图像上方。

img

  • 函数 (f)严格凸的,如果以上不等式在 (xne y) ,且 (0<theta <1) 时也成立.
  • 函数 (f)的,当 (-f) 是凸的,严格凹,当 (-f) 是严格凸的。
  • 仿射函数既是凸的也是凹的,反过来,既凹又凸的函数是仿射的。
  • 一个函数是凸的当且仅当对任意 (xin dom,f) 和任意 (v) ,函数 (g(t)=f(x+tv)) 是凸的, ({t|x+tvin dom,f}.)注:其实只是修改了自变量的表示,又由于自变量的集合是凸集,线性表示后仍然是凸集

[扩展值] 将凸函数扩展到整个 (R^n) ,通常令它在定义域之外取 (infty) 。如果 (f) 是凸函数那么它的拓展为 (widetilde{f} : R^nrightarrow R cup {infty}) ,

(widetilde{f}(x)=left {begin{aligned} f(x);; xin domf\ infty;; xnotin domf end{aligned}right.)

[一阶条件] 令函数 (f) 是可微的(也就是它的梯度 (nabla f) 在开集 (domf) 的每个点上都存在)。那么 (f) 是凸的,当且仅当 (domf) 是凸的,并且对所有的 (x,yin domf) 有:

(f(y)geq f(x)+nabla f(x)^T(y-x).)

注:其实同样可以从二维角度的考虑,无非就是 (dy),也就是函数图像永远在某一点的切上上,同时 (f(x)+nabla f(x)^T(y-x)) 相当于 (f)(x) 的一阶泰勒近似,如果你对泰勒展开公式熟悉,更好理解,因为泰勒展开是无穷阶的,只不过此处做了省略

在每个点上,函数图像都高于在该点的切线。

img

解释:(y) 的仿射函数 (f(x)+nabla f(x)^T(y-x))(f) 在靠近 (x) 处的一阶泰勒近似。上述不等式表达了这个一阶泰勒近似是函数的全局下限(global underestimator),反过来,如果函数的一阶泰勒近似总是函数的全局下限,那么这个函数是凸的。

  • 如果 (nabla f(x)=0) ,那么对于所有 (yin domf) ,有 (f(y)geq f(x)) , 也就是在 (x)(f) 取到全局最小值(x) is a global minimizer of (f) )。
  • (f)严格凸的,当且仅当 (domf) 是凸的,且对于所有 (x,yin domf, xne y)(f(y)>f(x)+nabla f(x)^T(y-x).)
  • (f)的,当且仅当 (domf) 是凸的,并且 (f(y)leq f(x)+nabla f(x)^T(y-x),)(forall x,yin domf.)

[二阶条件] 设函数 (f) 是二阶可微的,也就是它在开集 (domf) 的每个点上都存在二阶导数 (nabla^2 f) 。那么 (f) 是凸的,当且仅当它的二阶导数是半正定的:

注:同样在二维角度理解,二阶导大于 0,则一阶导单调递增,则在一阶导为 0 的左边是小于 0 的,右边大于 0 的,也就是说原函数在一阶导为 0 的左边是单调递减的,在右边是单调递增的,凸

(forall xin domf) , (nabla^2f(x)succeq 0) .

几何解释:函数图像在每个定义域的每个点上都有正的曲率(curvature)。

  • 函数 (f)的,当且仅当 (domf) 是凸的,并且 (nabla^2f(x)preceq 0) , (forall xin domf)
  • 如果 (forall xin domf) , (nabla^2f(x)succ 0) ,那么 (f)严格凸的。反过来不成立,例如 (f(x)=x^4) 是严格凸的,但是在 (x=0) 处二阶导数为 (0) .

[例]

注:以下判断,简单的函数可以画图确定,复杂的可以通过求二阶导确定

(R) 上:

  • (e^{ax} , forall ain R) , 在 (R) 上凸。
  • (x^a,)(ageq 1)(aleq 0) ,在 (R_{++}) 上凸,当 (0leq aleq 1) 时凹。
  • (|x|^p) , (pgeq 1) ,在R上凸。
  • (log;x) ,在 (R_{++}) 上凸 。
  • 负熵 (x log ; x) ,在 (R_+)(R_{++}) 上凸。

(R^n) 上:

  • 范数,凸
  • 最大值函数,凸
  • Quadratic-over-linear 函数: (f(x,y)=x^2/y) , (domf=Rtimes R_{++}={(x,y)in R^n| y>0}) ,凸。
  • (f(x)=log(e^{x_1}+...+e^{x_n})) ,凸
  • 几何平均 (f(x)=(prod^n_{i=1}x_i)^{1/n}) ,在 (R^n_{++}) 上凹。
  • (f(X)=log; detX) ,在 (S^n_{++}) 上凹。

[下水平集 sublevel set] 函数 (f:R^nrightarrow R) 的一个 (alpha) -下水平集是

注:下水平集其实就是对函数做了一个水平切割,或者说对定义域做了切割

(C_{alpha}={xin domf | f(x)leq alpha}) .

  • 凸函数的下水平集是凸集,对于所有的 (alpha) 。反过来不对,例如 (f(x)=-e^x)(R) 上不是凸的,但是它的所有下水平集都是凸集。
  • 凹函数的下水平集是凸集。

[上境图 epigraph] 一个函数 (f:R^nrightarrow R) 的图像是 ({(x,f(x))|xin dom f}) . 它是 (R^{n+1}) 的子集。定义函数 (f)

上境图: (epi; f = {(x,t)| xin dom f , f(x)leq t}) .

下境图(hypo;f = {(x,t)| tleq f(x)}) .

注:上、下境图,其实就是对函数做了一个水平切割。有可能说凸函数的下境图是一个凸集,但是这种说法没有意义,因为上、下境图的水平切割是没有固定值的

  • 函数是的当且仅当它的上境图是一个凸集
  • 函数是的当且仅当它的下境图是一个凸集

img

[Jensen不等式] 基本不等式 (f(theta x+(1-theta)y)leq theta f(x)+(1-theta)f(y)) 有时被叫做Jensen不等式。

注:Jensen 不等式其实就是凸函数的定义

  • 它可以拓展到多个点的凸组合:

如果 (f) 是凸的, (x_1,...,x_kin domf, theta_1,...,theta_k geq 0) , (theta_1+...+theta_k=1) 那么

(f(theta_1x_1+...+theta_kx_k)leq theta_1 f(x_1)+...+theta_k f(x_k)) .

  • 还可以拓展到无限,积分和期望:

积分:如果 (p(x)geq 0)(Ssubseteq domf) 上, (int_{S} p(x) dx =1) ,那么 (f(int_{S} p(x) dx)leq int_S f(x) p(x) dx) .

期望:如果 (x) 是随机变量 (xin dom f) ,且 (f) 是凸函数,那么有 (f(Ex)leq E f(x)) .


2 保留凸性的运算

注:以下保凸运算其实可以使用定义,也就是用 Jensen 不等式证明,注意保留的是凸函数的性质,而不是保留了凸集的性质,不要和凸集的概念搞混了

[非负加权和] 如果 (f_1,...,f_m) 是凸函数,他们的集合是一个凸锥——凸函数的非负加权和 (f=w_1f_1+...+w_mf_m, (w_1,...,w_mgeq 0)) 是凸的。

注:非负加权和其实可以看做是多个做非负伸缩的凸函数进行了加和

  • 还可以拓展到积分:如果 (f(x,y)) 对于x是凸的,对于每个 (yin A) ,且w(y)geq 0, (forall yin A) ,那么函数 (g(x)=int_A w(y)f(x,y)dy) 对于 (x) 是凸的。

[与仿射函数的复合](f:R^nrightarrow R) , (Ain R^{ntimes m}) , (bin R) 。定义 (g:R^mrightarrow R)

(g(x)=f(Ax+b)) , (domg={a| Ax+bin domf}) .

那么如果 (f) 是凸函数, (g) 也是凸函数。

[逐点最大 pointwise maximum] 如果 (f_1,f_2) 是凸函数,那么他们的逐点最大 (f) ,定义为

(f(x)=max{f_1(x),f_2(x)}) , 定义域 (domf=domf_1cap domf_2)

也是凸集。可以拓展到多个凸函数的逐点最大。

[逐点上确界 pointwise supremum] 如果对于每个 (yin A) , (f(x,y)) 关于 (x) 是凸的,那么函数

(g(x)=underset {yin A}{sup} ,f(x,y))

关于 (x) 是凸的。 (g) 的定义域是

(dom g={x|(x,y)in dom f, forall yin A, underset{yin A}{sup}f(x,y)<infty}) .

  • 类似地,一组凹函数的逐点下确界是凹函数。
  • (epi, g =bigcap _ {yin A}epi , f(cdot,y)) .

[最小化] 如果 (f) 关于 ((x,y)) 是凸函数,并且 (C) 是非空凸集,那么函数

(g(x)=underset{gin C}{inf}, f(x,y))

是关于 (x) 的凸函数,对于所有的 (x)(g(x)>-infty) 的定义域是 (domf)(x) 轴的投影:

(dom g={x| (x,y)in domf, for ,some,yin C}) .

[函数的透视] 函数 (f: R^nrightarrow R)(f) 的透视函数为

(g:R^{n+1}rightarrow R)(g(x,t)=tf(x/t))

(domg={(x,t)| x/tin dom f, t>0})

透视运算保存凸性:如果函数 (f) 是凸的,那么它的透视函数 (g) 也是凸的;如果 (f) 是凹的,那么 (g) 也是凹的。


3 共轭函数

[函数的共轭 conjugate](f:R^nrightarrow R) 函数 (f^* : R^nrightarrow R) 定义为

(f^*(y)=underset{xin domf}{sup} (y^Tx-f(x))) , 叫做函数 (f)共轭

注:共轭函数的本质,其实就是通过一阶导,对求 (x) 的最小值问题转化为了求解截距最大值问题,如果我们把共轭函数写成这样 (g(x_0) = -x_0 frac{partial f}{ partial x} (x_0) + f(x_0),x_0in domf),这样看是不是亲切很多,其实就是切线截距公式,而前面的 (underset{{xin domf}}{sup}) 就是求最大值咯

共轭函数的定义域 由使得上述上确界有限的 (y, yin R^n) 组成。也就是说在 (domf) 上差 (y^Tx-f(x)) 是有界的。如图:

img

  • 共轭函数 (f^*) 是凸的,因为它是关于 (y) 的凸函数的逐点上确界,这一点为真不论 (f) 是否是凸的。

[Fenchel不等式] 由共轭函数的定义,我们有

(f(x)+f^*(y)geq x^T y) , (forall x,y) ,叫做Fenchel不等式。

例如对于 (f(x)=(1/2)x^TQx) , (Qin S^n_{++})(x^Tyleq (1/2)x^TQx+(1/2)y^TQ^{-1}y.)

[共轭的共轭] 如果函数 (f) 是凸且闭的,那么 (f^{**}=f) .

[可微函数] 可微函数 (f) 的共轭,也叫做 (f)Legendre变换。令 (f) 是凸且可微的, (domf=R^n) ,任意使 (y^Tx-f(x)) 取最大值的 (x^*) 都满足 (y=nabla f(x^*))

反过来如果 (x^{*}) 满足 (y=nabla f(x^*)) ,那么 (x^{*}) 使得 (y^Tx-f(x)) 最大化。因此如果 (y=nabla f(x^*)) 我们有:

(f^*(y)=x^{*T} nabla f(x^*)-f(x^*).) 注:这里就讲到了 (y^T) 其实就是一阶导

这允许我们能为任何 (y) 通过得到 (f^*(y)) 来解出梯度方程 (y=nabla f(z))

  • 另一种表示,令 (zin R^n) 是任意的,定义 (y=nabla f(z)) , 那么有 (f^*(y)=z^Tnabla f(z)-f(z)) .

注:下面就是共轭函数的一些特殊性质咯

[伸缩变换,与仿射变换的复合] 对于 (a>0,bin R) ,函数 (g(x)=af(x)+b) 的共轭是

(g^*(y)=af^*(A^{-1}y)-b^TA^{-T}y) . 定义域 (domg^*=A^Tdomf^*.)

[独立函数的和] 如果 (f(u,v)=f_1(u)+f_2(v))(f_1,f_2) 都是凸函数,且有共轭 (f_1^*,f_2^*,) 那么 (f^*(w,z)=f_1^*(w)+f_2^*(z).)

也就是,独立凸函数的和的共轭,是函数的共轭的和。


4 拟凸函数

[拟凸 Quasiconvex] 函数 (f: R^nrightarrow R) 是拟凸的,如果它的定义域和所有下水平集 (S_{alpha}={xin domf | f(x)leq alpha}) , (alpha in R) 都是凸的。

注:这里需要注意的是下水平集是凸集,而不是凸函数,其实就是利用了下境图的概念去理解,就很好理解,就是一个函数可能不是凸,但是它的最小值在凸的那一部分,那我做个水平切割只要凸的那一部分就好了

  • 一个函数是拟凹(quasiconcave)的,如果 (-f) 是拟凸的,也就是每个上水平集 ({x| f(x)geq alpha}) 是凸的。
  • 如果一个函数既拟凸又拟凹,那么叫做拟线性(quasilinear)。如果一个函数是拟线性的那么它的定义域和每个下水平集 ({x| f(x)=alpha}) 都是凸的.

img

[基本性质---不等式] 凸和拟凸有很多对应的性质,例如Jesen不等式的拟凸版本:一个函数 (f) 是拟凸的,当且仅当 (domf) 是凸的,且对任意 (x)(0leq thetaleq 1)

(f(theta x+(1-theta)y)leq max{f(x),f(y)}.)

注:拟凸函数的 Jensen 不等式就是说明了函数被函数两端的最大值控制着

也就是定义域某一段上的函数值,不超过这段两端的函数值的最大值,如图:

img

[ (R) 上的拟凸函数] 考虑连续函数 (f:Rin R) 是拟凸的,当且仅当满足以下至少一个条件:

  • (f) 是非减的
  • (f) 是非增的
  • 存在一个点 (cin domf) 使得对于 (tleq c (tin domf))(f) 是非增的,且当 (tgeq c (tin domf))(f) 是非减的。

(c) 是一个全局最小点:

img

[可微拟凸函数---一阶条件](f: R^nrightarrow R) 是可微的,那么 (f) 是拟凸的当且仅当 (domf) 是凸的,并且 (forall x,yin domf)

(f(y)leq f(x) Rightarrow nabla f(x)^T(y-x)leq 0.)

注:这个一阶条件就是规定了 (y-x)(nabla f(x)) 的夹角为钝角,从下图可以看出,也就是说 (y) 的等高线一定在 (x) 的等高线之内,也就是说明了 (f(y) leq f(x))

img

[可微拟凸函数---二阶条件](f) 是二次可微的,如果 (f) 是拟凸的,那么 (forall xin domf, yin R^n)

(y^Tnabla f(x)=0Rightarrow y^Tnabla^2 f(x)ygeq 0.)

  • 对于 (R) 上的拟凸函数 (f) ,条件简化为 (f'(x)=0Rightarrow f''(x)geq 0.) 注:也就是说在斜率为 (0) 的坡的任意点上,二阶导数都是非负的。

[保留拟凸性的运算]

  • 非负加权最大值: $f=max{w_1f_1,...,w_mf_m} ,w_igeq 0, $$f_i$ 是拟凸函数。这个性质可以推广到逐点上确界。
  • 复合:如果 (g:R^nrightarrow R) 是拟凸函数, (h:Rrightarrow R) 是非减的,那么 (f=hcirc g) 是拟凸的。拟凸函数和仿射函数或线性-分数函数的复合也是一个拟凸函数。
  • 最小化: (f(x,y)) 是拟凸函数, (C) 是一个凸集,那么函数 (g(x)=underset{yin C }{inf}f(x,y)) 是拟凸的。

[用一族凸函数表示] 用凸函数的不等式来表示拟凸函数 (f) 的下水平集。找一族凸函数 (phi_t:R^nrightarrow R , tin R) 满足 (f(x)leq tLeftrightarrow phi_t(x)leq 0.)

也就是,拟凸函数 (f)(t)-下水平集是凸函数 (phi_t)(0)-下水平集。


5 对数凹/对数凸函数

注:个人理解,因为对数凸不能证明什么,对数凸只是在某些情况让一个函数更易于进行优化,例如拟凸函数 (f=e^{x^2}),对数之后就是凸函数 (log f = -x^2),让一个拟凸函数变成凸函数,性质更好

[对数凹/凸 log-concave/log-convex] 函数 (f:R^nrightarrow R)对数凹的,如果 (f(x)>0, forall xin domf) 是凹的。

(f)对数凸的当且仅当 (1/f) 是对数凹的。

允许 (f)(0)(log,f(x)=-infty) ,此时 (f) 是对数凹的,如果拓展值函数 (log,f) 是凹的。

[用不等式表示] 函数 (f:R^nrightarrow R) 带有凸定义域,并且 (f(x)>0,forall xin domf) 有:

(log(f(theta x+(1-theta)y))geq log(f(x)^{theta}f(y)^{1-theta})=f(theta x+(1-theta)y)geq logf(x)^{theta}f(y)^{1-theta}.)

注:从变异的 Jensen 不等式可以看出,其实对数凸就是对 Jensen 不等式做了对数变化

  • 特别地,对数凹函数在两点的中点上的值,大于等于两点上函数值的几何平均数

[二次可微的对数凹/对数凸函数](f) 是二次可微的, (domf) 是凸集,那么有

(nabla^2 log f(x)=frac{1}{f(x)}nabla^2 f(x)-frac{1}{f(x)^2}nabla f(x)nabla f(x)^T.)

  • (f)对数凸的,当且仅当 (forall xin domf) 有:

(f(x)nabla^2 f(x)succeq nabla f(x)nabla f(x)^T.)

  • (f)对数凹的,当且仅当 (forall xin domf) 有:

(f(x)nabla^2 f(x)preceq nabla f(x)nabla f(x)^T.)

[加法,乘法,积分] 对数凸性和对数凹性对于加法和正标量乘法封闭。

  • 如果 (f(x,y)) 对于所有的 (yin C) 关于 (x) 对数凸, 那么 (g(x)=int_C f(x,y) dy) 是对数凸的

[对数凹函数的积分] 在某些特殊情况中积分保留对数凹性。如果 (f:R^ntimes R^mrightarrow R) 是对数凹的,那么 (g(x)= int f(x,y)dy) 是关于 (x) 的对数凹函数。

  • 这说明对数凹性在卷积下封闭,也就是如果 (f,g)(R^n) 上的对数凹函数,那么卷积 ((f*g)(x)=int f(x-y)g(y)dy) 也是对数凹函数。

6 关于广义不等关系的凸性

注:广义不等式的凸性,其实就是把 Jensen 不等式扩展到锥上定义了

单调性和凸性的推广。

[单调性](Ksubseteq R^n) 是一个正常锥(proper cone) ,有对应的广义不等关系 (preceq_K)

  • 一个函数 (f:R^nrightarrow R) 叫做(K) -非减的,如果

(xpreceq_K yRightarrow f(x)leq f(y).)

  • (f)(K) -增的,如果

(xprec_K y, xne yRightarrow f(x)<f(y).)

类似可以定义 (K) -非增函数,和 (K) -减函数。

[单调性的梯度条件] 一个定义域是凸集的可微函数 (f) ,是 (K) -非增的,当且仅当对于所有的 (xin domf)(nabla f(x)succeq_{K^*} 0) .

更严格的情况,如果 (nabla f(x)succ_{K^*} 0) 对于所有 (xin domf) 成立,那么说 (f)(K) -增的。

[凸性](Ksubseteq R^m) 是一个正常锥,有对应的广义不等关系 (preceq_K)

  • 函数 f: (R^nrightarrow R^m)(K) -的,当且仅当对于所有 (x,y, 0leq theta leq 1)

(f(theta x+(1-theta) y)preceq_K theta f(x)+(1-theta)f(y).)

  • 函数 (f)严格 (K) -凸的,如果对于所有 (xne y, 0< theta< 1)

(f(theta x+(1-theta) y)prec_K theta f(x)+(1-theta)f(y).)

[ (K) -凸的对偶刻画] 一个函数 (f)(K) -凸的当且仅当对于每个 (wsucceq_{K^*} 0) ,实值函数 (w^Tf) 是凸的。 (f) 是严格 (K) -凸的当且仅当对于每个非零 (wsucceq_{K^*} 0) 函数 (w^Tf) 是严格凸的。

[可微 (K) -凸函数] 一个可微函数 (f)(K) -凸的当且仅当它的定义域是凸集,并且对于所有的 (x,yin domf)

(f(y)succeq_K f(x)+Df(x)(y-x).)

此处 (Df(x)in R^{mtimes n}) 是函数 (f) 关于 (x) 的导数或 Jacobian 矩阵。

函数 (f) 是严格 (K) -凸的,当且仅当对于所有 (x,yin domf ,xne y)

(f(y)succ_K f(x)+Df(x)(y-x).)

[复合定理 composition theorem] 凸函数的非减凸函数是凸的。如果 (g:R^nrightarrow R^p)(K) -凸的, (h: R^prightarrow R) 是凸的,且 (h) 的值拓展 (widetilde{h})(K) -非减的,那么 (hcirc g) 是凸的。

参考文献:Stephen Boyd, Lieven Vandenberghe: Convex Optimization

参考资料:https://www.zhihu.com/column/c_1174389256402771968

内容来源于网络如有侵权请私信删除

文章来源: 博客园

原文链接: https://www.cnblogs.com/nickchen121/p/14902045.html

你还没有登录,请先登录注册
  • 还没有人评论,欢迎说说您的想法!