凸函数的等价定义及其证明

Preface

    我非常记得罗翔老师说过一句话,"我们登上并非我们所选择的舞台,演绎并非我们所选择的剧本,但是没有谁的剧本值得羡慕,我们唯一能做的就是尽力演好自己的角色,打好自己手中的牌"。 我们所作的每一个选择都可看做是一个优化问题中的一次迭代,在一次一次迭代过程中趋向我们人生的最优值。无论是学生时代通过各种手段,努力来得到我们想要的分数,去到我们想要去的学校,又或是长大成人之后,面临生活中的一地鸡毛,都能运筹帷幄,得尝所愿。但正是我们的人生函数是非凸的,未必拥有最优解,所以我们的人生才变得多姿多彩,五颜六色,当我们面临低谷时,就像陷入了局部解,走出低谷的关键就是能否正视它,即跳出这个困境,再次走上新的征程,继续去寻找我们的最优解。那么为什么我们的人生函数是凸的时候,就会变得单调呢?亦或我们可以通过了解凸函数可以为我们的非凸函数带来什么经验呢?这正是我们这一小节的重要性!

文章进度

  • 给出凸函数四个等价定义(\(\surd\))
  • 对四个定义进行等价证明(\(\surd\))

凸函数定义

    为了给出凸函数的最基础的定义,我们可以先给出它的最经典三维图像例子-锅对,你没看错,就是我们生火做饭的大铁锅,来产生最直接的感受。亦或是我们从初中就开始接触的函数-二次项系数为正数的二次函数。它们都是我们接下来所要讨论的凸函数。在有了最基本的直观印象后,给出它最基础的定义吗,如Def 1所示。

\(Def 1\):假定\(f:R^n\longmapsto R\),\(f\)的定义域\(dom f\subseteq R^n\)是一个凸集,若对于\(\forall x,y\in domf\),\(\forall \theta \in [0,1]\)都有:
\(\begin{equation} f(\theta x+(1-\theta)y)\leqslant \theta f(x)+(1-\theta)f(y) \end{equation}\)
,则\(f(x)\)是一个凸函数。

  • 注1:若在(1)中,符号为\(\geqslant\),即:
    \(\begin{equation} f(\theta x+(1-\theta)y)\geqslant \theta f(x)+(1-\theta)f(y) \end{equation}\),则\(f(x)\)是一个凹函数。\(f(x)\)是凹函数的最原始的定义为\(-f(x)\)是凸函数,所以即使\(f(x)\)是一个凹函数,它的定义域也是一个凸集。若定义域非凸的话,这个函数纵使满足不等式也不是凸或者凹函数。

  • 注2:我们除了凸和凹之外,还会有严格凸与严格凹的定义,只需要在不等式(1)(2)中使得不等式严格成立即可,即不会有相等的情形。

  • 注3:我们在这给出一维凸函数的几何上的解释,由(1)式的左端,表示的是\([x,y]\)直线上的点在函数上的取值,而(1)的右端表示的是以\((x,f(x))\),\((y,f(y))\)为端点的线段的取值,(1)中的不等式表明凸函数的任意两点图像必然会低于(至多与该线段相等)端点构成的线段。

\(Def 2\): 假定\(f:R^n\longmapsto R\),\(f\)的定义域\(dom f\subseteq R^n\)是一个凸集,若对于任意的与\(f(x)\)的定义域相交的直线上\(f(x)\)都是凸的,则\(f(x)\)\(dom f\)上是凸函数。用代数语言来表示即为:若对于\(\forall x \in R^n\),以及任意的方向向量\(v\),函数\(g(t)=f(x+tv)\)都是凸函数,且\(dom g=\{ t|x+tv\in domf \}\).

  • 注1:上述定义2可以把高维定义域的凸函数当作一维的凸函数来处理,就像是切西瓜一样,从一个点出发,沿着它的任意一个方向切下去,它仍然会是一个锅一样的形状,这个定义对于证明定义1的剩余2个等价定义是非常有用的。

    对于前面给出的两个定义对于函数的凸性并没有做任何假定,即是"原汁原味"的,只需要考虑函数值之间的关系,从最开始的图像出发,但是当函数是在开集定义域上是可微的或者二阶可微的时候,有更加简洁的判断条件,分别叫做一阶条件、二阶条件。

