From 3e4f48e36f6735645f37861e7693efd2eac2ecce Mon Sep 17 00:00:00 2001 From: Josh Gao Date: Sun, 16 Jun 2024 13:32:18 +0800 Subject: [PATCH] finish post cvx-2.1 --- source/_posts/2024-06-14-josh-cvx-2-1.md | 271 +++++++++++++++--- ...024-06-14-josh-cvx-2-1-050-EpigraphOfF.png | Bin 0 -> 42839 bytes ...-1-060-EpigraphAndSupportingHyperplane.png | Bin 0 -> 60433 bytes 3 files changed, 225 insertions(+), 46 deletions(-) create mode 100644 source/images/post/2024-06-14-josh-cvx-2-1/2024-06-14-josh-cvx-2-1-050-EpigraphOfF.png create mode 100644 source/images/post/2024-06-14-josh-cvx-2-1/2024-06-14-josh-cvx-2-1-060-EpigraphAndSupportingHyperplane.png diff --git a/source/_posts/2024-06-14-josh-cvx-2-1.md b/source/_posts/2024-06-14-josh-cvx-2-1.md index d36f0b0..3e4271b 100644 --- a/source/_posts/2024-06-14-josh-cvx-2-1.md +++ b/source/_posts/2024-06-14-josh-cvx-2-1.md @@ -26,9 +26,13 @@ date: 2024-06-14 20:29:26 $ \newcommand{\TT}{\mathrm{T}} +\newcommand{\dd}{\mathrm{d}} \def\dom{\mathop{\bf dom}} \def\diag{\mathop{\bf diag}} -$  函数 $f:\mathbf{R}^n\to\mathbf{R}$ 是凸的,如果 $\dom f$ 是凸集,且对于任意 $x,y\in\dom f$ 和任意 $0\leqslant\theta\leqslant1$,有 +\def\epi{\mathop{\bf epi}} +\def\hypo{\mathop{\bf hypo}} +\def\prob{\mathop{\bf prob}} +$  函数 $f:\mathbf{R}^n\to\mathbf{R}$ 是**凸**(*Convex*)的,如果 $\dom f$ 是凸集,且对于任意 $x,y\in\dom f$ 和任意 $0\leqslant\theta\leqslant1$,有 $$\begin{equation}\label{DefinitionOfConvexFunction} f(\theta x+(1-\theta)y)\leqslant\theta f(x)+(1-\theta)f(y) @@ -42,9 +46,11 @@ $$\begin{equation}\label{DefinitionOfConvexFunction} -  对于仿射函数,不等式 $\eqref{DefinitionOfConvexFunction}$ 总成立,因此所有的仿射函数(包括线性函数)是既凸且凹的。反之,若某个函数是既凸又凹的,则其是仿射函数。函数是凸的,当且仅当其在与其定义域相交的任何直线上都是凸的。换言之,函数 $f$ 是凸的,当且仅当对于任意 $x\in\dom f$ 和任意向量 $v$,函数 $g(t)=f(x+tv)$ 是凸的(其定义域为 $\{t\mid x+tv\in\dom f\}$)。这个性质非常有用,因为它容许我们通过将函数限制在直线上来判断其是否是凸函数。 +  对于仿射函数,不等式 $\eqref{DefinitionOfConvexFunction}$ 总成立,因此所有的仿射函数(包括线性函数)是既凸且凹的。反之,若某个函数是既凸又凹的,则其是仿射函数。 -  对凸函数的**分析**(*analysis*)已经相当地透彻,这里不再继续深入。例如有这样一个简单的结论,.凸函数在其定义域相对内部是连续的;它只可能在相对边界上不连续。 +  函数是凸的,当且仅当其在与其定义域相交的任何直线上都是凸的。换言之,函数 $f$ 是凸的,当且仅当对于任意 $x\in\dom f$ 和任意向量 $v$,函数 $g(t)=f(x+tv)$ 是凸的(其定义域为 $\{t\mid x+tv\in\dom f\}$)。这个性质非常有用,因为它容许我们通过将函数限制在直线上来判断其是否是凸函数。 + +  对凸函数的**分析**(*analysis*)已经相当地透彻,这里不再继续深入。例如有这样一个简单的结论,凸函数在其定义域相对内部是连续的;它只可能在相对边界上不连续。 # 2. 扩展值延伸 @@ -57,15 +63,20 @@ $$ 延伸函数 $\tilde{f}$ 是定义在全空间 $\mathbf{R}^n$ 上的,取值集合为 $\mathbf{R}\cup\{\infty\}$。我们也可以从延伸函数 $\tilde{f}$ 的定义中确定原函数 $f$ 的定义域,即 $\dom f=\{x\mid\tilde{f}(x)<\infty\}$。 -  这种延伸可以简化符号描述,此时我们就不需要明确描述定义域或者每次提到 $f(x)$ 时都限定“对于所有的 $x\in\dom f$”。以基本不等式 $\eqref{DefinitionOfConvexFunction}$ 为例,对于延伸函数 $\tilde{f}$, 可以描述为:对于任意 $x$ 和 $y$,以及 $0<\theta<1$,有 +  这种延伸可以简化符号描述,此时我们就不需要明确描述定义域或者每次提到 $f(x)$ 时都限定“对于所有的 $x\in\dom f$”。以基本不等式 $\eqref{DefinitionOfConvexFunction}$ 为例,对于延伸函数 $\tilde{f}$,可以描述为:对于**任意**(*any*) $x$ 和 $y$,以及 $0<\theta<1$,有 $$ \tilde{f}(\theta x+(1-\theta)y)\leqslant\theta\tilde{f}(x)+(1-\theta)\tilde{f}(y) $$ -(当 $\theta=0$ 或 $\theta=1$ 时不等式总成立。)当然此时我们应当利用扩展运算和序来理解这个不等式。若 $x$ 和 $y$ 都在 $\dom f$内,上述不等式即为不等式 $\eqref{DefinitionOfConvexFunction}$;如果有任何一个在 $\dom f$ 外,上述不等式的右端为$\infty$,不等式仍然成立。再看一个这种表示的例子,设 $f_1$ 和 $f_2$ 是 $\mathbf{R}^n$ 上的两个凸函数。逐点和函数 $f=f_1+f_2$ 的定义域为 $\dom f=\dom f_1\cap\dom f_2$,对于任意 $x\in\dom f$,有 $f(x)=f_1(x)+f_2(x)$。利用扩展值延伸我们可以简单地描述为,对于任意 $x$,$\tilde{f}(x)=\tilde{f}_1(x)+\tilde{f}_2(x)$。在这个方程里,函数 $f$ 的定义域被自动定义为 $\dom f=\dom f_1\cap\dom f_2$,因为当 $x\not\in\dom f_1$ 或者 $x\not\in\dom f_2$ 时,$\tilde{f}(x)=\infty$。在此例中,我们就可以利用扩展运算来自动定义定义域。 +(当 $\theta=0$ 或 $\theta=1$ 时不等式总成立。)当然此时我们应当利用扩展运算和序来理解这个不等式。 -  在不会造成歧义的情况下,我们用同样的符号来表示一个凸函数及其延伸函数。即假设所有的凸函数都隐含地被延伸了,也就是在定义域外都被定义为 $\infty$。 +- 若 $x$ 和 $y$ 都在 $\dom f$ 内,上述不等式即为不等式 $\eqref{DefinitionOfConvexFunction}$; +- 如果有任何一个在 $\dom f$ 外,上述不等式的右端为 $\infty$,不等式仍然成立。 + +  再看一个这种表示的例子,设 $f_1$ 和 $f_2$ 是 $\mathbf{R}^n$ 上的两个凸函数。逐点和函数 $f=f_1+f_2$ 的定义域为 $\dom f=\dom f_1\cap\dom f_2$,对于任意 $x\in\dom f$,有 $f(x)=f_1(x)+f_2(x)$。利用扩展值延伸我们可以简单地描述为,对于任意 $x$,$\tilde{f}(x)=\tilde{f}_1(x)+\tilde{f}_2(x)$。在这个方程里,函数 $f$ 的定义域被自动定义为 $\dom f=\dom f_1\cap\dom f_2$,因为当 $x\not\in\dom f_1$ 或者 $x\not\in\dom f_2$ 时,$\tilde{f}(x)=\infty$。在此例中,我们就可以利用扩展运算来自动定义定义域。 + +  在不会造成歧义的情况下,可以用同样的符号来表示一个凸函数及其延伸函数。即假设所有的凸函数都隐含地被延伸了,也就是在定义域外都被定义为 $\infty$。 > **举例** **凸集的示性函数**。设 $C\subseteq\mathbf{R}^n$ 是一个凸集,考虑(凸)函数 $I_C$,其定义域为 $C$,对于所有的 $x\in C$,有 $I_C(x)=0$。换言之,此函数在集合 $C$ 上一直为零。其扩展值延伸可以描述如下 > @@ -81,7 +92,7 @@ $$ # 3. 一阶条件 -  假设 $f$ 可微(即其梯度$\nabla f$在开集 $\dom f$内处处存在),则函数 $f$ 是凸函数的充要条件是 $\dom f$ 是凸集且对于任意 $x,y\in\dom f$,下式成立 +  假设 $f$ 可微(即其梯度 $\nabla f$ 在开集 $\dom f$ 内处处存在),则函数 $f$ 是凸函数的充要条件是 $\dom f$ 是凸集且对于任意 $x,y\in\dom f$,下式成立 $$\begin{equation}\label{FirstOrderCondition} f(y)\geqslant f(x)+\nabla f(x)^\TT (y-x) @@ -95,7 +106,9 @@ $$\begin{equation}\label{FirstOrderCondition}   由 $f(x)+\nabla f(x)^\TT (y-x)$ 得出的仿射函数 $y$ 即为函数 $f$ 在点 $x$ 附近的 Taylor 近似。不等式 $\eqref{FirstOrderCondition}$ 表明,对于一个凸函数,其一阶 Taylor 近似实质上是原函数的一个**全局下估计**(*global underestimator*)。反之,如果某个函数的一阶 Taylor 近似总是其全局下估计,那么这个函数是凸的。 -  不等式 $\eqref{FirstOrderCondition}$ 说明从一个凸函数的**局部信息**(*local information*)(即它在某点的函数值及导数),可以得到一些全局信息(*global information*)(如它的全局下估计)。这也许是凸函数的最重要的信息,由此可以解释凸函数以及凸优化问题的一些非常重要的性质。下面是一个简单的例子,由不等式 $\eqref{FirstOrderCondition}$ 可以知道,如果 $\nabla f(x)=0$,那么对于所有的 $y\in\dom f$,存在 $f(y)\geqslant f(x)$,即 $x$ 是函数 $f$ 的全局极小点。 +  不等式 $\eqref{FirstOrderCondition}$ 说明从一个凸函数的**局部信息**(*local information*)(即它在某点的函数值及导数),可以得到一些**全局信息**(*global information*)(如它的全局下估计)。这也许是凸函数的最重要的信息,由此可以解释凸函数以及凸优化问题的一些非常重要的性质。 + +> **举例** 由不等式 $\eqref{FirstOrderCondition}$ 可以知道,如果 $\nabla f(x)=0$,那么对于所有的 $y\in\dom f$,存在 $f(y)\geqslant f(x)$,即 $x$ 是函数 $f$ 的全局极小点。   严格凸性同样可以由一阶条件刻画:函数 $f$ 严格凸的充要条件是 $\dom f$ 是凸集且对于任意 $x,y\in\dom f$,$x\neq y$,有 @@ -131,23 +144,23 @@ $$ 令 $t\to 0$,可以得到不等式 $\eqref{FirstOrderConditionWhenNEquals1}$。 -  为了证明充分性,假设对$\dom f$(某个区间)内的任意 $x$ 和 $y$,函数满足不等式 $\eqref{FirstOrderConditionWhenNEquals1}$。选择任意 $x\neq y,0\leqslant\theta\leqslant1$,令 $z=\theta x+(1-\theta)y$。两次应用不等式 $\eqref{FirstOrderConditionWhenNEquals1}$ 可得 +  为了证明充分性,假设对 $\dom f$(某个区间)内的任意 $x$ 和 $y$,函数满足不等式 $\eqref{FirstOrderConditionWhenNEquals1}$。选择任意 $x\neq y$,$0\leqslant\theta\leqslant1$,令 $z=\theta x+(1-\theta)y$。两次应用不等式 $\eqref{FirstOrderConditionWhenNEquals1}$ 可得 $$ f(x)\geqslant f(z)+f'(z)(x-z),\quad f(y)\geqslant f(z)+f'(z)(y-z) $$ -将第一个不等式乘以$\theta$,第二个不等式乘以$1-\theta$,并将二者相加可得 +将第一个不等式乘以 $\theta$,第二个不等式乘以 $1-\theta$,并将二者相加可得 $$ \theta f(x)+(1-\theta)f(y)\geqslant f(z) $$ -从而说明了函数$f$是凸的。 +从而说明了函数 $f$ 是凸的。   现在来证明一般情况,即 $f:\mathbf{R}^n\to\mathbf{R}$。设 $x,y\in\mathbf{R}^n$,考虑过这两点的直线上的函数 $f$,即函数 $g(t)=f(ty+(1-t)x)$,此函数对 $t$ 求导可得 $g'(t)=\nabla f(ty+(1-t)x)^\TT(y-x)$。 -  首先假设函数 $f$ 是凸的,则函数 $g$ 是凸的,由前面的讨论可得 $g(1)\geqslant g(0)+g^{\prime}(0)$,即 +  首先假设函数 $f$ 是凸的,则函数 $g$ 是凸的,由前面的讨论可得 $g(1)\geqslant g(0)+g'(0)$,即 $$ f(y)\geqslant f(x)+\nabla f(x)^\TT (y-x) @@ -159,7 +172,7 @@ $$ f(ty+(1-t)x)\geqslant f(\tilde{t}y+(1-\tilde{t})x)+\nabla f(\tilde{t}y+(1-\tilde{t})x)^\TT (y-x)(t-\tilde{t}) $$ -即 $g(t)\geqslant g(\tilde{t})+g^{\prime}(\tilde{t})(t-\tilde{t})$,说明了函数 $g$ 是凸的。 +即 $g(t)\geqslant g(\tilde{t})+g'(\tilde{t})(t-\tilde{t})$,说明了函数 $g$ 是凸的。 # 4 二阶条件 @@ -169,9 +182,9 @@ $$ \nabla^2f(x)\succeq0 $$ -对于 $\mathbf{R}$ 上的函数,上式可以简化为一个简单的条件 $f^{\prime\prime}(x)\geqslant0$($\dom f$ 是凸的,即一个区间),此条件说明函数 $f$ 的导数是非减的。条件 $\nabla^2f(x)\succeq0$ 从几何上可以理解为函数图像在点 $x$ 处具有正(向上)的曲率。 +对于 $\mathbf{R}$ 上的函数,上式可以简化为一个简单的条件 $f''(x)\geqslant0$($\dom f$ 是凸的,即一个区间),此条件说明函数 $f$ 的导数是非减的。条件 $\nabla^2f(x)\succeq0$ 从几何上可以理解为函数图像在点 $x$ 处具有正(向上)的曲率。 -  类似地,函数 $f$ 是凹函数的充要条件是,$\dom f$ 是凸集且对于任意 $x\in$ $\dom f$,$\nabla ^{2}f( x)$ $\preceq$ 0。严格凸的条件可以部分由二阶条件刻画。如果对于任意的 $x\in\dom f$ 有 $\nabla^2f(x)\succ0$,则函数 $f$ 严格凸。反过来则不一定成立:例如,函数 $f:\mathbf{R}\to\mathbf{R}$,其表达式为 $f(x)=x^4$,它是严格凸的,但是在 $x=0$处,二阶导数为零。 +  类似地,函数 $f$ 是凹函数的充要条件是,$\dom f$ 是凸集且对于任意 $x\in$ $\dom f$,$\nabla ^{2}f( x)$ $\preceq$ 0。严格凸的条件可以部分由二阶条件刻画。如果对于任意的 $x\in\dom f$ 有 $\nabla^2f(x)\succ0$,则函数 $f$ 严格凸。反过来则不一定成立:例如,函数 $f:\mathbf{R}\to\mathbf{R}$,其表达式为 $f(x)=x^4$,它是严格凸的,但是在 $x=0$ 处,二阶导数为零。 > **举例** **二次函数**。考虑二次函数 $f:\mathbf{R}^n\to\mathbf{R}$,其定义域为 $\dom f=\mathbf{R}^n$,其表达式为 > @@ -179,21 +192,21 @@ $$ > f(x)=(1/2)x^\TT Px+q^\TT x+r > $$ > -> 其中 $P\in\mathbf{S}^{n},q\in\mathbf{R}^{n},r\in\mathbf{R}$。因为对于任意 $x,\nabla^2f(x)=P$,所以函数 $f$ 是凸的,当且仅当 $P\succeq0$($f$是凹的当且仅当$P\preceq0$)。 +> 其中 $P\in\mathbf{S}^{n}$,$q\in\mathbf{R}^{n}$,$r\in\mathbf{R}$。因为对于任意 $x$,$\nabla^2f(x)=P$,所以函数 $f$ 是凸的,当且仅当 $P\succeq0$($f$ 是凹的当且仅当 $P\preceq0$)。 > > 对于二次函数,严格凸比较容易表达:函数 $f$ 是严格凸的,当且仅当 $P\succ0$(函数是严格凹的当且仅当 $P\prec0$)。 -> **注释** 在判断函数的凸性和凹性时,不管是一阶条件还是二阶条件,$\dom f$ 必须是凸集这个前提条件必须满足。例如,考虑函数 $f(x)=1/x^2$,其定义域为 $\ dom f=\{x\in$ $\mathbf{R}\mid x\neq0\}$,对于所有 $x\in\dom f$ 均满足 $f^\prime\prime(x)>0$,但是函数 $f(x)$ 并不是凸函数。 +> **注释** 在判断函数的凸性和凹性时,不管是一阶条件还是二阶条件,$\dom f$ 必须是凸集这个前提条件必须满足。例如,考虑函数 $f(x)=1/x^2$,其定义域为 $\dom f=\{x\in$ $\mathbf{R}\mid x\neq0\}$,对于所有 $x\in\dom f$ 均满足 $f''(x)>0$,但是函数 $f(x)$ 并不是凸函数。 # 5. 例子   前文已经提到所有的线性函数和仿射函数均为凸函数(同时也是凹函数),并描述了凸和凹的二次函数。本节绘出更多的凸函数和凹函数的例子。首先考虑 $\mathbf{R}$ 上的一些函数,其自变量为 $x$。 -- **指数函数**。对任意 $a\in\mathbf{R}$,函数 $e^ax$ 在 $\mathbf{R}$ 上是凸的。 -- **幂函数**。当 $a\geqslant1$ 或 $a\leqslant0$ 时,$x^a$ 在 $\mathbf{R}_{++}$ 上是凸函数,当 $0\leqslant a\leqslant1$ 时,$x^a$ 在 $\mathbf{R}_{++}$ 上是凹函数。 -- **绝对值幂函数**。当 $p\geqslant1$ 时,函数 $|x|^p$在 $\mathbf{R}$ 上是凸函数。 -- **对数函数**。函数 $\log x$ 在 $\mathbf{R}_{++}$ 上是凹函数。 -- **负熵**。函数 $x\log x$ 在其定义域上是凸函数。(定义域为 $\mathbf{R}_{++}$ 或者 $\mathbf{R}_+$,当 $x=0$ 时定义函数值为 0。) +- **指数函数**(*Exponential*)。对任意 $a\in\mathbf{R}$,函数 $e^{ax}$ 在 $\mathbf{R}$ 上是凸的。 +- **幂函数**(*Power*)。当 $a\geqslant1$ 或 $a\leqslant0$ 时,$x^a$ 在 $\mathbf{R}_{++}$ 上是凸函数;当 $0\leqslant a\leqslant1$ 时,$x^a$ 在 $\mathbf{R}_{++}$ 上是凹函数。 +- **绝对值幂函数**(*Power of absolute value*)。当 $p\geqslant1$ 时,函数 $|x|^p$ 在 $\mathbf{R}$ 上是凸函数。 +- **对数函数**(*Logarithm*)。函数 $\log x$ 在 $\mathbf{R}_{++}$ 上是凹函数。 +- **负熵**(*Negative entropy*)。函数 $x\log x$ 在其定义域上是凸函数。(定义域为 $\mathbf{R}_{++}$ 或者 $\mathbf{R}_+$,当 $x=0$ 时定义函数值为 0。)   我们可以通过基本不等式 $\eqref{DefinitionOfConvexFunction}$ 或者二阶导数半正定或半负定来判断上述函数是凸的或是凹的。以函数 $f(x)=x\log x$ 为例,其导数和二阶导数为 @@ -201,15 +214,15 @@ $$ f'(x)=\log x+1,\quad f''(x)=1/x $$ -即对于 $x>0$,有 $f^\prime\prime(x)>0$。所以负熵函数是(严格)凸的。 +即对于 $x>0$,有 $f''(x)>0$。所以负熵函数是(严格)凸的。 下面给出 $\mathbf{R}^n$ 上的一些例子。 -**范数**。 $\mathbb{R}^n$ 上的任意范数均为凸函数。 +**范数**(*Norm*)。 $\mathbf{R}^n$ 上的任意范数均为凸函数。 -**最大值函数**。函数 $f(x)=\max\{x_1,\cdots,x_n\}$ 在 $\mathbb{R}^n$ 上是凸的。 +**最大值函数**(*Max function*)。函数 $f(x)=\max\{x_1,\cdots,x_n\}$ 在 $\mathbf{R}^n$ 上是凸的。 -**二次-线性分式函数**。函数 $f(x,y)=x^2/y$,其定义域为 +**二次-线性分式函数**(*Quadratic-over-linear function*)。函数 $f(x,y)=x^2/y$,其定义域为 $$ \dom f= \mathbf{R} \times \mathbf{R} _{+ + }= \{ ( x, y) \in \mathbf{R} ^{2}\mid y> 0\} $$ @@ -219,7 +232,7 @@ $$ ![图 3. 函数 $f(x, y) = x^2/y$ 的图像。](../images/post/2024-06-14-josh-cvx-2-1/2024-06-14-josh-cvx-2-1-030-QuadraticOverLinearFunction.png){width=400px} -**指数和的对数**。函数 $f(x)=\log\left(e^{x_1}+\cdots+e^{x_n}\right)$ 在 $\mathbf{R}^n$上是凸函数。这个函数可以看成最大值函数的可微(实际上是解析)近似,因为对任意 $x$,下面的不等式成立 +**指数和的对数**(*Log-sum-exp*)。函数 $f(x)=\log\left(e^{x_1}+\cdots+e^{x_n}\right)$ 在 $\mathbf{R}^n$上是凸函数。这个函数可以看成最大值函数的可微(实际上是解析)近似,因为对任意 $x$,下面的不等式成立 $$ \max\{x_{1},\cdots,x_{n}\}\leqslant f(x)\leqslant\max\{x_{1},\cdots,x_{n}\}+\log n $$ @@ -229,11 +242,11 @@ $$ ![图 4. 函数 $f(x, y) = log(e^x + e^y)$ 的图像。](../images/post/2024-06-14-josh-cvx-2-1/2024-06-14-josh-cvx-2-1-040-LogSumExo.png){width=400px} -**几何平均**。几何平均函数$f(x)=\left(\prod_i=1^nx_i\right)^{1/n}$在定义域 dom $f=\mathbf{R}_++^n$上是凹函数。 +**几何平均**(*Geometric mean*)。几何平均函数$f(x)=\left(\displaystyle\prod_{i=1}^n x_i\right)^{1/n}$在定义域 $\dom f=\mathbf{R}_{++}^n$ 上是凹函数。 -**对数-行列式**。函数$f(X)=\log\det X$在定义域$\dom f=\mathbf{S}_{++}^n$上是凹函数。 +**对数-行列式**(*Log-determinant*)。函数 $f(X)=\log\det X$ 在定义域 $\dom f=\mathbf{S}_{++}^n$ 上是凹函数。 -  判断上述函数的凸性(或者凹性)可以有多种途径,可以直接验证不等式(3.1) 是否成立,亦可以验证其 Hessian 矩阵是否半正定,或者可以将函数转换到与其定义域相交的任意直线上,通过得到的单变量函数判断原函数的凸性。 +  判断上述函数的凸性(或者凹性)可以有多种途径,可以直接验证不等式 $\eqref{DefinitionOfConvexFunction}$ 是否成立,亦可以验证其 Hessian 矩阵是否半正定,或者可以将函数转换到与其定义域相交的任意直线上,通过得到的单变量函数判断原函数的凸性。 **范数**。如果函数 $f:\mathbf{R}^n\to\mathbf{R}$ 是范数,任取 $0\leqslant\theta\leqslant1$,有 @@ -243,7 +256,7 @@ $$ 上述不等式可以由三角不等式得到,当范数满足齐次性时,上述不等式取等号。 -**最大值函数**。对任意 $0\leqslant\theta\leqslant1$,函数 $f(x)=\max_ix_i$ 满足 +**最大值函数**。对任意 $0\leqslant\theta\leqslant1$,函数 $f(x)=\displaystyle\max_i x_i$ 满足 $$\begin{aligned} f(\theta x+(1-\theta)y)&=\max_{i}(\theta x_{i}+(1-\theta)y_{i}) @@ -253,8 +266,7 @@ f(\theta x+(1-\theta)y)&=\max_{i}(\theta x_{i}+(1-\theta)y_{i}) &=\theta f(x)+(1-\theta)f(y) \end{aligned}$$ -**二次线性分式函数**。为了说明二次-线性分式函数 $f( x, y) = x^2/ y$ 是凸的,我们注意 -到,对于 $y>0$,有 +**二次线性分式函数**。为了说明二次-线性分式函数 $f( x, y) = x^2/ y$ 是凸的,我们注意到,对于 $y>0$,有 $$ \nabla^2f(x,y)=\dfrac{2}{y^3}\left[\begin{array}{cc} @@ -266,7 +278,7 @@ y\\-x \end{array}\right]^\TT \succeq0 $$ -指数和的对数。 指数和的对数函数的 Hessian 矩阵为 +**指数和的对数**。指数和的对数函数的 Hessian 矩阵为 $$ \nabla^{2}f(x)=\frac{1}{(\mathbf{1}^\TT z)^{2}}\left((\mathbf{1}^\TT z)\diag(z)-zz^\TT\right) @@ -278,9 +290,9 @@ $$ v^\TT \nabla^{2}f(x)v=\frac{1}{(\mathbf{1}^\TT z)^{2}}\left(\left(\sum_{i=1}^{n}z_{i}\right)\left(\sum_{i=1}^{n}v_{i}^{2}z_{i}\right)-\left(\sum_{i=1}^{n}v_{i}z_{i}\right)^{2}\right)\geqslant0 $$ -上述不等式可以应用 Cauchy-Schwarz 不等式 $(a^\TT a)(b^\TT b)\geqslant(a^\TT b)^2$ 得到,此时向量 $a$ 和 $b$ 的分量为 $a_i= v_i\sqrt {z_i}$, $b_i= \sqrt {z_i}$。 +上述不等式可以应用 Cauchy-Schwarz 不等式 $(a^\TT a)(b^\TT b)\geqslant(a^\TT b)^2$ 得到,此时向量 $a$ 和 $b$ 的分量为 $a_i= v_i\sqrt {z_i}$,$b_i= \sqrt {z_i}$。 -**几何平均**。类似地,我们说明,几何平均函数 $f(x)=\left(\prod_{i=1}^nx_i\right)^{1/n}$ 在定义域 $\dom f=\mathbf{R}_{++}^{n}$上是凹的。其 Hessian 矩阵 $\nabla^2f(x)$ 可以通过下面两个式子给出 +**几何平均**。类似地,我们说明,几何平均函数 $f(x)=\left(\displaystyle\prod_{i=1}^nx_i\right)^{1/n}$ 在定义域 $\dom f=\mathbf{R}_{++}^{n}$上是凹的。其 Hessian 矩阵 $\nabla^2f(x)$ 可以通过下面两个式子给出 $$ \frac{\partial^{2}f(x)}{\partial x_{k}^{2}}=-(n-1)\frac{\left(\displaystyle\prod_{i=1}^{n}x_{i}\right)^{1/n}}{n^{2}x_{k}^{2}},\quad\frac{\partial^{2}f(x)}{\partial x_{k}\partial x_{l}}=\frac{\left(\displaystyle\prod_{i=1}^{n}x_{i}\right)^{1/n}}{n^{2}x_{k}x_{l}}\quad\forall\:k\neq l @@ -288,16 +300,16 @@ $$ 因此 $\nabla^2f(x)$ 具有如下表达式 -$$\nabla^{2}f(x)=-\frac{\displaystyle\prod_{i=1}^{n}x_{i}^{1/n}}{n^{2}}\left(n\:\mathbf{diag}(1/x_{1}^{2},\cdots,1/x_{n}^{2})-qq^{T}\right) +$$\nabla^{2}f(x)=-\frac{\displaystyle\prod_{i=1}^{n}x_{i}^{1/n}}{n^{2}}\left(n \diag(1/x_{1}^{2},\cdots,1/x_{n}^{2})-qq^\TT\right) $$ 其中,$q_i=1/x_i$。我们需要证明 $\nabla^2f(x)\preceq0$,即对于任意向量 $v$,有 $$ -v^TT \nabla^2f(x)v=-\frac{\displaystyle\prod_{i=1}^nx_i^{1/n}}{n^2}\left(n\sum_{i=1}^nv_i^2/x_i^2-\left(\sum_{i=1}^nv_i/x_i\right)^2\right)\leqslant0 +v^\TT \nabla^2f(x)v=-\frac{\displaystyle\prod_{i=1}^nx_i^{1/n}}{n^2}\left(n\sum_{i=1}^nv_i^2/x_i^2-\left(\sum_{i=1}^nv_i/x_i\right)^2\right)\leqslant0 $$ -这同样可以应用 Cauchy-Schwarz 不等式 $(a^TT a)(b^TT b)\geqslant(a^TT b)^2$ 得到,只需令向量 $a=1$,向量 $b$ 的分量 $b_i=v_i/x_i$。 +这同样可以应用 Cauchy-Schwarz 不等式 $(a^\TT a)(b^\TT b)\geqslant(a^\TT b)^2$ 得到,只需令向量 $a=\mathbf{1}$,向量 $b$ 的分量 $b_i=v_i/x_i$。 **对数-行列式**。对于函数 $f(X)=\log\det X$,我们可以将其转化为任意直线上的单变量函数来验证它是凹的。令 $X=Z+tV$,其中 $Z,V\in\mathbf{S}^n$,定义 $g(t)=f(Z+tV)$,自变量 $t$ 满足 $Z+tV\succ0$。不失一般性,假设 $t=0$ 满足条件,即 $Z\succ0$。我们有 @@ -309,32 +321,32 @@ g(t)&=\log\det(Z+tV) &=\sum_{i=1}^{n}\log(1+t\lambda_{i})+\log\det Z \end{aligned}$$ -其中 $\lambda_1,\cdots,\lambda_n$ 是矩阵 $Z^-1/2VZ^{-1/2}$ 的特征值。因此下式成立 +其中 $\lambda_1,\cdots,\lambda_n$ 是矩阵 $Z^{-1/2}VZ^{-1/2}$ 的特征值。因此下式成立 $$ -g'(t)=\sum_{i=1}^{n}\frac{\lambda_{i}}{1+t\lambda_{i}},\quad g''(t)=-\sum_{i=1}^{n}\frac{\lambda_{i}^{2}}{(1+t\lambda_{i})^{2}} +g'(t)=\sum_{i=1}^{n}\frac{\lambda_{i}}{1+t\lambda_{i}},\qquad g''(t)=-\sum_{i=1}^{n}\frac{\lambda_{i}^{2}}{(1+t\lambda_{i})^{2}} $$ -因为 $g^{\prime\prime}(t)\leqslant0$,函数 $f$ 是凹的。 +因为 $g''(t)\leqslant0$,函数 $f$ 是凹的。 # 6. 下水平集 -  函数 $f: \mathbf{R} ^{n}\to \mathbf{R}$ 的 $\alpha$-下水平集定义为 +  函数 $f: \mathbf{R} ^{n}\to \mathbf{R}$ 的 **$\alpha$-下水平集**(*$\alpha$-sublevel set*)定义为 $$ -C_{\alpha}=\{x\in\mathbf{dom}f\mid f(x)\leqslant\alpha\} +C_{\alpha}=\{x\in\dom f\mid f(x)\leqslant\alpha\} $$ 对于任意 $\alpha$ 值,凸函数的下水平集仍然是凸集。证明可以由凸集的定义直接得到:如果 $x,y\in C_{\alpha }$,则有 $f( x) \leqslant \alpha$,$f( y) \leqslant \alpha$,因此对于任意$0\leqslant\theta\leqslant1$,$f(\theta x+(1-\theta)y)\leqslant\alpha$,即 $\theta x+(1-\theta)y\in C_{\alpha}$。   反过来不一定正确:某个函数的所有下水平集都是凸集,但这个函数可能不是凸函数。例如,函数 $f(x)=-e^x$ 在 $\mathbf{R}$ 上不是凸函数(实质上,它是严格凹函数),但是其所有下水平集均为凸集。 -  如果 $f$ 是凹函数,则由 $\{x\in\mathbf{dom}f\mid f(x)\geqslant\alpha\}$ 定义的 $\alpha$-上水平集也是凸集。下水平集的性质可以用来判断集合的凸性,若某个集合可以描述为一个凸函数的下水平集,或者一个凹函数的上水平集,则其是凸集。 +  如果 $f$ 是凹函数,则由 $\{x\in\dom f\mid f(x)\geqslant\alpha\}$ 定义的 **$\alpha$-上水平集**(*$\alpha$-superlevel set*)也是凸集。下水平集的性质可以用来判断集合的凸性,若某个集合可以描述为一个凸函数的下水平集,或者一个凹函数的上水平集,则其是凸集。 > **举例** 对于 $x\in\mathbf{R}_+^n$,其几何平均和算术平均分别为 > > $$ -> G(x)=\left(\prod_{i=1}^{n}x_{i}\right)^{1/n},\quad A(x)=\frac{1}{n}\sum_{i=1}^{n}x_{i} +> G(x)=\left(\prod_{i=1}^{n}x_{i}\right)^{1/n},\qquad A(x)=\frac{1}{n}\sum_{i=1}^{n}x_{i} > $$ > > (在 $G$ 中,定义 $0^{1/n}=0$)。算术几何平均不等式为 $G(x)\leqslant A(x)$。 @@ -348,6 +360,173 @@ $$ > 即使得几何平均至少大于等于算术平均的 $\alpha$ 倍的集合。此集合是凸集,因为它是凹函数 $G(x)=\alpha A(x)$ 的 $0$-上水平集。事实上,这个每合是正齐次的,因此它是凸锥 +# 7. 上境图 + +  函数 $f:\mathbf{R}^{n}\to\mathbf{R}$ 的图像定义为 + +$$ +\{(x,f(x))\mid x\in\dom f\} +$$ + +它是 $\mathbf{R}^{n+1}$ 空间的一个子集。函数 $f:\mathbf{R}^n\to\mathbf{R}$ 的**上境图**(*epigraph*)定义为 + +$$ +\epi f=\{(x,t)\mid x\in\dom f,f(x)\leqslant t\} +$$ + +它也是 $\mathbf{R}^{n+1}$ 空间的一个子集。(“Epi”是之上的意思,所以上境图的英文 epigraph 是“在函数图像之上”的意思。)[图 5](#图5)说明了上境图的定义。 + + + +![图 5. 函数 $f$ 的上境图,见阴影部分。深颜色的下边界是函数 $f$ 的图像。](../images/post/2024-06-14-josh-cvx-2-1/2024-06-14-josh-cvx-2-1-050-EpigraphOfF.png){width=400px} + +  凸集和凸函数的联系可以通过上境图来建立:一个函数是凸函数,当且仅当其上境图是凸集。一个函数是凹函数,当且仅当其**亚图**(*hypograph*) + +$$ +\hypo f=\{(x,t)\mid t\leqslant f(x)\}, +$$ + +是凸集。 + +> **举例** **矩阵分式函数**。矩阵分式函数 $f:\mathbf{R}^n\times\mathbf{S}^n\to\mathbf{R}$ +> +> $$ +> f(x,Y)=x^\TT Y^{-1}x +> $$ +> +> 在定义域 $\dom f=\mathbf{R}^n\times\mathbf{S}_{++}^n$ 上是凸的。(这实质上是定义域为 $\dom f=\mathbf{R}\times\mathbf{R}_{++}$ 的二次-线性分式函数 $f(x,y)=x^2/y$ 的一个扩展。) +> +> 一个简单的方式来验证矩阵分式函数 $f$ 的凸性是通过其上境图 +> +> $$\begin{aligned} +> \epi f &= \left\{(x,Y,t)\mid Y\succ0,\ x^\TT Y^{-1}x\leqslant t\right\} +> \\ +> &=\left\{(x,Y,t)\:\middle|\left[\begin{array}{cc} +> Y&x +> \\ +> x^\TT&t +> \end{array}\right]\succeq0,\:Y\succ0\right\} +> \end{aligned}$$ +> +> 并应用 Schur 补条件判断分块矩阵的半正定性。最后一个条件是关于 $(x,Y,t)$ 的线性矩阵不等式,因此 $\epi f$ 是凸集。 +> +> 对于 $n=1$ 的特殊情况,矩阵分式函数简化为二次-线性分式函数 $x^2/y$,相应的线性矩阵不等式表示为 +> $$ +> \left[\begin{array}{cc}y&x\\x&t\end{array}\right]\succeq0,\quad y>0 +> $$ +> +> (函数图像如[图 3](#图3) 所示)。 + +  关于凸函数的很多结果可以从几何的角度利用上境图并结合凸集的一些结论来证明(或理解),作为一个例子,考虑凸函数的一阶条件 + +$$ +f(y)\geqslant f(x)+\nabla f(x)^\TT (y-x) +$$ + +其中函数 $f$ 是凸的,$x,y\in\dom f$。我们可以利用 $\epi f$ 从几何角度理解上述基本不等式。如果 $(y,t)\in\mathbf{epi}f$,有 + +$$ +t\geqslant f(y)\geqslant f(x)+\nabla f(x)^\TT (y-x) +$$ + +上式可以描述为 + +$$ +(y,t)\in\epi f\implies\left[\begin{array}{c}\nabla f(x)\\-1\end{array}\right]^\TT \left(\left[\begin{array}{c}y\\t\end{array}\right]-\left[\begin{array}{c}x\\f(x)\end{array}\right]\right)\leqslant0 +$$ + +这意味着法向量为 $(\nabla f(x),-1)$ 的超平面在边界点 $(x,f(x))$ 支撑着 $\epi f$;如[图 6](#图6) 所示。 + + + +![图 6. 对于可微凸函数 $f$,向量 $(\nabla f(x),-1)$ 定义了函数 $f$ 在点 $x$ 处的上境图的一个支撑超平面。](../images/post/2024-06-14-josh-cvx-2-1/2024-06-14-josh-cvx-2-1-060-EpigraphAndSupportingHyperplane.png){width=400px} + +# 8. Jensen 不等式及其扩展 + +  基本不等式 + +$$ +f(\theta x+(1-\theta)y)\leqslant\theta f(x)+(1-\theta)f(y) +$$ + +有时也称作 **Jensen 不等式**(*Jensen’s inequality*)。此不等式可以很方便地扩展至更多点的凸组合:如果函数 $f$ 是凸函数,$x_1,\cdots,x_k\in\dom f$,$\theta_1,\cdots,\theta_k\geqslant0$ 且 $\theta_1+\cdots+\theta_k=1$,则下式成立 + +$$ +f(\theta_1x_1+\cdots+\theta_kx_k)\leqslant\theta_1f(x_1)+\cdots+\theta_kf(x_k) +$$ + +考虑凸集时,此不等式可以扩展至无穷项和、积分以及期望。例如,如果在 $S\subseteq\dom f$ 上 $p(x)\geqslant0$ 且 $\displaystyle\int_Sp(x) \dd x = 1$,则当相应的积分存在时,下式成立 + +$$ +f\left(\int_Sp(x)x\dd x\right)\leqslant\int_Sf(x)p(x)\dd x +$$ + +扩展到更一般的情况,我们可以采用其支撑属于 $\dom f$ 的任意概率测度。如果 $x$ 是随机变量,事件 $x\in\dom f$ 发生的概率为 1,函数 $f$ 是凸函数,当相应的期望存在时,我们有 + +$$\begin{equation}\label{GeneralJensenInequality} + f(\mathbf{E}x)\leqslant\mathbf{E}f(x) +\end{equation}$$ + +设随机变量 $x$ 的可能取值为 $\{ x_1, x_2\}$ 相应地取值概率为 $\prob ( x= x_1) = \theta$,$\prob( x=x_2)=1-\theta$,则由一般形式 $\eqref{GeneralJensenInequality}$ 可以得到基本不等式 $\eqref{DefinitionOfConvexFunction}$。所以不等式 $eqref{GeneralJensenInequality}$ 可以刻画凸性:如果函数 $f$ 不是凸函数,那么存在随机变量 $x$,$x\in\dom f$ 以概率 $1$ 发生,使得 $f(\mathbf{E}x)>\mathbf{E}f(x)$。 + +  上述所有不等式均被称为 **Jensen 不等式**(*Jensen’s inequality*),而实际上最初由 Jensen 提出的不等式相当简单 + +$$ +f\left(\frac{x+y}2\right)\leqslant\frac{f(x)+f(y)}2 +$$ + +> **注释** 我们可以这样理解式 $\eqref{GeneralJensenInequality}$。假设 $x\in\dom f\subseteq\mathbf{R}^n$,$z$ 是 $\mathbf{R}^n$ 中的随机变量,其均值为零,则有 +> +> $$ +> \mathbf{E}f(x+z)\geqslant f(x) +> $$ +> +> 因此,随机化或者扰动(即在自变量上增加一个零均值的随机变量)从平均效果上不会减小凸函数的值。 + +# 9. 不等式 + +  很多著名的不等式都可以通过将 Jensen 不等式应用于合适的凸函数得到。(事实上,凸性和 Jensen 不等式可以构成不等式理论的基础。) + +> **举例** 考虑算术-几何平均不等式 +> +> $$\begin{equation}\label{ArithmeticGeometricMeanInequality} +> \sqrt{a b} \leqslant( a+b ) / 2 +> \end{equation}$$ +> +> 其中 $a, b \geqslant0$。我们可以利用凸性和 Jensen 不等式得到此不等式。函数 $-\log x$ 是凸函数:利用 Jensen 不等式,令 $\theta=1 / 2$ ,可得 +> +> $$ +> -\log \left( \frac{a+b} {2} \right) \leqslant\frac{-\log a-\log b} {2} +> $$ +> +> 等式两边取指数即可得到式 $\eqref{ArithmeticGeometricMeanInequality}$。 + +> **举例** 证明 Hölder 不等式:对 $p > 1$,$1 / p+1 / q=1$,以及 $x,y \in\mathbf{R}^{n}$ 有 +> +> $$ +> \sum_{i=1}^{n} x_{i} y_{i} \leqslant\left( \sum_{i=1}^{n} | x_{i} |^{p} \right)^{1 / p} \left( \sum_{i=1}^{n} | y_{i} |^{q} \right)^{1 / q} +> $$ +> +> 由 $-\log x$ 的凸性以及 Jensen 不等式,可以得到更为一般的算术-几何平均不等式 +> +> $$ +> a^{\theta} b^{1-\theta} \leqslant\theta a+( 1-\theta) b, +> $$ +> +> 其中 $a,b \geqslant0$,$0 \leqslant\theta\leqslant1$。令 +> +> $$ +> a=\frac{| x_{i} |^{p}} {\displaystyle\sum_{j=1}^{n} | x_{j} |^{p}}, \qquad b=\frac{| y_{i} |^{q}} {\displaystyle\sum_{j=1}^{n} | y_{j} |^{q}}, \qquad\theta=1 / p, +> $$ +> +> 可以得到如下不等式 +> +> $$ +> \left( \frac{| x_{i} |^{p}} {\displaystyle\sum_{j=1}^{n} | x_{j} |^{p}} \right)^{1 / p} \left( \frac{| y_{i} |^{q}} {\displaystyle\sum_{j=1}^{n} | y_{j} |^{q}} \right)^{1 / q} \leqslant\frac{| x_{i} |^{p}} {p \displaystyle\sum_{j=1}^{n} | x_{j} |^{p}}+\frac{| y_{i} |^{q}} {q \displaystyle\sum_{j=1}^{n} | y_{j} |^{q}}. +> $$ +> +> 对 $i$ 进行求和可以得到 Hölder 不等式。 + # 参考文献 1. Stephen P. Boyd and Lieven Vandenberghe, *Convex optimization*. Cambridge, UK: Cambridge University Press, 2004. diff --git a/source/images/post/2024-06-14-josh-cvx-2-1/2024-06-14-josh-cvx-2-1-050-EpigraphOfF.png b/source/images/post/2024-06-14-josh-cvx-2-1/2024-06-14-josh-cvx-2-1-050-EpigraphOfF.png new file mode 100644 index 0000000000000000000000000000000000000000..583808ff47674d1a4f6f07b5f457e5f3c6c06c1a GIT binary patch literal 42839 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 L#2;tyX?pw*