《动手学——凸优化》笔记

优化与深度学习

优化与估计

尽管优化方法可以最小化深度学习中的损失函数值,但本质上优化方法达到的目标与深度学习的目标并不相同。

  • 优化方法目标:训练集损失函数值
  • 深度学习目标:测试集损失函数值(泛化性)
    在这里插入图片描述

优化在深度学习中的挑战

  1. 局部最小值
  2. 鞍点
  3. 梯度消失

局部最小值

f ( x ) = x cos ⁡ π x f(x) = x\cos \pi x f(x)=xcosπx
在这里插入图片描述

鞍点

在这里插入图片描述

A = [ ∂ 2 f ∂ x 1 2 ∂ 2 f ∂ x 1 ∂ x 2 ⋯ ∂ 2 f ∂ x 1 ∂ x n ∂ 2 f ∂ x 2 ∂ x 1 ∂ 2 f ∂ x 2 2 ⋯ ∂ 2 f ∂ x 2 ∂ x n ⋮ ⋮ ⋱ ⋮ ∂ 2 f ∂ x n ∂ x 1 ∂ 2 f ∂ x n ∂ x 2 ⋯ ∂ 2 f ∂ x n 2 ] A=\left[\begin{array}{cccc}{\frac{\partial^{2} f}{\partial x_{1}^{2}}} & {\frac{\partial^{2} f}{\partial x_{1} \partial x_{2}}} & {\cdots} & {\frac{\partial^{2} f}{\partial x_{1} \partial x_{n}}} \\ {\frac{\partial^{2} f}{\partial x_{2} \partial x_{1}}} & {\frac{\partial^{2} f}{\partial x_{2}^{2}}} & {\cdots} & {\frac{\partial^{2} f}{\partial x_{2} \partial x_{n}}} \\ {\vdots} & {\vdots} & {\ddots} & {\vdots} \\ {\frac{\partial^{2} f}{\partial x_{n} \partial x_{1}}} & {\frac{\partial^{2} f}{\partial x_{n} \partial x_{2}}} & {\cdots} & {\frac{\partial^{2} f}{\partial x_{n}^{2}}}\end{array}\right] A=x122fx2x12fxnx12fx1x22fx222fxnx22fx1xn2fx2xn2fxn22f

在一个一阶偏导数为0的点上,若Hessian矩阵的特征值都为正数,则是局部最小值点;都为负数,为局部最大值点;有正有负,为鞍点。

例:下图,在一个方向上是局部最大值点,另一个方向上是局部最小值点。而其显然不是全局最小值,但一阶偏导数又为0,所以是一个鞍点。
在这里插入图片描述

梯度消失

函数值平稳,梯度很小,这样的函数会对梯度下降算法造成麻烦。

如图,初始点在最右边,往左移动很难移动,需要经过很长时间才会到达梯度较大的点。会让梯度下降算法进行得很缓慢。
在这里插入图片描述

凸性 (Convexity)

凸性对应到函数中就是凸函数。为什么研究凸函数——因为凸函数情境下,对算法的分析会比较简单

基础

集合的凸性

1-3 凸集合:对于集合内任意两个点,它的连线上所有的点都在集合内,则该集合是一个凸集合。
4-6 凸集合的交集仍然是凸集合。
7-8 两个凸集合的并不一定是凸集合。
Image Name
Image Name
Image Name

函数的凸性

下图:是凸函数,不是凸函数,是凸函数
在这里插入图片描述

Jensen 不等式

∑ i α i f ( x i ) ≥ f ( ∑ i α i x i )  and  E x [ f ( x ) ] ≥ f ( E x [ x ] ) \sum_{i} \alpha_{i} f\left(x_{i}\right) \geq f\left(\sum_{i} \alpha_{i} x_{i}\right) \text { and } E_{x}[f(x)] \geq f\left(E_{x}[x]\right) iαif(xi)f(iαixi) and Ex[f(x)]f(Ex[x])

对于凸函数:函数值的期望>函数的期望值

凸函数的性质

  1. 无局部极小值
  2. 凸函数与凸集的关系
  3. 判定函数是凸函数的二阶充要条件

无局部最小值

反证:假设存在 x ∈ X x \in X xX 是局部最小值,则存在全局最小值 x ′ ∈ X x' \in X xX, 使得 f ( x ) > f ( x ′ ) f(x) > f(x') f(x)>f(x), 则对 λ ∈ ( 0 , 1 ] \lambda \in(0,1] λ(0,1]:

