#最优化计算方法
本文记录了博主在学习《最优化计算方法》时的总结,主要侧重于与深度学习相关的内容,更新于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∈Rnx\in \mathbb R^nxRn称为决策向量,函数f:Rn→Rf:\mathbb R^n \to \mathbb Rf:RnR称为目标函数,函数ci(⋅)(i∈I)c_i(\cdot)(i \in I)ci()(iI)称为不等式约束函数,函数ci(⋅)(i∈E)c_i(\cdot)(i\in E)ci()(iE)称为等式约束函数,不等式ci(x)≥0(i∈I)c_i(x)\geq0(i\in I)ci(x)0(iI)称为不等式约束,方程ci(x)=0(i∈E)c_i(x)=0(i\in E)ci(x)=0(iE)称为等式约束,III称为不等式约束的指标集,EEE称为等式约束的指标集。记:

\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 FF为上述最优化问题的可行域,F\mathscr FF中的每个点xxx称为上述最优化问题的一个可行点。若F=∅\mathscr F=\varnothingF=,则称上述最优化问题不可行;否则,称问题是可行的。

因此,上述最优化问题就是在可行域F\mathscr FF中找到一个点xxx,使其对应的f(x)f(x)f(x)的值不大于任何其他F\mathscr FF中的点对应的目标函数值。

**定义:**假设可行域F\mathscr FF由上式给出:
(i)若x∗∈Fx^*\in \mathscr FxF,且对所有的x∈Fx\in \mathscr FxF恒有f(x∗)≤f(x)f(x^*)\leq f(x)f(x)f(x),则称x∗x^*x为上述最优化问题的一个全局解;
(ii)若x∗∈Fx^*\in \mathscr FxF,且对所有的x∈F/ x∗x\in \mathscr F/\ {x^*}xF/ x恒有f(x∗)&lt;f(x)f(x^*)\lt f(x)f(x)<f(x),则称x∗x^*x为上述最优化问题的严格全局最优解;
(iii)若x∗∈Fx^*\in \mathscr FxF,且存在x∗x^*x的某个邻域
Nε(x∗)&quot;={x∈Rn∣∥x−x∗∥&lt;ε},ε为正实数且∥⋅∥表示某种范数\mathscr N_\varepsilon (x^*)&quot;=\left\{x\in \mathbb R^n \left\vert \Vert x-x^*\Vert \lt \varepsilon \right. \right\},\varepsilon 为正实数且\Vert\cdot\Vert表示某种范数Nε(x)"={xRnxx<ε}ε
使得对所有的x∈F∩Nε(x∗)x\in \mathscr F \cap\mathscr N_\varepsilon(x^*)xFNε(x)恒有f(x∗)≤f(x)f(x^*)\leq f(x)f(x)f(x),那么称x∗x^*x为上述最优化问题的一个局部最优解。
(iv)若x∗∈Fx^*\in \mathscr FxF,且存在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^*}xFNε(x)/ x恒有f(x∗)&lt;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∈Rnx\in \mathbb R^nxRn是指xxx具有如下形式:

\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∈Rnx,y\in \mathbb R^nx,yRn,常用的内积⟨x,y⟩\langle x,y\ranglex,y定义为:
⟨x,y⟩:=∑i=1nxiyi=xTy\langle x,y\rangle:=\sum_{i=1}^nx_iy_i=x^Tyx,y:=i=1nxiyi=xTy

常用的向量范数:
l1−范数l_1-范数l1∥x∥1=∑i=1n∣xi∣\Vert x\Vert_1=\sum_{i=1}^n\vert x_i\vertx1=i=1nxi
l2−范数l_2-范数l2∥x∥2=xTx=∑i=1nxi2\Vert x\Vert_2=\sqrt{x^Tx}=\sqrt{\sum_{i=1}^nx_i^2}x2=xTx =i=1nxi2
l∞−范数l_\infty-范数l∥x∥∞=max⁡{∣xi∣∣i∈{1,2,⋅⋅⋅,n}}\Vert x\Vert_\infty=\max \{\vert x_i\vert \vert i\in \{1,2,\cdot\cdot\cdot,n\}\}x=max{xii{1,2,,n}}

一般地,对于p∈[1,∞)p\in \left[1,\infty\right)p[1,)lp−范数l_p-范数lp定义为:
∥xp∥=(∑i=1n∣xi∣p)1/p\Vert x_p \Vert=\left( \sum_{i=1}^n\vert x_i\vert^p\right)^{1/p}xp=(i=1nxip)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 _\inftyxx2x1nx

常用的矩阵范数
假设A∈Rn×nA\in \mathbb R^{n\times n}ARn×n是对称正定矩阵,那么向量的椭球范数∥⋅∥A\Vert\cdot\Vert_AA定义如下:
∥x∥A:=xTAx,∀x∈Rn\Vert x \Vert _A:=\sqrt{x^TAx},\quad\forall x \in \mathbb R^nxA:=xTAx ,xRn

