智能计算数学基础——下降法求解无约束条件优化问题

1、无约束条件优化

考虑无约束条件优化问题: m i n i m i z e x ∈ D f ( x ) \underset{x\in D}{minimize} f(x) xDminimizef(x)目标是找到一个 x ∗ x^* x,使得 ∀ x ∈ D , f ( x ∗ ) ≤ f ( x ) \forall x \in D,f(x^*)≤f(x) xD,f(x)f(x)。这里的 x ∗ x^* x f ( x ) f(x) f(x)的极小值点,也是优化问题的解。

一般优化问题是比较难求解的,常采用下降的方法。
即,从某一个起始点开始,一点一点地下降,去找 x ∗ x^* x,可以形式化表示为: f ( x 0 ) ≥ f ( x 1 ) ≥ f ( x 2 ) ≥ . . . ≥ f ( x k ) ≥ f ( x k + 1 ) ≥ . . . f(x_0)≥f(x_1)≥f(x_2)≥...≥f(x_k)≥f(x_{k+1})≥... f(x0)f(x1)f(x2)...f(xk)f(xk+1)...,在某一步之后,我们就认定 x k = x ∗ x_k=x^* xk=x

2、下降法

2.1、下降法的核心问题

下降法的核心问题是:如何来下降。
在这里插入图片描述
x x x出发,找到一个偏移量 Δ x \Delta x Δx,使得函数值是下降的,即: f ( x ) ≥ f ( x + Δ x ) f(x)≥f(x+\Delta x) f(x)f(x+Δx)
最简单的方法是:梯度下降。

2.2、梯度下降法(Gradient Descent,GD)

根据一阶Taylor展开,
x x x为一元变量, x ∈ R x \in R xR时, f ( x + Δ x ) ≈ f ( x ) + f ′ ( x ) Δ x f(x+\Delta x)≈f(x)+f'(x)\Delta x f(x+Δx)f(x)+f(x)Δx,其中, x x x为常量, Δ x \Delta x Δx为变量。
其实,更常用的是 x x x为多元变量, x ∈ R n x\in R^n xRn,这时,
f ( x + Δ x ) ≈ f ( x ) + a t Δ x (1) f(x+\Delta x)≈f(x)+a^t\Delta x\tag{1} f(x+Δx)f(x)+atΔx(1),其中, a = ∇ f ( x ) a=\nabla f(x) a=f(x),是一个常向量。
f f f x x x附近就近似地看成了一个线性函数。

下降要满足条件: f ( x ) > f ( x + Δ x ) f(x)>f(x+\Delta x) f(x)f(x+Δx),一个办法就是,使 Δ x \Delta x Δx变化让 f ( x + Δ x ) f(x+\Delta x) f(x+Δx)尽可能小即可。
梯度下降就是采用的这种方式,形式化表示为:
m i n ∣ ∣ Δ x ∣ ∣ ≤ ε f ( x + Δ x ) (2) \underset{||\Delta x|| ≤ \varepsilon}{min}f(x+\Delta x)\tag{2} Δxεminf(x+Δx)(2)
其中, ε \varepsilon ε是给定的一个很小的正量, ∣ ∣ Δ x ∣ ∣ ≤ ε ||\Delta x|| ≤ \varepsilon Δxε表示 x + Δ x x+\Delta x x+Δx是在 x x x的附近取值。
x x x分别为一维、二维、三维时, x + Δ x x+\Delta x x+Δx的范围如下图所示:
在这里插入图片描述
根据(1)(2),可推导出
m i n ∣ ∣ Δ x ∣ ∣ ≤ ε f ( x ) + a t Δ x (3) \underset{||\Delta x|| ≤ \varepsilon}{min}f(x)+a^t\Delta x\tag{3} Δxεminf(x)+atΔx(3)
由于 f ( x ) f(x) f(x)是常量,所以有
(3)  ⇔ m i n ∣ ∣ Δ x ∣ ∣ ≤ ε a t Δ x \Leftrightarrow\underset{||\Delta x|| ≤ \varepsilon}{min}a^t\Delta x ΔxεminatΔx,有解且有解析解。

解析解:解能以公式写出来。

由Cauchy不等式 ∣ ∣ < a , b > ∣ ∣ 2 ≤ ∣ ∣ a ∣ ∣ 2 ∣ ∣ b ∣ ∣ 2 ||<a,b>||^2≤||a||^2||b||^2 <a,b>2a2b2成立,当且仅当, a , b a,b a,b在一条直线上,即 a , b a,b a,b线性相关,继续往下推。
因此,使得 a t Δ x = < a , Δ x > ≥ − ∣ ∣ a ∣ ∣ ⋅ ∣ ∣ Δ x ∣ ∣ ≥ − ∣ ∣ a ∣ ∣ ⋅ ε a^t\Delta x=<a,\Delta x>≥-||a||·||\Delta x||≥-||a||·\varepsilon atΔx=<a,Δx>aΔxaε成立的条件为, a , Δ x a,\Delta x a,Δx线性相关,又由于 < a , Δ > <a,\Delta> <a,Δ>是一个负数,所以 a , Δ x a,\Delta x a,Δx线性负相关,形式化表示为: Δ x = − λ a \Delta x = -\lambda a Δx=λa
其中, λ \lambda λ是正数,为学习率, a a a为梯度。
总结: 梯度下降是怎么选 Δ x \Delta x Δx的呢?即沿着负梯度方向走一点。

2.3、牛顿法(Newton法)

Newton法认为1阶Taylor展开并不是那么精确,采用2阶Taylor展开。
f ( x + Δ x ) ≈ f ( x ) + a t Δ x + 1 2 ( Δ x ) t p Δ x (4) f(x+\Delta x)≈f(x)+a^t\Delta x+\frac{1}{2}(\Delta x)^tp\Delta x\tag{4} f(x+Δx)f(x)+atΔx+21(Δx)tpΔx(4)
其中, a a a为梯度, p p p是一个矩阵。
m i n ∣ ∣ Δ x ∣ ∣ ≤ ε f ( x + Δ x ) (5) \underset{||\Delta x|| ≤ \varepsilon}{min}f(x+\Delta x)\tag{5} Δxεminf(x+Δx)(5)
m i n ∣ ∣ Δ x ∣ ∣ ≤ ε f ( x ) + a t Δ x + 1 2 ( Δ x ) t p Δ x (6) \underset{||\Delta x|| ≤ \varepsilon}{min}f(x)+a^t\Delta x+\frac{1}{2}(\Delta x)^tp\Delta x\tag{6} Δxεminf(x)+atΔx+21(Δx)tpΔx(6)
很显然, f ( x ) + a t Δ x + 1 2 ( Δ x ) t p Δ x f(x)+a^t\Delta x+\frac{1}{2}(\Delta x)^tp\Delta x f(x)+atΔx+21(Δx)tpΔx是一个关于 Δ x \Delta x Δx的二次函数,Newton法是通过求这个二次函数的最小值,找到 Δ x \Delta x Δx

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值