f ( x ) > λ f ( x ) + ( 1 − λ ) f ( x ′ ) f(x)>\lambda f(x)+(1-\lambda) f(x^{\prime}) f(x)>λf(x)+(1λ)f(x)

函数值的期望≥期望的函数值
λ f ( x ) + ( 1 − λ ) f ( x ′ ) ≥ f ( λ x + ( 1 − λ ) x ′ ) \lambda f(x)+(1-\lambda) f(x^{\prime}) \geq f(\lambda x+(1-\lambda) x^{\prime}) λf(x)+(1λ)f(x)f(λx+(1λ)x)


f ( x ) > f ( λ x + ( 1 − λ ) x ′ ) f(x)>f(\lambda x+(1-\lambda) x^{\prime}) f(x)>f(λx+(1λ)x)
与f(x)是局部最小值矛盾

凸函数与凸集的关系

(如何从凸函数导出凸集)
对于凸函数 f ( x ) f(x) f(x),定义集合 S b : = { x ∣ x ∈ X  and  f ( x ) ≤ b } S_{b}:=\{x | x \in X \text { and } f(x) \leq b\} Sb:={xxX and f(x)b},则集合 S b S_b Sb 为凸集

证明:对于点 x , x ′ ∈ S b x,x' \in S_b x,xSb, 有 f ( λ x + ( 1 − λ ) x ′ ) ≤ λ f ( x ) + ( 1 − λ ) f ( x ′ ) ≤ b f\left(\lambda x+(1-\lambda) x^{\prime}\right) \leq \lambda f(x)+(1-\lambda) f\left(x^{\prime}\right) \leq b f(λx+(1λ)x)λf(x)+(1λ)f(x)b, 故 λ x + ( 1 − λ ) x ′ ∈ S b \lambda x+(1-\lambda) x^{\prime} \in S_{b} λx+(1λ)xSb

x和x’连线上的任意一点都在这个集合内,所以说是一个凸集。

反例:下图函数对应的集合是在下面投影的高线,f(x)<b比如是两个紫色的圆,是分离开的,显然不是凸集。
在这里插入图片描述

判定函数是凸函数的二阶充要条件

f ′ ′ ( x ) ≥ 0 ⟺ f ( x ) f^{''}(x) \ge 0 \Longleftrightarrow f(x) f(x)0f(x) 是凸函数

必要性 ( ⇐ \Leftarrow ):

对于凸函数:

1 2 f ( x + ϵ ) + 1 2 f ( x − ϵ ) ≥ f ( x + ϵ 2 + x − ϵ 2 ) = f ( x ) \frac{1}{2} f(x+\epsilon)+\frac{1}{2} f(x-\epsilon) \geq f\left(\frac{x+\epsilon}{2}+\frac{x-\epsilon}{2}\right)=f(x) 21f(x+ϵ)+21f(xϵ)f(2x+ϵ+2xϵ)=f(x)

对于凸函数有函数值的期望大于等于期望的函数值,

故:

f ′ ′ ( x ) = lim ⁡ ε → 0 f ( x + ϵ ) − f ( x ) ϵ − f ( x ) − f ( x − ϵ ) ϵ ϵ f^{\prime \prime}(x)=\lim _{\varepsilon \rightarrow 0} \frac{\frac{f(x+\epsilon) - f(x)}{\epsilon}-\frac{f(x) - f(x-\epsilon)}{\epsilon}}{\epsilon} f(x)=ε0limϵϵf(x+ϵ)f(x)ϵf(x)f(xϵ)

f ′ ′ ( x ) = lim ⁡ ε → 0 f ( x + ϵ ) + f ( x − ϵ ) − 2 f ( x ) ϵ 2 ≥ 0 f^{\prime \prime}(x)=\lim _{\varepsilon \rightarrow 0} \frac{f(x+\epsilon)+f(x-\epsilon)-2 f(x)}{\epsilon^{2}} \geq 0 f(x)=ε0limϵ2f(x+ϵ)+f(xϵ)2f(x)0

充分性 ( ⇒ \Rightarrow ):

a < x < b a < x < b a<x<b f ( x ) f(x) f(x) 上的三个点,由拉格朗日中值定理:

