#最优化计算方法
本文记录了博主在学习《最优化计算方法》时的总结,主要侧重于与深度学习相关的内容,更新于2018.09.17。
书目信息:《最优化计算方法》,黄正海等著,出版时间2015.02,科学出版社。
更多内容,欢迎加入星球讨论。
文章目录
##第1章 引论
###最优化问题概述
最优化要解决的问题:在一定限制条件下使得所关心的指标达到最优。
最优化问题的基本数学模型:
KaTeX parse error: No such environment: split at position 8: \begin{̲s̲p̲l̲i̲t̲}̲ &\min \quad &f…
其中 x ∈ R n x\in \mathbb R^n x∈Rn称为决策向量,函数 f : R n → R f:\mathbb R^n \to \mathbb R f:Rn→R称为目标函数,函数 c i ( ⋅ ) ( i ∈ I ) c_i(\cdot)(i \in I) ci(⋅)(i∈I)称为不等式约束函数,函数 c i ( ⋅ ) ( i ∈ E ) c_i(\cdot)(i\in E) ci(⋅)(i∈E)称为等式约束函数,不等式 c i ( x ) ≥ 0 ( i ∈ I ) c_i(x)\geq0(i\in I) ci(x)≥0(i∈I)称为不等式约束,方程 c i ( x ) = 0 ( i ∈ E ) c_i(x)=0(i\in E) ci(x)=0(i∈E)称为等式约束, I I I称为不等式约束的指标集, E E E称为等式约束的指标集。记:
\begin{split}
\mathscr F:=\left{ x\in \mathbb R^n \left\vert
\begin{aligned}
& c_i(x)\geq 0,\quad \forall i\in I={1,2,\cdot\cdot\cdot,p};\
& c_i(x)=0,\quad \forall i\in E={p+1,p+2,\cdot\cdot\cdot,m}
\end{aligned}
\right. \right}
\end{split}
称 F \mathscr F F为上述最优化问题的可行域, F \mathscr F F中的每个点 x x x称为上述最优化问题的一个可行点。若 F = ∅ \mathscr F=\varnothing F=∅,则称上述最优化问题不可行;否则,称问题是可行的。
因此,上述最优化问题就是在可行域 F \mathscr F F中找到一个点 x x x,使其对应的 f ( x ) f(x) f(x)的值不大于任何其他 F \mathscr F F中的点对应的目标函数值。
**定义:**假设可行域
F
\mathscr F
F由上式给出:
(i)若
x
∗
∈
F
x^*\in \mathscr F
x∗∈F,且对所有的
x
∈
F
x\in \mathscr F
x∈F恒有
f
(
x
∗
)
≤
f
(
x
)
f(x^*)\leq f(x)
f(x∗)≤f(x),则称
x
∗
x^*
x∗为上述最优化问题的一个全局解;
(ii)若
x
∗
∈
F
x^*\in \mathscr F
x∗∈F,且对所有的
x
∈
F
/
x
∗
x\in \mathscr F/\ {x^*}
x∈F/ x∗恒有
f
(
x
∗
)
<
f
(
x
)
f(x^*)\lt f(x)
f(x∗)<f(x),则称
x
∗
x^*
x∗为上述最优化问题的严格全局最优解;
(iii)若
x
∗
∈
F
x^*\in \mathscr F
x∗∈F,且存在
x
∗
x^*
x∗的某个邻域
N
ε
(
x
∗
)
"
=
{
x
∈
R
n
∣
∥
x
−
x
∗
∥
<
ε
}
,
ε
为
正
实
数
且
∥
⋅
∥
表
示
某
种
范
数
\mathscr N_\varepsilon (x^*)"=\left\{x\in \mathbb R^n \left\vert \Vert x-x^*\Vert \lt \varepsilon \right. \right\},\varepsilon 为正实数且\Vert\cdot\Vert表示某种范数
Nε(x∗)"={x∈Rn∣∥x−x∗∥<ε},ε为正实数且∥⋅∥表示某种范数
使得对所有的
x
∈
F
∩
N
ε
(
x
∗
)
x\in \mathscr F \cap\mathscr N_\varepsilon(x^*)
x∈F∩Nε(x∗)恒有
f
(
x
∗
)
≤
f
(
x
)
f(x^*)\leq f(x)
f(x∗)≤f(x),那么称
x
∗
x^*
x∗为上述最优化问题的一个局部最优解。
(iv)若
x
∗
∈
F
x^*\in \mathscr F
x∗∈F,且存在
x
∗
x^*
x∗的某个邻域
N
ε
(
x
∗
)
\mathscr N_\varepsilon(x^*)
Nε(x∗),使得对所有的
x
∈
F
∩
N
ε
(
x
∗
)
/
x
∗
x\in\mathscr F \cap \mathscr N_\varepsilon(x^*)/\ {x^*}
x∈F∩Nε(x∗)/ x∗恒有
f
(
x
∗
)
<
f
(
x
)
f(x^*)\lt f(x)
f(x∗)<f(x),那么称
x
∗
x^*
x∗为为上述最优化问题的一个严格局部最优解。
**定义:**对于上述最优化问题,称其最优解 x ∗ x^* x∗对应的目标函数值 f ( x ∗ ) f(x^*) f(x∗)为此优化问题的最优值。
最优解不一定存在,存在也不一定唯一,但如果存在最优解,那么最优值一定唯一。最优化问题也常被写成:
\begin{split}
\min\left{f(x) \left\vert
\begin{aligned}
& c_i(x)\geq 0,\quad \forall i\in I={1,2,\cdot\cdot\cdot,p};\
& c_i(x)=0,\quad \forall i\in E={p+1,p+2,\cdot\cdot\cdot,m}
\end{aligned}
\right. \right}
\end{split}
###预备知识
约定向量取列向量形式,即
x
∈
R
n
x\in \mathbb R^n
x∈Rn是指
x
x
x具有如下形式:
\begin{split}
x:=(x_1,x_2,\cdot\cdot\cdot)^T=
\left(
\begin{aligned}
&x1\
&x2\
&\cdot\
&\cdot\
&\cdot\
&x_n
\end{aligned}
\right)
\end{split}
对任意的
x
,
y
∈
R
n
x,y\in \mathbb R^n
x,y∈Rn,常用的内积
⟨
x
,
y
⟩
\langle x,y\rangle
⟨x,y⟩定义为:
⟨
x
,
y
⟩
:
=
∑
i
=
1
n
x
i
y
i
=
x
T
y
\langle x,y\rangle:=\sum_{i=1}^nx_iy_i=x^Ty
⟨x,y⟩:=i=1∑nxiyi=xTy
常用的向量范数:
l
1
−
范
数
l_1-范数
l1−范数:
∥
x
∥
1
=
∑
i
=
1
n
∣
x
i
∣
\Vert x\Vert_1=\sum_{i=1}^n\vert x_i\vert
∥x∥1=∑i=1n∣xi∣
l
2
−
范
数
l_2-范数
l2−范数:
∥
x
∥
2
=
x
T
x
=
∑
i
=
1
n
x
i
2
\Vert x\Vert_2=\sqrt{x^Tx}=\sqrt{\sum_{i=1}^nx_i^2}
∥x∥2=xTx=∑i=1nxi2
l
∞
−
范
数
l_\infty-范数
l∞−范数:
∥
x
∥
∞
=
max
{
∣
x
i
∣
∣
i
∈
{
1
,
2
,
⋅
⋅
⋅
,
n
}
}
\Vert x\Vert_\infty=\max \{\vert x_i\vert \vert i\in \{1,2,\cdot\cdot\cdot,n\}\}
∥x∥∞=max{∣xi∣∣i∈{1,2,⋅⋅⋅,n}}
一般地,对于
p
∈
[
1
,
∞
)
p\in \left[1,\infty\right)
p∈[1,∞),
l
p
−
范
数
l_p-范数
lp−范数定义为:
∥
x
p
∥
=
(
∑
i
=
1
n
∣
x
i
∣
p
)
1
/
p
\Vert x_p \Vert=\left( \sum_{i=1}^n\vert x_i\vert^p\right)^{1/p}
∥xp∥=(∑i=1n∣xi∣p)1/p
各范数之间的关系有:
∥
x
∥
∞
≤
∥
x
∥
2
≤
∥
x
∥
1
≤
n
∥
x
∥
∞
\Vert x \Vert _\infty \leq \Vert x\Vert _2 \leq \Vert x \Vert _1 \leq n\Vert x\Vert _\infty
∥x∥∞≤∥x∥2≤∥x∥1≤n∥x∥∞
常用的矩阵范数
假设
A
∈
R
n
×
n
A\in \mathbb R^{n\times n}
A∈Rn×n是对称正定矩阵,那么向量的椭球范数
∥
⋅
∥
A
\Vert\cdot\Vert_A
∥⋅∥A定义如下:
∥
x
∥
A
:
=
x
T
A
x
,
∀
x
∈
R
n
\Vert x \Vert _A:=\sqrt{x^TAx},\quad\forall x \in \mathbb R^n
∥x∥A:=xTAx,∀x∈Rn
对于任意的
A
=
(
a
i
j
)
n
×
n
∈
R
n
×
n
A=(a_{ij})_{n\times n}\in \mathbb R^{n\times n}
A=(aij)n×n∈Rn×n,常用的矩阵范数是Frobenius范数,定义为:
∥
A
∥
F
:
=
∑
i
=
1
n
∑
j
=
1
n
a
i
j
2
=
T
r
(
A
T
A
)
\Vert A\Vert _F:=\sqrt{\sum_{i=1}^n\sum_{j=1}^na_{ij}^2}=\sqrt{Tr(A^TA)}
∥A∥F:=i=1∑nj=1∑naij2=Tr(ATA)
其中,
T
r
(
A
T
A
)
Tr(A^TA)
Tr(ATA)表示矩阵
A
T
A
A^TA
ATA的迹,即
A
T
A
A^TA
ATA的所有主对角线元素之和,也等于
A
T
A
A^TA
ATA的所有特征值之和。
另一个常用的矩阵范数是由向量所诱导的矩阵范数,也称算子范数,定义为:
∥
A
∥
:
=
max
x
∈
R
n
/
{
0
}
∥
A
x
∥
∥
x
∥
,
∀
A
∈
R
n
×
n
\Vert A \Vert:=\max_{x\in \mathbb R^n/\ \{0\}}\frac{\Vert Ax\Vert}{\Vert x\Vert},\quad \forall A\in \mathbb R^{n\times n}
∥A∥:=x∈Rn/ {0}max∥x∥∥Ax∥,∀A∈Rn×n
其中,
∥
⋅
∥
\Vert \cdot\Vert
∥⋅∥是某种向量范数。
特别地,对于任意的
A
∈
R
n
×
n
A\in \mathbb R ^{n\times n}
A∈Rn×n,有:
- 由向量 l 1 − 范 数 l_1-范数 l1−范数诱导的矩阵范数(列范数)为 ∥ A ∥ 1 = max { ∑ i = 1 n ∣ a i j ∣ ∣ j ∈ { 1 , 2 , ⋅ ⋅ ⋅ , n } } \Vert A \Vert _1 = \max \left\{ \sum_{i=1}^n\vert a_{ij}\vert \left\vert j\in \{1,2,\cdot\cdot\cdot,n\}\right. \right\} ∥A∥1=max{∑i=1n∣aij∣∣j∈{1,2,⋅⋅⋅,n}}
- 由向量 l ∞ − 范 数 l_\infty-范数 l∞−范数诱导的矩阵范数(行范数)为 ∥ A ∥ ∞ = max { ∑ j = 1 n ∣ a i j ∣ ∣ i ∈ { 1 , 2 , ⋅ ⋅ ⋅ , n } } \Vert A \Vert _\infty = \max \left\{ \sum_{j=1}^n\vert a_{ij}\vert \left\vert i\in \{1,2,\cdot\cdot\cdot,n\}\right. \right\} ∥A∥∞=max{∑j=1n∣aij∣∣i∈{1,2,⋅⋅⋅,n}}
- 由向量 l 2 − 范 数 l_2-范数 l2−范数诱导的矩阵范数(谱范数)为KaTeX parse error: Got function '\max' with no arguments as subscript at position 33: …= \sqrt{\lambda_̲\max(A^TA)},其中KaTeX parse error: Got function '\max' with no arguments as subscript at position 8: \lambda_̲\max(A^TA)表示矩阵 A T A A^TA ATA的最大特征值。
矩阵范数满足相容性条件,常用的不等式有Cauchy-Schwarz不等式,广义Cauchy-Schwarz不等式,Young不等式,Holder不等式,Minkowski不等式。
函数的可微性
如果函数
f
f
f是二阶连续可微,那么函数
f
f
f在点
x
x
x处的二阶导数组成的矩阵称为Hesse阵。
给定多变量向量值函数
F
F
F,如果其在
x
x
x处连续可微,那么函数
F
F
F在点
x
x
x处的一阶导数矩阵称为Jacobi矩阵。
###凸集、凸函数、凸规划
凸集
给定非空集合
F
⊆
R
n
\mathscr F \subseteq \mathbb R^n
F⊆Rn。如果对任意的
x
,
y
∈
F
x,y\in \mathscr F
x,y∈F以及任意的实数
α
∈
[
0
,
1
]
\alpha \in [0,1]
α∈[0,1]都有
α
x
+
(
1
+
α
)
y
∈
F
\alpha x+(1+\alpha)y\in \mathscr F
αx+(1+α)y∈F
那么,称
F
\mathscr F
F为
R
n
\mathbb R^n
Rn中的一个凸集。若凸集
F
\mathscr F
F为开集,则称为开凸集;若凸集
F
\mathscr F
F为闭集,则称为闭凸集。
空集 ∅ \varnothing ∅通常被规定为凸集。
凸集分离定理
假设
F
1
,
F
2
⊆
R
n
\mathscr F_1, \mathscr F_2 \subseteq \mathbb R^n
F1,F2⊆Rn为两个非空凸集。如果存在非零向量
w
∈
R
n
w\in\mathbb R^n
w∈Rn和实数
t
t
t,使得
(i)对任意的
x
∈
F
1
x\in\mathscr F_1
x∈F1和
y
∈
F
2
y\in \mathscr F_2
y∈F2,都有
w
T
x
≥
t
w^Tx\geq t
wTx≥t且
w
T
y
≤
t
w^Ty\leq t
wTy≤t,则称超平面
π
:
=
{
x
∈
R
n
∣
w
T
x
=
t
}
\pi := \{x\in \mathbb R^n \vert w^Tx=t\}
π:={x∈Rn∣wTx=t}分离集合
F
1
\mathscr F_1
F1和
F
2
\mathscr F_2
F2;
(ii)对任意的
x
∈
F
1
x\in\mathscr F_1
x∈F1和
y
∈
F
2
y\in \mathscr F_2
y∈F2,都有
w
T
x
>
t
w^Tx\gt t
wTx>t且
w
T
y
<
t
w^Ty\lt t
wTy<t,则称超平面
π
:
=
{
x
∈
R
n
∣
w
T
x
=
t
}
\pi := \{x\in \mathbb R^n \vert w^Tx=t\}
π:={x∈Rn∣wTx=t}严格分离集合
F
1
\mathscr F_1
F1和
F
2
\mathscr F_2
F2。
Farkas引理
设
A
∈
R
m
×
n
A\in \mathbb R^{m\times n}
A∈Rm×n且
b
∈
R
n
b\in \mathbb R^n
b∈Rn,考虑不等式组
A
x
≤
0
,
b
T
x
>
0
Ax\leq0,\quad b^Tx\gt 0
Ax≤0,bTx>0
和等式不等式组
A
T
y
=
b
,
y
≥
0
A^Ty=b,\quad y\geq0
ATy=b,y≥0
那么,上述两式有且仅一组有解。