凸优化笔记(二):凸函数

凸函数的四种判别

第一定义

\(f\)是凸函数,当且仅当其定义域为凸集,且

\[\forall x, y\in S, \forall \theta \in [ 0, 1],f( \theta x+ ( 1- \theta ) y) \leq \theta f( x) + ( 1- \theta ) f( y) \]

第二定义

\(dom f\) 为凸,且 \(\forall x \in dom f, \forall v, g(t) = f(x+tv)\) 为凸函数

几何意义是用一个超平面去截凸函数,截面一定也是凸函数

一阶条件

\(f: R^{n}\to R\)可微,则\(f\)为凸函数等价于以下两点同时成立

  • \(dom f\)为凸集
  • \(f(y)\geq f(x)+\nabla f^{T}(x)(y-x), \forall x,y\in dom f\)

证明从略,复习点击此处

二阶条件

\(f\)二阶可微,则\(f\)为凸函数等价于

\[\nabla^{2}f(x)\succeq0, \forall x\in dom f \]

凸函数的扩展

\(f:\) \(R^{n}\to R\)为凸函数,dom \(f:\) \(C\subseteq R^{n}\)

\(\tilde{f} = \begin{cases} f( x) \:& x\in dom\:f\\ \infty \:& x\notin dom\:f& \end{cases}\), \(\tilde{f} :\) \(R^n\to R\), dom \(\tilde{f} :\) \(R\),即将 f 的定义域由 C 扩展到 R,此函数依然为凸函数

常见凸函数与凹函数

仿射函数

\(f(x)=Ax+b\),显然\(\nabla^2f(x)=0\),因此仿射函数非凸非凹

指数函数

\(f(x)=e^{ax}, x\in R, \nabla^{2}f(x)=a^{2}e^{ax}\geq0\),凸函数

幂函数

\(f(x)=x^{a}, x\in R_{++}\)

\[\nabla^2f(x)=a(a-1)x^{a-2}=\begin{cases}\ge0&a\ge1, a\le0&\text{凸}\\\\\le0&a\in[0,1]&\text{凹}\end{cases} \]

负熵

\(f(x)=xlogx, x\in R_{++}, f''(x)=\frac{1}{x}>0\),凸函数

范数

函数\(P(x)\)要想能称为范数,等价于满足以下三个条件

  • \(P(ax)=|a|P(x)\)
  • \(P(x+y)\leq P(x)+P(y)\)
  • \(P(x)=0\Leftrightarrow x=0\)
    由第二条性质可以容易的证明范数是凸函数

极大值函数

\(f(x)=\max\{x_1,\ldots,x_n\}, x\in R^n\)

证明:

\[\begin{aligned}&\forall x,y\in R^n, \forall\theta\in[0,1]\\&f(\theta x+(1-\theta)y)=max\{\theta x_i+(1-\theta)y_i, i=1,\ldots,n\}\leq\theta\max\{x_i\}+(1-\theta)\max\{y_i\}\end{aligned} \]

log-aum-up函数

\(f(x)=\log(e^{x_1}+\cdots+e^{x_n}),x\in R^n\)是凸的
由于极大函数往往不可导,log-sum-up函数其实就是对极大函数的解析逼近,

\[\max\{x_1,\cdots,x_n\}\leq f(x)\leq\max\{x_1+\cdots+x_n\}+\log n \]

讨论该函数的海森矩阵

\[H_{ij}=\begin{cases}\frac{\partial^2f}{\partial x_i\partial x_j}=\frac{-e^{x_i}e^{x_j}}{(e^{x_1}+\cdots+e^{x_n})^2}&\quad i\neq j\\[2ex]\frac{\partial^2f}{\partial x_i\partial x_i}=\frac{-e^{x_i}e^{x_i}+e^{x_i}(e^{x_1}+\cdots+e^{x_n})}{(e^{x_1}+\cdots+e^{x_n})^2}&\quad i=j\end{cases} \]

