凸関数とヘッセ行列




凸関数の定義

$I=(a,b)$, $-\infty \leq a \le b \leq \infty$を$\mathbb{R}$の開区間とし、$f : I \rightarrow \mathbb{R}$の関数が$0 \le \gamma \le 1$,$a \le x \le y \le b$について
$f(\gamma x + (1-\gamma)y) \leq \gamma f(x) + (1-\gamma)f(y)$ならば$f$は区間Iで凸関数であるという。等号なしの場合、狭義の凸関数という。

凸関数と微分可能性

性質

1. fが微分可能とすると、
fが凸関数$\Leftrightarrow f'(x) \leq f'(y), \ \ a \le x \le y \le b$

2. fが二階微分可能とすると、
fが凸関数$\Leftrightarrow f''(x) \geq 0, \ \ a \le x \le b$
f:id:karate_odori:20191023204857p:plain

凸関数と関数の下界

fが区間Iで凸ならば、Iの内点$x_0$について
$f(x) \geq f(x_0) + m(x-x_0)$なる実数mが存在する。具体的には、$f(x) \geq f(x_0)+\nabla f(x)(x-x_0)$
また、$f : E \supset \mathbb{R}^d \rightarrow \mathbb{R}$を$d$変数実関数とし、勾配ベクトルを$\nabla f = \left( \frac{\partial f}{\partial x_1},\frac{\partial f}{\partial x_2},\cdots,\frac{\partial f}{\partial x_d} \right)^t$とするとき、$H=\left[\frac{\partial^2 f}{\partial x_i \partial x_j}\right]$をヘッセ行列(ヘシアン)といい、$f$が区間$I$で凸ならば、任意の$x_0$に関して、ヘッセ行列$H_{x=x_0}$が半正定値(狭義の凸では正定値)である。
(行列の定値性およびその判定方法についてはこちら(https://karate-odori.hatenablog.com/entry/2019/10/27/230226))
f:id:karate_odori:20191023211334p:plain

補足

特に、fが連続二階微分可能で、$x_0$で$\nabla f=0$とするときは、$H_{x=x_0}$が負定値なら$f$は$x_0$で最大値$f(x_0)$をとり、$H_{x=x_0}$が正定値なら$f$は$x_0$で最小値$f(x_0)$をとることが分かる。

部分的な凸性とその条件

3変数関数$f(x,y,z)$に対して、$x$を定数とみなし、$(y,z)$の関数を$g(y,z)=f(x,y,z)$とおく。このとき全てのxに対して$g(y,z)$が凸関数であるとき、$f(x,y,z)$は第二、第三変数に関して凸である。この必要十分条件は任意の$x,y,z$に関して

\begin{bmatrix}
f_{yy}(x,y,z) & f_{yz}(x,y,z) \\
f_{zy}(x,y,z) & f_{zz}(x,y,z) \\
\end{bmatrix}
が半正定値(狭義なら正定値)であることである。