\(Def 3\)(一阶条件):假定\(f:R^n\longmapsto R\),\(f\)的定义域\(dom f\subseteq R^n\)是一个开集,函数\(f(x)\)\(dom f\)是可微的,即在\(dom f\)的任意一点 \(x\)处存在梯度\(\nabla f(x)\)\(f(x)\)是凸函数的充分必要条件是对于\(dom f\)上的任意\(x,y\),都有
\(\begin{align} f(y)\geqslant f(x)+\nabla f(x)^T(y-x). \end{align}\)

  • 注1:一阶条件可以看成是把函数\(f(x)\)进行一阶近似(即对其进行\(Taylor\)展开,只保留一阶信息),正是由于凸性的存在,使得函数\(f(x)\)的最优性条件只需要找到一个\(x'\),使得

\[\begin{equation} \nabla f(x')=0, \end{equation} \]

成立即可

\(Def 4\)(二阶条件):假定\(f:R^n\longmapsto R\),\(f\)的定义域\(dom f\subseteq R^n\)是一个开集,函数\(f(x)\)\(dom f\)是二阶可微的,即在定义域内任何一点\(x\)都存在\(Hessian\)矩阵\(\nabla^2f(x)\),则函数\(f(x)\)是凸函数的充要条件是对于\(\forall x \in domf\),有
\(\begin{equation} \nabla^2 f(x)\succcurlyeq0. \end{equation} \)

  • 注1:二阶条件的给出对于判断一个函数是否是凸函数起了很重要的作用,即看他的\(Hessian\)矩阵是否是半正定的,(5)中的符号\(\succcurlyeq\)是广义不等式,在矩阵中一般表示半正定的意思。

  • 注2:我们在Def1中的注2中给出了严格凸的简要定义(符号定义),对于二阶条件来说,也存在判断函数严格凸的充分条件,即
    \(\begin{align} \nabla^2 f(x)\succ0, \end{align}\)但这只是一个充分条件,一般来说不是充要条件,比如函数\(f(x)=x^4\)是严格凸的,但是在\(x=0\)的时候,\(\nabla^2f(x)|_{x=0}=12x^2|_{x=0}=0\),其不是在任意一点都是严格大于0的。

凸函数定义等价证明

\(Def 1\)\(Def 2\)的等价证明

证明:\(Def 1 \implies Def2\):

分析:要证明\(Def2\),即证明函数\(g(t)\)是凸的,要证(1) \(domg\)是凸集 (2) \(g(\theta t_1+(1-\theta)t_2)\leq \theta g(t_1)+(1-\theta)g(t_2).\)

对于任意的\(\theta\in [0,1]\),任意\(x \in domf\),\(t_1,t_2 \in domg\),以及任意的方向向量\(v\),由\(dom g\)的定义可知,\(x+t_1v\),\(x+t_2v\)都属于\(domf\),又\(domf\)是凸集,则:

\[\begin{equation} \begin{split} \theta(x+t_1v)+(1-\theta)(x+t_2v)=x+(\theta t_1+(1-\theta)t_2)v\in domf, \end{split} \end{equation} \]

故由\((7)\)可得,\(dom g\)是凸集.

由函数\(g(t)\)的定义可知,\(x+t_1v,x+t_2v \in domf\),且函数\(f(x)\)是凸函数,则:

\[\begin{equation} \begin{split} g(\theta t_1+(1-\theta) t_2))&=f(x+(\theta t_1+(1-\theta) t_2) v)\\&=f(\theta(x+t_1 v)+(1-\theta)(x+t_2 v))\\&\leqslant \theta f(x+t_1 v)+(1-\theta)f(x+t_2 v)\\&=\theta g(t_1)+(1-\theta)g(t_2), \end{split} \end{equation} \]

则由\((8)\),且结合凸函数\(Def1\),我们知道\(g(t)\)是凸函数。

\(Def 2 \implies Def1\):

要证函数\(f(x)\)是凸函数,过程与前面类似.先假定任意的\(x_1,x_2\in domf\),我们在\(domf\)内肯定可以找到一个\(x\),与方向向量\(v\),使得存在\(t_1,t_2\in domg\),有\(x_1=x+t_1v,x_2=x+t_2v\),则对于任意的\(\theta\in[0,1]\),由\(dom g\)是凸集,则由$\theta t_1+(1-\theta)t_2\in domg\implies x+(\theta t_1+(1-\theta)t_2)v\in domf $,故

\[\begin{equation} \begin{split} \theta x_1+(1-\theta)x_2=x+(\theta t_1+(1-\theta)t_2)v\in domf, \end{split} \end{equation} \]

故由\((9)\)可得,\(domf\)是凸集。

由前面的假定可知,

\[\begin{equation} \begin{split} f(\theta x_1+(1-\theta) x_2))&=f(x+(\theta t_1+(1-\theta) t_2) v)\\&=g(\theta t_1+(1-\theta t_2 )\\&\leqslant \theta g(t_1)+(1-\theta)g(t_2)\\&=\theta f(x+t_1v)+(1-\theta)g(x+t_2v)\\&=\theta f(x_1)+(1-\theta)f(x_2), \end{split} \end{equation} \]

则由\((10)\),我们知道\(f(x)\)是凸函数。

\(Def 1\)\(Def 3\)的等价证明

证明:我们先考虑特殊的情形,当\(f:\) \(\mathbb{R}\) \(\rightarrow\) \(\mathbb{R}\)时,证明 \(Def 1 \implies Def3\).

我们选取\(\forall t\in (0,1]\),\(\forall x,y\in dom f\),由\(Def 1\)可得,\(f(tx+(1-t)y)\leq tf(x)+(1-t)f(y)\),我们重新组合左边不等式的顺序便有:

\[\begin{equation} \begin{split} &tf(x)\geq tf(y)-f(y) +f(tx+(1-t)y), \end{split} \end{equation} \]

两边同时除以非负的t,有下式成立:

\[\begin{equation} \begin{split} &f(x)\geq f(y) + \frac{f(tx+(1-t)y)-f(y)}{t} \end{split} \end{equation} \]

再令\(t\rightarrow0\),由极限的保序性,便得到下式成立:

\[\begin{equation} \begin{split} f(x)\geq f(y) + f'(y)(x-y) \end{split} \end{equation} \]

我们当$f:\mathbb{R} \rightarrow \mathbb{R} $时,证明 \(Def 3 \implies Def 1\).

对于\(\forall x,y\in dom f\),\(\forall \theta \in [0,1]\),我们令\(z=\theta x + (1- \theta)y\),由\(Def3\)知道,

\[\begin{equation} \begin{split} f(x)&\geq f(z) + f'(z)(x-z)\\&=f(z) + f'(z)(1- \theta)(x-y), \end{split} \end{equation} \]

\[\begin{equation} \begin{split} f(y)&\geq f(z) + f'(z)(y-z)\\&=f(z) + f'(z)\theta(y-x), \end{split} \end{equation} \]

观察(14)(15)这两个式子,容易看出(14)左右两边乘以\(\theta\)加上(15)左右两边乘以\((1-\theta)\),便可得:

\[\begin{equation} \begin{split} \theta f(x)+ (1-\theta)f(y)&\geq f(z) + f'(z)\theta(1-\theta)(y-x)+f'(z)\theta(1- \theta)(x-y)\\&=f(z)\\&=f(\theta x + (1- \theta)y) \end{split} \end{equation} \]

至此,我们已经证明了在\(f:\) \(\mathbb{R} \rightarrow \mathbb{R}\)时,\(Def1\)\(Def3\)的等价性。下面考虑一般情况,当\(f:\) $\mathbb{R^n} \rightarrow \mathbb{R} \(时,先证明\)Def1$ \(\implies\) \(Def3\).

同前,我们还是任意选取\(x,y \in domf\),利用\(Def2\),对于任意的\(t\in domg\),有\(g(t)=f(y+t(x-y))\)成立.由于\(f(x)\)是凸函数,则\(g(t)\)也是凸函数.而$g:domg\subseteq \R\rightarrow \R \(故由前面证明的特殊情况可知,我们取\)t_1=1\(,\)t_2=0\(,便有:\)g'(1) \geq g(0)+g'(0)$ \(\implies\) $f(x) \geq f(y)+\nabla f(y)(x-y) $.

反过来,我们证明\(Def3\) \(\implies\) \(Def1\).

对于\(\forall x,y\) \(\in domf\),考虑\(Def2\),对于\(\forall\) $ t_1,t_2 \in domg\(,由于\)domg\(的定义,则\)t_1x+(1-t_1)y,t_2x+(1-t_2)y \in domf\(,我们利用\)Def3$,有下式成立:

\[\begin{equation} \begin{split} f(t_1x+(1-t_1)y) \geq f(t_2x+(1-t_2)y)+\nabla f(t_2x+(1-t_2)y)(t_1x+(1-t_1)y-t_2x+(1-t_2)y) \end{split} \end{equation} \]

我们仍然利用\(Def2\)假设\(g(t)=f(y+t(x-y))\),则由(17)我们可以得到:

\[\begin{equation} \begin{split} g(t_1) \geq g(t_2)+g'(t_2)(t_1-t_2), \end{split} \end{equation} \]

则我们可以推出\(g(t)\)是凸的,从而\(f(x)\)是凸的.

\(Def 1\)\(Def 4\)的等价证明

证明:我们先考虑特殊的情形,当\(f:\) \(\mathbb{R}\) \(\rightarrow\) $\mathbb{R} $时,证明 \(Def 1 \implies Def4\).

我们任意选取 \(x,y\) \(\in\) \(domf\),且 \(x>y\),则由 \(Def3\),我们有下式成立:

\[\begin{equation} \begin{split} f'(y)(x-y) \leq f(x)-f(y) \leq f'(x)(x-y), \end{split} \end{equation} \]

我们只考虑\((19)\)两边,同时除以\(x-y\),得下式:

\[\begin{equation} \begin{split} f'(y) \leq f'(x), \end{split} \end{equation} \]

再右边移到左边,同时除以\(y-x\),令\(y \rightarrow x\),则有下式:

\[\begin{equation} \begin{split} f^{''}(x) \geq 0 \end{split} \end{equation} \]

反过来,我们考虑证明当$f:\mathbb{R} \rightarrow \mathbb{R} $时,证明 \(Def 4 \implies Def1\).

我们选择\(\forall z \in domf\),则由\(Def4\),我们知道\(f''(z) \geq0\).再任意选取\(x,y \in domf\),且满足\(y \geq x\),则有下列积分式子成立:

\[\begin{equation} \begin{split} 0\leq \int_x^y f^{''}(z)(y-z)dz, \end{split} \end{equation} \]

再由微积分基本定理,得下式:

\[\begin{equation} \begin{split} 0\leq \int_x^y f^{''}(z)(y-z)dz=f(y)-f(x)-f'(x)(y-x), \end{split} \end{equation} \]

观察\((23)\)两端,即可得到:

\[\begin{equation} \begin{split} f(y) \geq f(x)+f'(x)(y-x), \end{split} \end{equation} \]

故由\(Def3\),可知\(f(x)\)是凸的,自然可以推出\(Def1\).
至此特殊情形证明完毕。

我们在考虑一般情形,当\(f:\) $\mathbb{R^n} \rightarrow \mathbb{R} $时,证明 \(Def 4 \implies Def1\).

对于\(\forall z \in domf\),由\(Def4\)可得, \(\nabla^2f(z)\succeq0\) . 面对高维情形,我们仍然考虑\(Def2\),转换为特殊情形。任意选取\(x,y \in domf\),\(t\in domg\),有\(g(t)=f(x+t(y-x))\),由于\(f\)是二阶可微的,则对\(g(t)\)求二阶导数,有

\[\begin{equation} \begin{split} g^{''}(t)=(y-x)^T\nabla^2f(x+t(y-x))(y-x), \end{split} \end{equation} \]

由于 \(\nabla^2f(x+t(y-x))\succeq0\),则由半正定矩阵的定义,有\(g''(t) \geq 0\),则\(g(t)\)是凸的,自然可以推导出\(Def1\).

反过来,当\(Def1\)成立时,同样转为一维情形,我们令\((25)\)中,\(z=x+t(y-x)\),易知道对于\(\forall x,y \in domf\),且\(x \neq y\),我们可以得到\((y-x)^T\nabla^2f(z)(y-x)\geq 0\)的,则由半正定矩阵的定义,我们知道\(\nabla^2f(z)\succeq0\),故\(Def4\)成立。

参考资料

  1. Boyd S, Boyd S P, Vandenberghe L. Convex optimization[M]. Cambridge university press, 2004.
posted @ 2024-09-23 21:41  Amuse123  阅读(503)  评论(0)    收藏  举报