\[\left.H=\frac{1}{(e^{x_1}+\cdots+e^{x_n})^2}\left\{\left[\begin{array}{ccc}e^{x_1}(e^{x_1}+\cdots+e^{x_n})&\cdots&0\\\vdots&\ddots&\vdots\\0&\cdots&e^{x_n}(e^{x_1}+\cdots+e^{x_n})\end{array}\right.\right]-\left[\begin{array}{c}e^{x_1}\\\vdots\\e^{x_n}\end{array}\right]\cdot\left[\begin{array}{ccc}e^{x_1}&\cdots&e^{x_n}\end{array}\right]\right\} \]

\(z=[e^{x_{1}},\ldots,e^{x_{n}}]\),则上式可以写为

\[H=\frac{1}{(1\cdot z)^{2}}\left((1^{T}\cdot z) diag\{z\}-z\cdot z^{T}\right) \]

欲证明log-sum-up为凸,只需利用二阶条件证明 Hessian 矩阵的半正定性 计算\(v^THv\)

\[\begin{aligned}&=(1^{T}\cdot z) v^{T}diag\{z\}v-v^{T}z\cdot z^{T}v\\&=(\sum_{i}z_{i})(\sum_{i}v_{i}^{2} z_{i})-(\sum_{i}v_{i} z_{i})^{2}\end{aligned} \]

\[\begin{aligned}&\text{令 }a_i=v_i\sqrt{z_i}, b_i=\sqrt{z_i}\\&=(b^Tb)(a^Ta)-(a^Tb)^2\geq0\quad[Cauchy-Schwarz\text{不等式,得证}]\end{aligned} \]

行列式的对数

凹函数
\(f(x)=log det(x), dom f = S_{++}^{n}\)

我们常使用定义二来证明高维的凸函数情况

\[\forall z\in S_{++}^{n}, \forall t\in R, \forall v\in R^{n\times n}, z+tv\in S_{++}^{n} = dom f \]

\[\begin{aligned} g(t)=f(z+tv)& =log det(z+tv) \\ &=log det\{z^{\frac12}(I+tz^{-\frac12}vz^{-\frac12})z^{\frac12}\} \\ &=log det\{z\}+log det(I+tz^{-\frac12}vz^{-\frac12}) \end{aligned}\]

对后半部分做对称分解,有\(log det(QQ^{T}+tQ\Lambda Q^{T})=log det(I+t\Lambda)\)

\[=log det\{z\}+\sum^nlog(1+t\lambda_i)\quad[\lambda_i\text{是}tz^{-\frac12}vz^{-\frac12}\text{的第 i 个特征根}] \]

