凸优化笔记 4:凸函数 Convex Function

1. 凸函数

1.1 凸函数定义

凸函数(convex function)的定义: \[ f(\theta x+(1-\theta)y)\le\theta f(x)+(1-\theta)f(y),\quad \forall x,y\in\text{dom}f,\theta\in[0,1] \] 函数 \(f\)扩展函数(extended-value extension) \(\tilde{f}\) 定义为 \[ \tilde{f}(x)=\begin{cases}f(x),&x\in\text{dom}f\\\infty,&x\notin\text{dom}f\end{cases} \] 相当于对原来函数 \(f\) 的定义域进行了扩展。

1.2 常见凸函数

1.2.1 \(R\)

凸函数(convex)

  • 仿射函数 \(ax+b\),for any \(a,b\in R\)
  • 指数函数 \(e^{ax}\),for any \(a\in R\)
  • 幂函数 \(x^\alpha,x\in R_{++}\),for \(\alpha\ge1\) or \(\alpha\le0\)
  • 绝对值幂函数 \(\vert x\vert^p,x\in R\),for \(p\ge 1\)
  • 负熵 \(x\log x,x\in R_{++}\)

凹函数(concave)

  • 仿射函数 \(ax+b\),for any \(a,b\in R\)
  • 幂函数 \(x^\alpha,x\in R_{++}\),for \(0\le\alpha\le1\)
  • 对数函数 \(\log x,x\in R_{++}\)

1.2.2 \(R^n\)

  • 仿射函数 \(a^Tx+b\)
  • 范数 \(\Vert x\Vert_p,p\ge 1\)

1.2.3 \(R^{m\times n}\)

  • 仿射函数 \(f(X)=\text{tr}(A^TX)+b\)
  • 谱范数 \(f(X)=\Vert X\Vert_2=\sigma_{\max}(X)=(\lambda_\max(X^TX))^{1/2}\)

2. 凸函数判定

2.1 “降维打击”

“降维打击”是指对于函数 \(f:R^n\to R\) 限制在某一个方向上观察,若对于任意一个方向上都是凸函数,则 \(f\) 就是凸函数。准确的定义如下。

\(f:R^n\to R\),有映射 \(g:R\to R\) \[ g(t)=f(x+tv),\quad \text{dom}\ g=\{t|x+tv\in\text{dom}\ f\} \]\(f\) 为凸函数当且仅当 \(g(t)\) 对任意 \(x\in\text{dom}f,v\in R^n\) 都是凸函数。

:函数 \(f:S^n\to R\),有 \(f(X)=\log\det X,\text{dom}f=S^n_{++}\) \[ \begin{align}g(t)=\log\det(X+tV)&=\log\det X + \log\det(I+tX^{-1/2}VX^{-1/2})\\&=\log\det X + \sum_{i=1}^n \log(1+t\lambda_i)\end{align} \] 由于 \(g\) 关于 \(t\) 是凹函数,因此 \(f\) 是凹函数。

2.2 一阶条件

函数 \(f\) 为凸函数当且仅当 \[ f(y)\ge f(x)+\nabla f^T(x)(y-x) \quad \forall x,y\in\text{dom}f \] 证明:略。用定义即可。

2.3 二阶条件

函数 \(f\) 为凸函数当且仅当海森矩阵(Hessian matrix)(若二阶可微) \[ \nabla^2 f(x)\succeq0 \quad \forall x\in\text{dom}f \]

可用海森矩阵验证为凸函数的例子

  • 二次函数 \(f(x)=(1/2)x^TPx+q^Tx+r\) (with \(P\in S^n\))
  • 最小二乘目标函数 \(f(x)=\Vert Ax-b\Vert_2^2\)
  • 二次函数 \(f(x,y)=x^2/y\)
  • log-sum-exp \(f(x)=\log\sum_k\exp x_k\)
  • 几何均值 \(f(x)=(\Pi_k x_k)^{1/n}\) on \(R^n_{++}\)

3. Sublevel set & Epigraph

函数 \(f:R^n\to R\)\(\alpha\) 下水平集(\(\alpha\)-sublevel set) 的定义为 \[ C_\alpha=\{x\in\text{dom}f|f(x)\le\alpha\} \] 凸函数的下水平集也是凸集,但是反之不一定成立

针对函数 \(f:R^n\to R\) 定义的 epigraph\[ \text{epi}f=\{(x,t)\in R^{n+1}|x\in\text{dom}f,f(x)\le t\} \]

函数 \(f\) 为凸函数当且仅当其 epigraph 为凸集。

epigraph

Remarks:对于 epigraph 内的点,有 \[ \begin{align} t\ge f(y)\ge f(x)+\nabla f^T(x)(y-x) \\ \iff \left[\begin{array}{cc}\nabla f^T(x)\\-1\end{array}\right] \left(\left[\begin{array}{cc}y\\t\end{array}\right] - \left[\begin{array}{cc}x\\f(x)\end{array}\right]\right)\le0 \end{align} \] 上面的式子实际上就是找到了一个在 \((x,f(x))\) 处的支撑超平面法向量即为 \([\begin{array}{cc}\nabla f^T(x) &-1\end{array}]^T\)

4. Jensen's Inequality

对于凸函数 \(f\),有 \[ f(\mathbb{E}z)=\mathbb{E}f(z) \] 证明:离散情况易证,连续情况可以用一阶条件证明。

Lemma\(f:R^n\to R\) 为凸函数,那么 \(f\) 在任一内点处都连续(连续但不一定可导)。

Remarks:往往绝大部分点都是可微的,但是我们经常会遇到那些不可微的点,比如 ReLU 函数。


凸优化笔记 4:凸函数 Convex Function
https://glooow1024.github.io/2020/02/29/optimization/ch4-cvx-function/
作者
Glooow
发布于
2020年2月29日
许可协议