对于任意的A=(aij)n×n∈Rn×nA=(a_{ij})_{n\times n}\in \mathbb R^{n\times n}A=(aij)n×nRn×n,常用的矩阵范数是Frobenius范数,定义为:
∥A∥F:=∑i=1n∑j=1naij2=Tr(ATA)\Vert A\Vert _F:=\sqrt{\sum_{i=1}^n\sum_{j=1}^na_{ij}^2}=\sqrt{Tr(A^TA)}AF:=i=1nj=1naij2 =Tr(ATA)
其中,Tr(ATA)Tr(A^TA)Tr(ATA)表示矩阵ATAA^TAATA的迹,即ATAA^TAATA的所有主对角线元素之和,也等于ATAA^TAATA的所有特征值之和。

另一个常用的矩阵范数是由向量所诱导的矩阵范数,也称算子范数,定义为:
∥A∥:=max⁡x∈Rn/ {0}∥Ax∥∥x∥,∀A∈Rn×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:=xRn/ {0}maxxAx,ARn×n
其中,∥⋅∥\Vert \cdot\Vert是某种向量范数。
特别地,对于任意的A∈Rn×nA\in \mathbb R ^{n\times n}ARn×n,有:

  • 由向量l1−范数l_1-范数l1诱导的矩阵范数(列范数)为∥A∥1=max⁡{∑i=1n∣aij∣∣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\}A1=max{i=1naijj{1,2,,n}}
  • 由向量l∞−范数l_\infty-范数l诱导的矩阵范数(行范数)为∥A∥∞=max⁡{∑j=1n∣aij∣∣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=1naiji{1,2,,n}}
  • 由向量l2−范数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)表示矩阵ATAA^TAATA的最大特征值。

矩阵范数满足相容性条件,常用的不等式有Cauchy-Schwarz不等式,广义Cauchy-Schwarz不等式,Young不等式,Holder不等式,Minkowski不等式。

函数的可微性
如果函数fff是二阶连续可微,那么函数fff在点xxx处的二阶导数组成的矩阵称为Hesse阵。
给定多变量向量值函数FFF,如果其在xxx处连续可微,那么函数FFF在点xxx处的一阶导数矩阵称为Jacobi矩阵。

###凸集、凸函数、凸规划
凸集
给定非空集合F⊆Rn\mathscr F \subseteq \mathbb R^nFRn。如果对任意的x,y∈Fx,y\in \mathscr Fx,yF以及任意的实数α∈[0,1]\alpha \in [0,1]α[0,1]都有
αx+(1+α)y∈F\alpha x+(1+\alpha)y\in \mathscr Fαx+(1+α)yF
那么,称F\mathscr FFRn\mathbb R^nRn中的一个凸集。若凸集F\mathscr FF为开集,则称为开凸集;若凸集F\mathscr FF为闭集,则称为闭凸集。

空集∅\varnothing通常被规定为凸集。

凸集分离定理
假设F1,F2⊆Rn\mathscr F_1, \mathscr F_2 \subseteq \mathbb R^nF1,F2Rn为两个非空凸集。如果存在非零向量w∈Rnw\in\mathbb R^nwRn和实数ttt,使得
(i)对任意的x∈F1x\in\mathscr F_1xF1y∈F2y\in \mathscr F_2yF2,都有wTx≥tw^Tx\geq twTxtwTy≤tw^Ty\leq twTyt,则称超平面π:={x∈Rn∣wTx=t}\pi := \{x\in \mathbb R^n \vert w^Tx=t\}π:={xRnwTx=t}分离集合F1\mathscr F_1F1F2\mathscr F_2F2
(ii)对任意的x∈F1x\in\mathscr F_1xF1y∈F2y\in \mathscr F_2yF2,都有wTx&gt;tw^Tx\gt twTx>twTy&lt;tw^Ty\lt twTy<t,则称超平面π:={x∈Rn∣wTx=t}\pi := \{x\in \mathbb R^n \vert w^Tx=t\}π:={xRnwTx=t}严格分离集合F1\mathscr F_1F1F2\mathscr F_2F2

Farkas引理
A∈Rm×nA\in \mathbb R^{m\times n}ARm×nb∈Rnb\in \mathbb R^nbRn,考虑不等式组
Ax≤0,bTx&gt;0Ax\leq0,\quad b^Tx\gt 0Ax0,bTx>0
和等式不等式组
ATy=b,y≥0A^Ty=b,\quad y\geq0ATy=b,y0
那么,上述两式有且仅一组有解。

Logo

有“AI”的1024 = 2048,欢迎大家加入2048 AI社区

更多推荐