f ( x ) − f ( a ) = ( x − a ) f ′ ( α )  for some  α ∈ [ a , x ]  and  f ( b ) − f ( x ) = ( b − x ) f ′ ( β )  for some  β ∈ [ x , b ] \begin{array}{l}{f(x)-f(a)=(x-a) f^{\prime}(\alpha) \text { for some } \alpha \in[a, x] \text { and }} \\ {f(b)-f(x)=(b-x) f^{\prime}(\beta) \text { for some } \beta \in[x, b]}\end{array} f(x)f(a)=(xa)f(α) for some α[a,x] and f(b)f(x)=(bx)f(β) for some β[x,b]

ps:拉格朗日中值定理函数上,a和x两点的斜率,等于a到x这段函数上某点的导数相等。

根据单调性,有 f ′ ( β ) ≥ f ′ ( α ) f^{\prime}(\beta) \geq f^{\prime}(\alpha) f(β)f(α), 故:

f ( b ) − f ( a ) = f ( b ) − f ( x ) + f ( x ) − f ( a ) = ( b − x ) f ′ ( β ) + ( x − a ) f ′ ( α ) ≥ ( b − a ) f ′ ( α ) \begin{aligned} f(b)-f(a) &=f(b)-f(x)+f(x)-f(a) \\ &=(b-x) f^{\prime}(\beta)+(x-a) f^{\prime}(\alpha) \\ & \geq(b-a) f^{\prime}(\alpha) \end{aligned} f(b)f(a)=f(b)f(x)+f(x)f(a)=(bx)f(β)+(xa)f(α)(ba)f(α)
在这里插入图片描述

限制条件

有限制条件的函数如何完成优化的

minimize ⁡ x f ( x )  subject to  c i ( x ) ≤ 0  for all  i ∈ { 1 , … , N } \begin{array}{l}{\underset{\mathbf{x}}{\operatorname{minimize}} f(\mathbf{x})} \\ {\text { subject to } c_{i}(\mathbf{x}) \leq 0 \text { for all } i \in\{1, \ldots, N\}}\end{array} xminimizef(x) subject to ci(x)0 for all i{1,,N}

拉格朗日乘子法

Boyd & Vandenberghe, 2004

L ( x , α ) = f ( x ) + ∑ i α i c i ( x )  where  α i ≥ 0 L(\mathbf{x}, \alpha)=f(\mathbf{x})+\sum_{i} \alpha_{i} c_{i}(\mathbf{x}) \text { where } \alpha_{i} \geq 0 L(x,α)=f(x)+iαici(x) where αi0

惩罚项

欲使 c i ( x ) ≤ 0 c_i(x) \leq 0 ci(x)0, 将项 α i c i ( x ) \alpha_ic_i(x) αici(x) 加入目标函数,如多层感知机章节中的 λ 2 ∣ ∣ w ∣ ∣ 2 \frac{\lambda}{2} ||w||^2 2λw2

投影

Proj ⁡ X ( x ) = argmin ⁡ x ′ ∈ X ∥ x − x ′ ∥ 2 \operatorname{Proj}_{X}(\mathbf{x})=\underset{\mathbf{x}^{\prime} \in X}{\operatorname{argmin}}\left\|\mathbf{x}-\mathbf{x}^{\prime}\right\|_{2} ProjX(x)=xXargminxx2
在这里插入图片描述

习题

  1. 优化方法的目标是最小化_____损失函数值,深度学习的目标是最小化_______损失函数值。 a

    训练集,测试集
    训练集,训练集
    测试集,测试集
    测试集,训练集

    ________属于优化在深度学习中面临的挑战。 d

    局部最小值
    鞍点
    梯度消失
    以上都是

    以下对多维变量的鞍点描述正确的是:_______。 a

    鞍点是对所有自变量一阶偏导数都为0,且Hessian矩阵特征值有正有负的点
    鞍点是对所有自变量一阶偏导数都为0,且Hessian矩阵特征值都为0的点
    鞍点是对所有自变量一阶偏导数有正有负,且Hessian矩阵特征值都为0的点
    鞍点是对所有自变量一阶偏导数有正有负,且Hessian矩阵特征值有正有负的点

    假设A和B都是凸集合,那以下是凸集合的是:________。 a

    A和B的交集
    A和B的并集
    A和B的交集和并集都是
    A和B的交集和并集都不是

    有限制条件的优化问题可以用什么方法解决:_______。 d

    拉格朗日乘子法
    添加惩罚项
    投影法
    以上都是

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值