\[\begin{aligned}g'(t)=\sum_i\frac{\lambda_i}{1+t\lambda_i},\quad g''(x)=\sum_i\frac{-\lambda_i}{(1+t\lambda_i)^2}\leq0\end{aligned} \]

保凸映射

非负加权和

  • \(f_1,\ldots,f_m\)都是凸函数,则\(f=\sum_iw_if_i\)为凸,其中\(w_i\geq0,\forall i\)
    加权和函数定义域dom \(f=\cap_idom\) \(f_i\)

  • 求和推广到积分也成立\(g(x)=\int w(y)f(x,y)dy,w(y)\geq0\)

仿射映射和凸映射的复合函数

\(f(x)\)为凸函数

  • \(g(x)=f(Ax+b)\)是凸函数
  • \(g(x)=A^T\begin{bmatrix}f_1(x)\\\vdots\\f_n(x)\end{bmatrix}+b\)是凸的,其中\(A\in R^{n},b\in R.\)

凸函数的极大值函数

\(f_1,f_2\)为凸函数,则极大值函数\(f(x)=\max_x\{f_1(x),f_2(x)\}\)也为凸函数,其定义域为\(domf=domf_1\cap domf_2\text{。}\)

\[\begin{aligned} f(\theta x+(1-\theta)y)=& \begin{aligned}\max\{f_{1}(\theta x+(1-\theta)y),f_{2}(\theta x+(1-\theta)y)\}\end{aligned} \\ &\leq\max\{\theta f_1(x)+(1-\theta)f_1(y),\theta f_2(x)+(1-\theta)f_2(y)\} \\ &\leq\max\{\theta f_1(x),\theta f_2(x)\}+(1-\theta)\max\{(1-\theta)f_1(y),(1-\theta)f_2(y)\} \\ &=\theta f(x)+(1-\theta)f(y) \end{aligned}\]

自然地,推广到无穷个凸函数的极大值函数依然成立,因为无穷个凸函数的比较总可以看为多次进行函数之间的两两比较。

即:如果对于任意的\(y\in A\),函数\(f(x,y)\)都是关于\(x\)的凸函数,则函数\(g(x)=\sup_{y\in\mathcal{A}}f(x,y)\)关于\(x\)也是凸的
其中\(sup\)为逐点取最大操作,称为上确界。

Q:求实对称矩阵的最大特征值,\(f(x)=\lambda_{max}(x), dom f=S^{m}\)
A:

\[\begin{aligned}&Xy=\lambda y\Rightarrow y^TXy=\lambda y^Ty=\lambda\|y\|_2^2\Rightarrow\lambda=\frac{y^TXy}{\|y\|_2^2}\\&\text{令 }\|y\|_2^2=1\text{,则 }\lambda=y^TXy\\&f(x)=\lambda_{max}(x)=\sup\{y^TXy\mid\|y\|_2^2=1\}\\&\text{注意到 }y^TXy\text{ 是关于 x 的线性组合(将 }y^2\text{ 看作系数),同时 }\sup\text{保凸,所以该函数为凸函数}\end{aligned} \]

推导出:逐点上确界也是保凸映射1

复合函数

\(f=h(g(x))\)
当函数都为一元函数时,\(f^{\prime\prime}=h^{\prime\prime}g^{\prime2}+h^{\prime}g^{\prime\prime}\),分析这个式子与0的大小,可得

  • \(h\)为不降的凸函数,\(g\)为凸函数,则\(f\)为凸函数
  • \(h\)为不增的凸函数,\(g\)为凹函数,则\(f\)为凸函数
  • \(h\)为不降的凹函数,\(g\)为凹函数,则\(f\)为凹函数
  • \(h\)为不增的凹函数,\(g\)为凸函数,则\(f\)为凹函数

多元函数时,情况类似,需要对函数\(f\)的定义域做出扩展,例如

  • \(g\)为凸,则\(\exp\{g(x)\}\)为凸,因为满足上述1式 ·
  • \(g\)为凹,则\(\log\{g(x\}\)为凹,因为满足上述3式
  • \(g\)为凹,\(g(x)>0\),则\(1/g(x)\)为凸,因为满足上述2式
  • \(g\)为凸,\(g(x)\geq0\),\(p\geq1\),则\(g(x)^p\)为凸,因为满足上述1式

函数的透视

\[\begin{aligned}f: R^{n}&\to R, g: R^{n}\times R_{++}\to R\\&g(x,t)=tf(\frac{x}{t})\quad dom g=\{(x,t)\mid t\in R_{++},\frac{x}{t}\in dom f\}\end{aligned} \]

函数的透视有一个很重要的性质,若f为凸函数,则g也为凸函数,且对(x,t)是联合凸的,若f
为凹函数,则g对(x,t) 联合凹

由此导出的一些常用函数的凸性:
加权负对数是凸的

\[u,v\in R_{++}^n,g(u,v)=\sum_{i=1}^nu_i\log\frac{u_i}{v_i} \]

KL-Divergence是凸的(凸+线性=凸)

\[D_{KL}(u,v)\triangleq\sum_{i=1}^{n}u_{i}log\frac{u_{i} }{v_{i} }-u_{i}+v_{i} \]

函数的共轭

函数\(f:R^n\to R\)的共轭\(f^*:R^n\to R\)表示为

\[f^*(y)=\sup_{x\in domf}\{y^Tx-f(x)\} \]

性质

  • 无论\(f\)是否凸,\(f^*(y)\)总是凸的(相当于无数条线取max,因此恒为凸)
  • \(f(x)\)如果可微,则\(f^*(y)\)对应的\(x\)就是\(f^{'}(x)=y\)的点(\([f^{*}(y)]_{x}^{\prime}=y-f^{\prime}(x)=0\))

对于函数而言常常说共轭,对于问题而言常常说对偶

举几个求函数共轭的例子

\(f(x)=ax+b \ ,dom \ f=R\)的共轭函数

\[f^*(y)=\sup\limits_{x\in dom}\left(yx-(ax+b)\right)=\sup\limits_{x\in dom}\left((y-a)x+b\right)=\begin{cases}-b&\quad y=a\\[2ex]+\infty&\quad y\neq a\end{cases} \]

\(f(x)=-logx, dom f=R_{++}\)的共轭函数

\[\begin{aligned}\text{利用 }[f^*(x)]_x'&=y+\frac1x=0\text{,将 }x=-\frac1y\text{ 回代有 }-1-log(-y)\\f^*(y)&=\sup_{x>0} (yx+logx)=\begin{cases}-1-log(-y)&\quad y<0\\\\+\infty&\quad y\ge0\end{cases}\end{aligned} \]

求二次函数\(f(x)=\frac{1}{2}x^{T}Q x, Q\in S_{++}^{n}, dom f=R^{n}\)的共轭函数

\[f^*(y)=\sup (y^Tx-\frac{1}{2}x^TQx), [f^*(y)]_x^{\prime}=y-Qx=0 \]

回带消去\(x\)\(y^Tx-\frac{1}{2}x^TQx\)化为

\[\begin{aligned}y^TQ^{-1}y-\frac{1}{2}y^TQ^{-1}Q^TQ^{-1}y=\frac{1}{2}y^TQ^{-1}y\end{aligned} \]

对于数而言,共轭的共轭为其自身,而这对函数并不成立,因为函数的共轭一定是凸函数,凹函数
的共轭的共轭一定不为自身
只有在f 为凸函数,并且为闭函数时,f的共轭的共轭才为自身

拟凸函数

\(\alpha\)-sublevel-set (下水平集):任意函数 \(f:R^n\to R\)\(\alpha\)-sublevel-set 为:

\[C_\alpha=\{x\in domf|f(x)\leq\alpha\}. \]

定义一

对于任意的\(\alpha\),其\(\alpha\)-sublevel set均为凸集的函数为拟凸函数,又叫做单模态函数。

定义二

\[\forall x,y\in dom f, \theta\in[0,1], \max\{f(x),f(y)\}\geq f(\theta x+(1-\theta)y) \]

例子:向量的长度,向量\(x \in R^n\),即

\[f(x)=\left\{\begin{array}{ll}\max\{i,x_i\neq0\},&x\neq0\\0,&x=0\end{array}\right. \]

\[S_\alpha=\{f(x)\leq\alpha\}\Rightarrow \forall i=\lfloor i\rfloor+1\ldots n, x_i=0 \]

相当于取子空间,\(S_{\alpha}\)代表的是一些轴上取零,其余轴上的值任意,为凸集,因此\(f(x)\)为拟凸函数

例子:线性分数函数 \(\begin{aligned}f(x)=\frac{a^Tx+b}{c^Tx+d}, dom f=\{x\mid c^Tx+d>0\}\end{aligned}\)

\[S_{\alpha}=\{x\mid c^{T}x+d>0, \frac{a^{T}x+b}{c^{T}x+d}<\alpha\}=\{x\mid c^{T}x+d>0, ax+b\leq\alpha(c^{T}x+d)\} \]

该集合表示一个多面体,为凸集,因此f(x)为拟凸函数

优化性质分析

一般来说凸函数能用的算法拟凸函数也能用,拟凸函数是相对比较好做的非凸优化问题,不过与凸优化问题不同的是,他往往很难找到多项式时间内可以求解的算法

一阶条件

\[f\text{ 拟凸}\Leftrightarrow domf\text{ 凸,且若}f(y)\leq f(x)\text{,则 }\nabla^Tf(x)(y-x)\leq0. \]

以上公式文字表述为:拟凸函数只有一个极小值点。

拟凸函数梯度为0的点不一定是极小值点

二阶条件

\[dom f\text{ 为凸,且 }y^T\nabla f(x)\geq0\Rightarrow y^T\nabla^2f(x)y\geq0 \]

  • log 凸:\(f(x)>0\),若\(\log f\)为凸函数,则\(f\)为log凸函数
  • log 凹:\(f(x)>0\),若\(\log f\)为凹函数,则\(f\)为log凹函数
  • \(f\)为log凸,则\(f\)为凸。(提示:用复合函数凹凸性可判断)
  • \(f\)为凹,则\(\log f\)为log凹

参考文献/blog

posted @ 2025-05-11 21:43  bradinz  阅读(43)  评论(0)    收藏  举报