807补充(八)(多元函数极值篇)
一. 可微多变量函数 f ( x ) 的极值点 \text { 可微多变量函数 } f(\boldsymbol x) \text { 的极值点 } 可微多变量函数 f(x) 的极值点
考虑以实向量
x
=
[
x
1
,
⋯
,
x
n
]
T
\boldsymbol{x}=\left[x_1, \cdots, x_n\right]^{\mathrm{T}}
x=[x1,⋯,xn]T 作变元的实值函数
f
(
x
)
:
R
n
→
R
f(\boldsymbol{x}): \mathbb{R}^n \rightarrow \mathbb{R}
f(x):Rn→R 的无约束极小化问题
min
x
∈
S
f
(
x
)
(1.1)
\min _{\boldsymbol{x} \in S} f(\boldsymbol{x})\tag{1.1}
x∈Sminf(x)(1.1)
式中 S ∈ R n S \in \mathbb{R}^n S∈Rn 是 n n n 维向量空间 R n \mathbb{R}^n Rn 的一个子集合.
定义: 给定一个点 x ‾ ∈ R n \overline{\boldsymbol{x}} \in \mathbb{R}^n x∈Rn, 点 x ‾ \overline{\boldsymbol{x}} x 的一 (闭合) 邻域记作 B ( x ‾ ; r ) B(\overline{\boldsymbol{x}} ; r) B(x;r), 是满足 ∥ x − \| \boldsymbol{x}- ∥x− x ‾ ∥ 2 ⩽ r \overline{\boldsymbol{x}} \|_2 \leqslant r x∥2⩽r (其中 r > 0 r>0 r>0 ) 的所有点 x \boldsymbol{x} x 的集合, 即
B ( x ‾ ; r ) = { x ∣ ∥ x − x ‾ ∥ 2 ⩽ r } B(\overline{\boldsymbol{x}} ; r)=\left\{\boldsymbol{x} \mid\|\boldsymbol{x}-\overline{\boldsymbol{x}}\|_2 \leqslant r\right\} B(x;r)={x∣∥x−x∥2⩽r}
令
c
=
[
c
1
,
⋯
,
c
n
]
T
\boldsymbol{c}=\left[c_1, \cdots, c_n\right]^{\mathrm{T}}
c=[c1,⋯,cn]T 是向量空间
R
n
\mathbb{R}^n
Rn 内的一个点, 且
r
r
r 为某个正数。向量空间
R
n
\mathbb{R}^n
Rn 内与点
c
\boldsymbol{c}
c 的距离
∥
x
−
c
∥
2
\|\boldsymbol{x}-\boldsymbol{c}\|_2
∥x−c∥2 小于
r
r
r 的所有向量
x
\boldsymbol{x}
x 的集合称作以
c
\boldsymbol{c}
c 为中心,
r
r
r 为半径的
n
n
n 维球体
(
n
\left(n\right.
(n-ball), 记为
B
(
c
;
r
)
B(c ; r)
B(c;r) 或者
B
(
c
)
B(c)
B(c), 即有
B
(
c
;
r
)
=
{
x
∣
x
∈
R
n
,
∥
x
−
c
∥
2
<
r
}
B(\boldsymbol{c} ; r)=\left\{\boldsymbol{x} \mid \boldsymbol{x} \in \mathbb{R}^n,\|\boldsymbol{x}-\boldsymbol{c}\|_2<r\right\}
B(c;r)={x∣x∈Rn,∥x−c∥2<r}
n
n
n 维球体
B
(
c
;
r
)
B(\boldsymbol{c} ; r)
B(c;r) 也称向量
c
\boldsymbol{c}
c 的邻域。
令
Δ
x
=
x
−
c
\Delta \boldsymbol{x}=\boldsymbol{x}-\boldsymbol{c}
Δx=x−c, 则在半径
r
r
r 足够小的邻域
B
(
c
;
r
)
B(\boldsymbol{c} ; r)
B(c;r) 内, 实变函数
f
(
x
)
f(\boldsymbol{x})
f(x) 在点
c
\boldsymbol{c}
c 的二阶 Taylor 级数逼近为
f
(
c
+
Δ
x
)
=
f
(
c
)
+
(
∂
f
(
c
)
∂
c
)
T
Δ
x
+
1
2
(
Δ
c
)
T
∂
2
f
(
c
)
∂
c
∂
c
T
Δ
x
=
f
(
c
)
+
(
∇
f
(
c
)
)
T
Δ
x
+
1
2
(
Δ
x
)
T
H
(
f
(
c
)
)
Δ
x
=
f
(
c
)
+
(
∇
f
(
c
)
)
T
Δ
x
+
1
2
(
Δ
x
)
T
∇
2
(
f
(
c
)
)
Δ
x
(1.2)
\begin{aligned} f(\boldsymbol{c}+\Delta \boldsymbol{x}) & =f(\boldsymbol{c})+\left(\frac{\partial f(\boldsymbol{c})}{\partial \boldsymbol{c}}\right)^{\mathrm{T}} \Delta \boldsymbol{x}+\frac{1}{2}(\Delta \boldsymbol{c})^{\mathrm{T}} \frac{\partial^2 f(\boldsymbol{c})}{\partial \boldsymbol{c} \partial \boldsymbol{c}^{\mathrm{T}}} \Delta \boldsymbol{x} \\ & =f(\boldsymbol{c})+(\nabla f(\boldsymbol{c}))^{\mathrm{T}} \Delta \boldsymbol{x}+\frac{1}{2}(\Delta \boldsymbol{x})^{\mathrm{T}} \boldsymbol{H}(f(\boldsymbol{c})) \Delta \boldsymbol{x}\\ &=f(\boldsymbol{c})+(\nabla f(\boldsymbol{c}))^{\mathrm{T}} \Delta \boldsymbol{x}+\frac{1}{2}(\Delta \boldsymbol{x})^{\mathrm{T}} \nabla^2(f(\boldsymbol{c})) \Delta \boldsymbol{x} \end{aligned} \tag{1.2}
f(c+Δx)=f(c)+(∂c∂f(c))TΔx+21(Δc)T∂c∂cT∂2f(c)Δx=f(c)+(∇f(c))TΔx+21(Δx)TH(f(c))Δx=f(c)+(∇f(c))TΔx+21(Δx)T∇2(f(c))Δx(1.2)
式中
∇
f
(
c
)
=
∂
f
(
c
)
∂
c
=
∂
f
(
x
)
∂
x
∣
x
=
c
∇
2
f
(
c
)
=
H
(
f
(
c
)
)
=
∂
2
f
(
c
)
∂
c
∂
c
T
=
∂
2
f
(
x
)
∂
x
∂
x
T
∣
x
=
c
\begin{gathered} \nabla f(\boldsymbol{c})=\frac{\partial f(\boldsymbol{c})}{\partial \boldsymbol{c}}=\left.\frac{\partial f(\boldsymbol{x})}{\partial \boldsymbol{x}}\right|_{\boldsymbol{x}=\boldsymbol{c}} \\ \nabla^2 f(\boldsymbol c)= \boldsymbol{H}(f(\boldsymbol{c}))=\frac{\partial^2 f(\boldsymbol{c})}{\partial \boldsymbol{c} \partial \boldsymbol{c}^{\mathrm{T}}}=\left.\frac{\partial^2 f(\boldsymbol{x})}{\partial \boldsymbol{x} \partial \boldsymbol{x}^{\mathrm{T}}}\right|_{\boldsymbol{x}=\boldsymbol{c}} \end{gathered}
∇f(c)=∂c∂f(c)=∂x∂f(x)
x=c∇2f(c)=H(f(c))=∂c∂cT∂2f(c)=∂x∂xT∂2f(x)
x=c
分别是函数
f
(
x
)
f(x)
f(x) 在点
c
\boldsymbol{c}
c 的的梯度向量和 Hessian 矩阵。
将单变量函数的极值点的定义加以推广, 即可得到以实向量为变元的实值函数
f
(
x
)
f(\boldsymbol{x})
f(x)的极小点的定义如下。(极大点类似)
定义 令标量 r > 0 r>0 r>0, 并且 x = c + Δ x \boldsymbol{x}=\boldsymbol{c}+\Delta \boldsymbol{x} x=c+Δx 是向量空间 R n \mathbb{R}^n Rn 的子集合 S S S 的点。若
f ( c ) ⩽ f ( c + Δ x ) ∀ 0 < ∥ Δ x ∥ 2 ⩽ r ; f(c) \leqslant f(c+\Delta x) \quad \forall 0<\|\Delta x\|_2 \leqslant r ; f(c)⩽f(c+Δx)∀0<∥Δx∥2⩽r;则称点 c \boldsymbol{c} c 是函数 f ( x ) f(\boldsymbol{x}) f(x) 的一个局部极小点。若
f ( c ) < f ( c + Δ x ) ∀ 0 < ∥ Δ x ∥ 2 ⩽ r ; f(\boldsymbol{c})<f(\boldsymbol{c}+\Delta \boldsymbol{x}) \quad \forall 0<\|\Delta \boldsymbol{x}\|_2 \leqslant r ; f(c)<f(c+Δx)∀0<∥Δx∥2⩽r;则称点 c \boldsymbol{c} c 是函数 f ( x ) f(\boldsymbol{x}) f(x) 的一个严格局部极小点。若
f ( c ) ⩽ f ( x ) ∀ x ∈ S ; f(\boldsymbol{c}) \leqslant f(\boldsymbol{x}) \quad \forall \boldsymbol{x} \in S ; f(c)⩽f(x)∀x∈S;则称点 c \boldsymbol{c} c 是函数 f ( x ) f(\boldsymbol{x}) f(x) 在定义域 S S S 的一个全局极小点。若
f ( c ) < f ( x ) ∀ x ∈ S , x ≠ c f(c)<f(x) \quad \forall x \in S, x \neq c f(c)<f(x)∀x∈S,x=c则称点 c \boldsymbol{c} c 是函数 f ( x ) f(\boldsymbol{x}) f(x) 在定义域 S S S 的一个严格全局极小点。
由式 (1.2) 易知, 在邻域
B
(
c
;
r
)
B(c ; r)
B(c;r) 的一个足够小的内部区域
∥
Δ
x
∥
2
<
ε
\|\Delta x\|_2<\varepsilon
∥Δx∥2<ε, 二阶项可以忽略的情况下, 函数的一阶 Taylor 级数逼近为
f
(
c
+
Δ
x
)
=
f
(
c
)
+
(
∇
f
(
c
)
)
T
Δ
x
+
o
(
∣
∣
Δ
x
∣
∣
)
f(\boldsymbol c+\Delta \boldsymbol x) = f(\boldsymbol c)+(\nabla f(\boldsymbol c))^{\mathrm{T}} \Delta \boldsymbol{x}+o(||\Delta \boldsymbol x||)
f(c+Δx)=f(c)+(∇f(c))TΔx+o(∣∣Δx∣∣)
显然, 为了保证
f
(
c
)
⩽
f
(
c
+
Δ
x
)
f(\boldsymbol{c}) \leqslant f(\boldsymbol{c}+\Delta \boldsymbol{x})
f(c)⩽f(c+Δx) 对满足
∥
Δ
x
∥
2
<
ε
\|\Delta \boldsymbol{x}\|_2<\varepsilon
∥Δx∥2<ε 的所有
Δ
x
\Delta \boldsymbol{x}
Δx 恒成立, 必须选择
∇
f
(
c
)
=
∂
f
(
x
)
∂
x
∣
x
=
c
=
0
,
∀
0
<
∥
Δ
x
∥
2
<
r
\nabla f(\boldsymbol{c})=\left.\frac{\partial f(\boldsymbol{x})}{\partial \boldsymbol{x}}\right|_{\boldsymbol{x}=\boldsymbol{c}}=\mathbf{0}, \quad \forall 0<\|\Delta \boldsymbol{x}\|_2<r
∇f(c)=∂x∂f(x)
x=c=0,∀0<∥Δx∥2<r
证明. 任取
Δ
x
∈
R
n
\Delta \boldsymbol x \in \mathbb{R}^n
Δx∈Rn, 考虑
f
f
f 在点
x
=
c
\boldsymbol x=\boldsymbol c
x=c 处的泰勒展开
f
(
c
+
Δ
x
)
=
f
(
c
)
+
(
∇
f
(
c
)
)
T
Δ
x
+
o
(
∣
∣
Δ
x
∣
∣
)
,
f(\boldsymbol c+\Delta \boldsymbol x) = f(\boldsymbol c)+(\nabla f(\boldsymbol c))^{\mathrm{T}} \Delta \boldsymbol{x}+o(||\Delta \boldsymbol x||),
f(c+Δx)=f(c)+(∇f(c))TΔx+o(∣∣Δx∣∣),
整理得
f
(
c
+
Δ
x
)
−
f
(
c
)
∣
∣
Δ
x
∣
∣
=
Δ
x
T
∇
f
(
c
)
∣
∣
Δ
x
∣
∣
+
o
(
1
)
.
\frac{f\left(\boldsymbol c+\Delta \boldsymbol x\right)-f\left(\boldsymbol c\right)}{||\Delta \boldsymbol x||}=\frac{\Delta \boldsymbol x^{\mathrm{T}} \nabla f\left(\boldsymbol c\right)}{||\Delta \boldsymbol x||}+o(1) .
∣∣Δx∣∣f(c+Δx)−f(c)=∣∣Δx∣∣ΔxT∇f(c)+o(1).
根据
c
\boldsymbol c
c 的最优性, 在上式中分别对
∣
∣
Δ
x
∣
∣
||\Delta \boldsymbol x||
∣∣Δx∣∣ 取点 0 处的极限可知
lim
∣
∣
Δ
x
∣
∣
→
0
+
f
(
c
+
Δ
x
)
−
f
(
c
)
∣
∣
Δ
x
∣
∣
=
Δ
x
T
∇
f
(
c
)
⩾
0
,
\begin{aligned} & \lim _{||\Delta \boldsymbol x|| \rightarrow 0^{+}} \frac{f\left(\boldsymbol c+\Delta \boldsymbol x\right)-f\left(\boldsymbol c\right)}{||\Delta \boldsymbol x||}=\Delta \boldsymbol x^{\mathrm{T}} \nabla f\left(\boldsymbol c\right)\geqslant 0, \\ \end{aligned}
∣∣Δx∣∣→0+lim∣∣Δx∣∣f(c+Δx)−f(c)=ΔxT∇f(c)⩾0,
即对任意的 Δ x \Delta \boldsymbol x Δx 必有 Δ x T ∇ f ( c ) ⩾ 0 \Delta \boldsymbol x^{\mathrm{T}} \nabla f\left(\boldsymbol c\right)\geqslant0 ΔxT∇f(c)⩾0, 由 Δ x \Delta \boldsymbol x Δx 的任意性知 ∇ f ( c ) = 0 \nabla f\left(\boldsymbol c\right)=0 ∇f(c)=0.
注意, 上面的条件仅仅是必要的. 对于 f ( x ) = x 2 , x ∈ R f(x)=x^2, x \in \mathbb{R} f(x)=x2,x∈R, 我们知道满足 f ′ ( x ) = 0 f^{\prime}(x)=0 f′(x)=0 的点为 x ∗ = 0 x^*=0 x∗=0, 并且其也是全局最优解. 对于 f ( x ) = x 3 , x ∈ R f(x)=x^3, x \in \mathbb{R} f(x)=x3,x∈R,满足 f ′ ( x ) = 0 f^{\prime}(x)=0 f′(x)=0 的点为 x ∗ = 0 x^*=0 x∗=0, 但其不是一个局部最优解. 实际上, 我们称满足 ∇ f ( x ) = 0 \nabla f(x)=0 ∇f(x)=0 的点 x x x 为 f f f 的稳定点 (有时也称为驻点或临界点). 可以看出, 除了一阶必要条件, 还需要对函数加一些额外的限制条件, 才能保证最优解的充分性.
假设 f f f 在点 c \boldsymbol c c 的一个开邻域内是二阶连续可微的, 则以下最优性条件成立:(极大值同理)
二阶必要条件 如果 c \boldsymbol c c 是 f f f 的一个局部极小点, 那么必有
∇ f ( c ) = 0 , ∇ 2 f ( c ) ⪰ 0 ; \nabla f\left(\boldsymbol c\right)=0, \quad \nabla^2 f\left(\boldsymbol c\right) \succeq 0 ; ∇f(c)=0,∇2f(c)⪰0;二阶充分条件 如果在点 c \boldsymbol c c 处有
∇ f ( c ) = 0 , ∇ 2 f ( c ) ≻ 0 \nabla f\left(\boldsymbol c\right)=0, \quad \nabla^2 f\left(\boldsymbol c\right) \succ 0 ∇f(c)=0,∇2f(c)≻0成立, 那么 c \boldsymbol c c 为 f f f 的一个局部极小点.(且为严格极小值)
二阶充分条件 如果在点 c \boldsymbol c c 处有
∇ f ( c ) = 0 , ∀ x ∈ dom f ∇ 2 f ( x ) ⪰ 0 \nabla f\left(\boldsymbol c\right)=0,\forall \boldsymbol x \in \text{dom}f \quad \nabla^2 f\left(\boldsymbol x\right) \succeq 0 ∇f(c)=0,∀x∈domf∇2f(x)⪰0
成立, 那么 c \boldsymbol c c 为 f f f 的一个局部极小点.
证明.考虑
f
(
x
)
f(\boldsymbol x)
f(x) 在点
c
\boldsymbol c
c 处的二阶泰勒展开(1.2), 这里因为一阶必要条件成立, 所以
∇
f
(
c
)
=
0
\nabla f\left(\boldsymbol c \right)=0
∇f(c)=0. 反设
∇
2
f
(
c
)
⪰
0
\nabla^2 f\left(\boldsymbol c\right) \succeq 0
∇2f(c)⪰0 不成立, 即
∇
2
f
(
c
)
\nabla^2 f\left(\boldsymbol c \right)
∇2f(c) 有负的特征值. 取
Δ
x
\Delta \boldsymbol x
Δx 为其负特征值
λ
−
\lambda_{-}
λ−对应的特征向量, 通过对(1.2)式变形得到
f
(
c
+
Δ
x
)
−
f
(
c
)
∥
Δ
x
∥
2
=
1
2
Δ
x
T
∥
Δ
x
∥
∇
2
f
(
c
)
Δ
x
∥
Δ
x
∥
+
o
(
1
)
.
\frac{f\left(\boldsymbol c+\Delta \boldsymbol x\right)-f\left(\boldsymbol c\right)}{\|\Delta \boldsymbol x\|^2}=\frac{1}{2} \frac{\Delta \boldsymbol x^{\mathrm{T}}}{\|\Delta \boldsymbol x\|} \nabla^2 f\left(\boldsymbol c\right) \frac{\Delta \boldsymbol x}{\|\Delta \boldsymbol x\|}+o(1) .
∥Δx∥2f(c+Δx)−f(c)=21∥Δx∥ΔxT∇2f(c)∥Δx∥Δx+o(1).
这里注意
Δ
x
∥
Δ
x
∥
\frac{\Delta \boldsymbol x}{\|\Delta \boldsymbol x\|}
∥Δx∥Δx 是
Δ
x
\Delta \boldsymbol x
Δx 的单位化, 因此
f
(
c
+
Δ
x
)
−
f
(
c
)
∥
Δ
x
∥
2
=
1
2
λ
−
+
o
(
1
)
.
\frac{f\left(\boldsymbol c+\Delta \boldsymbol x\right)-f\left(\boldsymbol c\right)}{\|\Delta \boldsymbol x\|^2}=\frac{1}{2} \lambda_{-}+o(1) .
∥Δx∥2f(c+Δx)−f(c)=21λ−+o(1).
当 ∥ Δ x ∥ \|\Delta \boldsymbol x\| ∥Δx∥ 充分小时, f ( c + Δ x ) < f ( c ) f\left(\boldsymbol c+\Delta \boldsymbol x\right)<f\left(\boldsymbol c\right) f(c+Δx)<f(c), 这和点 c \boldsymbol c c 的最优性矛盾. 因此二阶必要条件成立.
当
∇
2
f
(
c
)
≻
0
\nabla^2 f(\boldsymbol c) \succ 0
∇2f(c)≻0 时, 对任意的
Δ
x
≠
0
\Delta \boldsymbol x\neq 0
Δx=0 有
Δ
x
T
∇
2
f
(
c
)
Δ
x
⩾
λ
min
∥
Δ
x
∥
2
>
0
\Delta \boldsymbol x^{\mathrm{T}} \nabla^2 f\left(\boldsymbol c\right) \Delta \boldsymbol x \geqslant \lambda_{\text {min }}\|\Delta \boldsymbol x\|^2>0
ΔxT∇2f(c)Δx⩾λmin ∥Δx∥2>0, 这里
λ
min
>
0
\lambda_{\min }>0
λmin>0 是
∇
2
f
(
c
)
\nabla^2 f\left(\boldsymbol c\right)
∇2f(c) 的最小特征值. 因此我们有
f
(
c
+
Δ
x
)
−
f
(
c
)
∥
Δ
x
∥
2
⩾
1
2
λ
min
+
o
(
1
)
.
\frac{f\left(\boldsymbol c+\Delta \boldsymbol x\right)-f\left(\boldsymbol c\right)}{\|\Delta \boldsymbol x\|^2} \geqslant \frac{1}{2} \lambda_{\min }+o(1) .
∥Δx∥2f(c+Δx)−f(c)⩾21λmin+o(1).
当 ∥ Δ x ∥ \|\Delta \boldsymbol x\| ∥Δx∥ 充分小时有 f ( c + Δ x ) ⩾ f ( c ) f\left(\boldsymbol c+\Delta \boldsymbol x\right) \geqslant f\left(\boldsymbol c\right) f(c+Δx)⩾f(c), 即二阶充分条件成立.
当
∇
f
(
c
)
=
0
,
∀
x
∈
dom
f
,
∇
2
f
(
x
)
⪰
0
\nabla f\left(\boldsymbol c\right)=0,\forall \boldsymbol x\in \text{dom}f,\nabla^2f(\boldsymbol x)\succeq0
∇f(c)=0,∀x∈domf,∇2f(x)⪰0时,由泰勒展开
f
(
c
+
Δ
x
)
=
f
(
c
)
+
1
2
Δ
x
T
∇
2
f
(
c
+
t
Δ
x
)
Δ
x
t
∈
(
0
,
1
)
⇕
f
(
c
+
Δ
x
)
−
f
(
c
)
=
1
2
Δ
x
T
∇
2
f
(
c
+
t
Δ
x
)
Δ
x
⩾
0
t
∈
(
0
,
1
)
\begin{aligned} f(\boldsymbol c+\Delta \boldsymbol x)&=f(\boldsymbol c)+\frac{1}{2}\Delta \boldsymbol x^T\nabla^2f(\boldsymbol c+t\Delta \boldsymbol x)\Delta\boldsymbol x\qquad t\in(0,1) \\ &\Updownarrow\\ f(\boldsymbol c+\Delta \boldsymbol x)-f(\boldsymbol c)&=\frac{1}{2}\Delta \boldsymbol x^T\nabla^2f(\boldsymbol c+t\Delta \boldsymbol x)\Delta\boldsymbol x\geqslant0\qquad t\in(0,1)\\ \end{aligned}
f(c+Δx)f(c+Δx)−f(c)=f(c)+21ΔxT∇2f(c+tΔx)Δxt∈(0,1)⇕=21ΔxT∇2f(c+tΔx)Δx⩾0t∈(0,1)
注意Hessian矩阵半正定仅是必要条件(除非在定义域上都半正定),并非充分条件,如
y
=
x
2
−
y
3
y=x^2-y^3
y=x2−y3 在
(
0
,
0
)
(0,0)
(0,0)处Hessian矩阵半正定,但并不是极小值(二次项在某一方向为0,后面的高阶小量的正负号影响了函数增量的正负)
由此得出如下结论:设点 x ˉ \boldsymbol {\bar{x}} xˉ 满足一阶最优性条件 (即 ∇ f ( x ˉ ) = 0 \nabla f(\boldsymbol {\bar{x}})=0 ∇f(xˉ)=0 ),且该点处的海瑟矩阵 ∇ 2 f ( x ˉ ) \nabla^2 f(\boldsymbol {\bar{x}}) ∇2f(xˉ) 不是半正定的, 那么 x ˉ \boldsymbol {\bar{x}} xˉ 不是一个局部极小点.进一步地, 如果海瑟矩阵 ∇ 2 f ( x ˉ ) \nabla^2 f(\boldsymbol {\bar{x}}) ∇2f(xˉ) 既有正特征值又有负特征值, 我们称稳定点 x ˉ \boldsymbol {\bar{x}} xˉ 为一个鞍点. 事实上, 记 d 1 , d 2 d_1, d_2 d1,d2 为其正负特征值对应的特征向量, 那么对于任意充分小的 t > 0 t>0 t>0, 我们都有 f ( x ˉ + t d 1 ) > f ( x ˉ ) f\left(\boldsymbol {\bar{x}}+t \boldsymbol d_1\right)>f(\boldsymbol {\bar{x}}) f(xˉ+td1)>f(xˉ) 且 f ( x ˉ + t d 2 ) < f ( x ˉ ) f\left(\boldsymbol {\bar{x}}+t \boldsymbol d_2\right)<f(\boldsymbol {\bar{x}}) f(xˉ+td2)<f(xˉ).
二. 可微多变量函数 f ( X ) 的极值点 \text { 可微多变量函数 } f(\boldsymbol X) \text { 的极值点 } 可微多变量函数 f(X) 的极值点
现在考虑以矩阵为变元的实值函数
f
(
X
)
:
R
m
×
n
→
R
f(\boldsymbol{X}): \mathbb{R}^{m \times n} \rightarrow \mathbb{R}
f(X):Rm×n→R 。此时, 需要先通过向量化,将变元矩阵
X
∈
R
m
×
n
\boldsymbol{X} \in \mathbb{R}^{m \times n}
X∈Rm×n, 变成一个
m
n
×
1
m n \times 1
mn×1 向量
vec
(
X
)
\operatorname{vec}(\boldsymbol{X})
vec(X) 。
令
S
S
S 是矩阵空间
R
m
×
n
\mathbb{R}^{m \times n}
Rm×n 的一个子集合, 它是
m
×
n
m \times n
m×n 矩阵变元
X
\boldsymbol{X}
X 的定义域, 即
X
∈
S
\boldsymbol{X} \in S
X∈S 。
函数
f
(
X
)
f(\boldsymbol{X})
f(X) 以点
vec
(
C
)
\operatorname{vec}(\boldsymbol{C})
vec(C) 为中心,
r
r
r 为半径的邻域记作
B
(
C
;
r
)
B(\boldsymbol{C} ; r)
B(C;r), 定义为
B
(
C
;
r
)
=
{
X
∣
X
∈
R
m
×
n
,
∥
vec
(
X
)
−
vec
(
C
)
∥
2
<
r
}
B(\boldsymbol{C} ; r)=\left\{\boldsymbol{X} \mid \boldsymbol{X} \in \mathbb{R}^{m \times n},\|\operatorname{vec}(\boldsymbol{X})-\operatorname{vec}(\boldsymbol{C})\|_2<r\right\}
B(C;r)={X∣X∈Rm×n,∥vec(X)−vec(C)∥2<r}
于是, 函数
f
(
X
)
f(\boldsymbol{X})
f(X) 在点
C
\boldsymbol{C}
C 的二阶 Taylor 级数逼近公式为
f
(
C
+
Δ
X
)
=
f
(
C
)
+
(
∂
f
(
C
)
∂
vec
(
C
)
)
T
vec
(
Δ
X
)
+
1
2
(
vec
(
Δ
X
)
)
T
∂
2
f
(
C
)
∂
vec
(
C
)
∂
(
vec
C
)
T
vec
(
Δ
X
)
=
f
(
C
)
+
(
∇
vec
C
f
(
C
)
)
T
vec
(
Δ
X
)
+
1
2
(
vec
(
Δ
X
)
)
T
H
(
f
(
C
)
)
vec
(
Δ
X
)
\begin{aligned} f(\boldsymbol{C}+\Delta \boldsymbol{X})= & f(\boldsymbol{C})+\left(\frac{\partial f(\boldsymbol{C})}{\partial \operatorname{vec}(\boldsymbol{C})}\right)^{\mathrm{T}} \operatorname{vec}(\Delta \boldsymbol{X}) \\ & +\frac{1}{2}(\operatorname{vec}(\Delta \boldsymbol{X}))^{\mathrm{T}} \frac{\partial^2 f(\boldsymbol{C})}{\partial \operatorname{vec}(\boldsymbol{C}) \partial(\operatorname{vec} \boldsymbol{C})^{\mathrm{T}}} \operatorname{vec}(\Delta \boldsymbol{X}) \\ = & f(\boldsymbol{C})+\left(\nabla_{\operatorname{vec}} \boldsymbol{C} f(\boldsymbol{C})\right)^{\mathrm{T}} \operatorname{vec}(\Delta \boldsymbol{X}) \\ & +\frac{1}{2}(\operatorname{vec}(\Delta \boldsymbol{X}))^{\mathrm{T}} \boldsymbol{H}(f(\boldsymbol{C})) \operatorname{vec}(\Delta \boldsymbol{X}) \end{aligned}
f(C+ΔX)==f(C)+(∂vec(C)∂f(C))Tvec(ΔX)+21(vec(ΔX))T∂vec(C)∂(vecC)T∂2f(C)vec(ΔX)f(C)+(∇vecCf(C))Tvec(ΔX)+21(vec(ΔX))TH(f(C))vec(ΔX)
式中
∇
v
e
c
C
f
(
C
)
=
∂
f
(
X
)
∂
vec
(
X
)
∣
X
=
C
∈
R
m
n
H
(
f
(
C
)
)
=
∂
2
f
(
X
)
∂
vec
(
X
)
∂
(
vec
X
)
T
∣
X
=
C
∈
R
m
n
×
m
n
\begin{aligned} \nabla_{\mathrm{vec} \boldsymbol{C}} f(\boldsymbol{C}) & =\left.\frac{\partial f(\boldsymbol{X})}{\partial \operatorname{vec}(\boldsymbol{X})}\right|_{\boldsymbol{X}=\boldsymbol{C}} \in \mathbb{R}^{m n} \\ \boldsymbol{H}(f(\boldsymbol{C})) & =\left.\frac{\partial^2 f(\boldsymbol{X})}{\partial \operatorname{vec}(\boldsymbol{X}) \partial(\operatorname{vec} \boldsymbol{X})^{\mathrm{T}}}\right|_{\boldsymbol{X}=\boldsymbol{C}} \in \mathbb{R}^{m n \times m n} \end{aligned}
∇vecCf(C)H(f(C))=∂vec(X)∂f(X)
X=C∈Rmn=∂vec(X)∂(vecX)T∂2f(X)
X=C∈Rmn×mn
分别是函数 f ( X ) f(\boldsymbol{X}) f(X) 在点 C \boldsymbol{C} C 的梯度向量和 Hessian 矩阵。
类比上一小节即可得出相同的结论。
实变函数 | f ( x ) : R → R f(x): \mathbb{R} \rightarrow \mathbb{R} f(x):R→R | f ( x ) : R n → R f(\boldsymbol{x}): \mathbb{R}^n \rightarrow \mathbb{R} f(x):Rn→R | f ( X ) : R m × n → R f(\boldsymbol{X}): \mathbb{R}^{m \times n} \rightarrow \mathbb{R} f(X):Rm×n→R |
---|---|---|---|
平稳点 | ∂ f ( x ) ∂ x ∣ x = c = 0 \left.\frac{\partial f(x)}{\partial x}\right|_{x=c}=0 ∂x∂f(x) x=c=0 | ∂ f ( x ) ∂ x ∣ x = c = 0 ∈ R n \left.\frac{\partial f(\boldsymbol{x})}{\partial \boldsymbol{x}}\right|_{\boldsymbol{x}=\boldsymbol{c}}=\boldsymbol 0\in \Bbb R^n ∂x∂f(x) x=c=0∈Rn | ∂ f ( X ) ∂ X ∣ X = C = O m × n \left.\frac{\partial f(\boldsymbol{X})}{\partial \boldsymbol{X}}\right|_{\boldsymbol{X}=\boldsymbol{C}}=\boldsymbol{O}_{m \times n} ∂X∂f(X) X=C=Om×n |
严格局部极小点 | ∂ 2 f ( x ) ∂ x ∂ x ∣ x = c > 0 \left.\frac{\partial^2 f(x)}{\partial x \partial x}\right|_{x=c}>0 ∂x∂x∂2f(x) x=c>0 | ∂ 2 f ( x ) ∂ x ∂ x T ∣ x = c ≻ 0 \left.\frac{\partial^2 f(\boldsymbol{x})}{\partial \boldsymbol{x} \partial \boldsymbol{x}^{\mathrm{T}}}\right|_{\boldsymbol{x}=\boldsymbol{c}} \succ 0 ∂x∂xT∂2f(x) x=c≻0 | ∂ 2 f ( X ) ∂ vec ( X ) ∂ ( vec X ) T ∣ X = C ≻ 0 \left.\frac{\partial^2 f(\boldsymbol{X})}{\partial \operatorname{vec}(\boldsymbol{X}) \partial(\operatorname{vec} \boldsymbol{X})^{\mathrm{T}}}\right|_{\boldsymbol{X}=\boldsymbol{C}} \succ 0 ∂vec(X)∂(vecX)T∂2f(X) X=C≻0 |
严格局部极大点 | ∂ 2 f ( x ) ∂ x ∂ x ∣ x = c < 0 \left.\frac{\partial^2 f(x)}{\partial x \partial x}\right|_{x=c}<0 ∂x∂x∂2f(x) x=c<0 | ∂ 2 f ( x ) ∂ x ∂ x T ∣ x = c ≺ 0 \left.\frac{\partial^2 f(\boldsymbol{x})}{\partial \boldsymbol{x} \partial \boldsymbol{x}^{\mathrm{T}}}\right|_{\boldsymbol{x}=\boldsymbol{c}} \prec 0 ∂x∂xT∂2f(x) x=c≺0 | ∂ 2 f ( X ) ∂ vec ( X ) ∂ ( vec X ) T ∣ X = C ≺ 0 \left.\frac{\partial^2 f(\boldsymbol{X})}{\partial \operatorname{vec}(\boldsymbol{X}) \partial(\operatorname{vec} \boldsymbol{X})^{\mathrm{T}}}\right|_{\boldsymbol{X}=\boldsymbol{C}} \prec 0 ∂vec(X)∂(vecX)T∂2f(X) X=C≺0 |
鞍 点 | ∂ 2 f ( x ) ∂ x ∂ x ∣ x = c \left.\frac{\partial^2 f(x)}{\partial x \partial x}\right|_{x=c} ∂x∂x∂2f(x) x=c 不定 | ∂ 2 f ( x ) ∂ x ∂ x T ∣ x = c \left.\frac{\partial^2 f(\boldsymbol{x})}{\partial \boldsymbol{x} \partial \boldsymbol{x}^{\mathrm{T}}}\right|_{\boldsymbol{x}=\boldsymbol{c}} ∂x∂xT∂2f(x) x=c 不定 | ∂ 2 f ( X ) ∂ vec ( X ) ∂ ( vec X ) T ∣ X = C \left.\frac{\partial^2 f(\boldsymbol{X})}{\partial \operatorname{vec}(\boldsymbol{X}) \partial(\operatorname{vec} \boldsymbol{X})^{\mathrm{T}}}\right|_{\boldsymbol{X}=\boldsymbol{C}} ∂vec(X)∂(vecX)T∂2f(X) X=C 不定 |
注意, 二阶最优性条件给出的仍然是关于局部最优性的判断. 对于给定点的全局最优性判断, 我们还需要借助实际问题的性质, 比如目标函数是凸的、非线性最小二乘问题中目标函数值为 0 等.
三.例
- 线性最小二乘问题
min x ∈ R n f ( x ) = def 1 2 ∥ b − A x ∥ 2 2 , \min _{x \in \mathbb{R}^n} f(\boldsymbol x) \xlongequal{\text { def }} \frac{1}{2}\|\boldsymbol b-\boldsymbol A \boldsymbol x\|_2^2, x∈Rnminf(x) def 21∥b−Ax∥22,
其中
A
∈
R
m
×
n
,
b
∈
R
m
A \in \mathbb{R}^{m \times n}, b \in \mathbb{R}^m
A∈Rm×n,b∈Rm 分别是给定的矩阵和向量. 易知
f
(
x
)
f(\boldsymbol x)
f(x) 是可微且凸的。
∇
f
(
x
∗
)
=
A
T
(
A
x
∗
−
b
)
=
0
\nabla f\left(\boldsymbol x^*\right)=\boldsymbol A^{\mathrm{T}}\left(\boldsymbol A \boldsymbol x^*-\boldsymbol b\right)=0
∇f(x∗)=AT(Ax∗−b)=0
且
∇
2
f
(
x
)
=
A
A
T
⪰
0
,
∀
x
∈
dom
f
\nabla ^2f(\boldsymbol x)=\boldsymbol A\boldsymbol A^\mathrm{T}\succeq0,\qquad \forall \boldsymbol x\in \text{dom}f
∇2f(x)=AAT⪰0,∀x∈domf
因此,
x
∗
\boldsymbol x^∗
x∗ 为一个全局最优解
因此, 线性最小二乘问题本质上等于求解线性方程组。
-
罗杰斯特回归
标签为正负1, σ ( x ) = 1 1 + exp ( − x ) \sigma(x)=\frac{1}{1+\exp(-x)} σ(x)=1+exp(−x)1
似然函数 L ( w ) = ∏ i = 1 N σ ( y i w ⊤ x i ) 损失函数 E ( w ) = − ln L ( w ) = ∑ i = 1 N ln σ ( y i w ⊤ x i ) ∇ w E = d E ( w ) d w = − ∑ i = 1 N d ln σ d w = − ∑ i = 1 v [ d ln σ d σ ⋅ d σ d [ y i w ⊤ x i ] ⋅ d [ y i w ⊤ x i ] d w ] = − ∑ i = 1 k [ 1 σ ⋅ σ ( 1 − σ ) ⋅ x i ⋅ y i ] = ∑ i = 1 N ( σ − 1 ) x i y i = ∑ i = 1 N − x i y i 1 + e y i w T x i ∇ w 2 E = ∇ w ( ∑ i = 1 N ( σ − 1 ) x i y i ) = ∑ i = 1 N σ ( 1 − σ ) x i ⋅ x i ⊤ ∗ y i 2 ( y i 2 = 1 ) = ∑ i = 1 N σ ( 1 − σ ) x i ⋅ x i ⊤ ⪰ 0 \begin{aligned} & \text { 似然函数 } L(\boldsymbol w)=\prod_{i=1}^N \sigma\left(y_i \boldsymbol w^{\top} \boldsymbol x_i\right) \\ & \text{损失函数} E(\boldsymbol w)=-\ln L(\boldsymbol w) =\sum_{i=1}^N \ln \sigma\left(y_i \boldsymbol w^{\top} \boldsymbol x_i\right) \\ & \nabla_{\boldsymbol w} E=\frac{d E(\boldsymbol w)}{d \boldsymbol w}=-\sum_{i=1}^N \frac{d \ln \sigma}{d \boldsymbol w} \\ & =-\sum_{i=1}^v\left[\frac{d \ln \sigma}{d \sigma} \cdot \frac{d \sigma}{d\left[y_i \boldsymbol w^{\top} \boldsymbol x_i\right]} \cdot \frac{d\left[y_i \boldsymbol w^{\top} \boldsymbol x_i\right]}{d \boldsymbol w}\right] \\ & =-\sum_{i=1}^k\left[\frac{1}{\sigma} \cdot \sigma(1-\sigma) \cdot \boldsymbol x_i \cdot y_i\right] \\ & =\sum_{i=1}^N(\sigma-1) \boldsymbol {x_i} y_i \\ & =\sum_{i=1}^N \frac{-\boldsymbol x_i y_i}{1+e^{ y_i \boldsymbol w^\mathrm{T} \boldsymbol x_i }} \\ &\\ &\nabla ^2_{\boldsymbol w}E=\nabla_{\boldsymbol w} (\sum_{i=1}^N(\sigma-1) \boldsymbol {x_i} y_i )\\ &=\sum_{i=1}^N \sigma(1-\sigma) \boldsymbol x_i \cdot \boldsymbol x_i^{\top}*y_i^2\qquad (y_i^2=1)\\ &=\sum_{i=1}^N \sigma(1-\sigma) \boldsymbol x_i \cdot \boldsymbol x_i^{\top}\succeq 0 \end{aligned} 似然函数 L(w)=i=1∏Nσ(yiw⊤xi)损失函数E(w)=−lnL(w)=i=1∑Nlnσ(yiw⊤xi)∇wE=dwdE(w)=−i=1∑Ndwdlnσ=−i=1∑v[dσdlnσ⋅d[yiw⊤xi]dσ⋅dwd[yiw⊤xi]]=−i=1∑k[σ1⋅σ(1−σ)⋅xi⋅yi]=i=1∑N(σ−1)xiyi=i=1∑N1+eyiwTxi−xiyi∇w2E=∇w(i=1∑N(σ−1)xiyi)=i=1∑Nσ(1−σ)xi⋅xi⊤∗yi2(yi2=1)=i=1∑Nσ(1−σ)xi⋅xi⊤⪰0
因此罗杰斯特回归采用交叉熵作为损失函数(如果采用mse最后二阶导不亦一定半正定)