优化理论05----最速下降法最速下降法思想python实现
Posted 炫云云
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了优化理论05----最速下降法最速下降法思想python实现相关的知识,希望对你有一定的参考价值。
无约束优化-----最速下降法
文章目录
最优化知识笔记整理汇总,超级棒
最速下降法思想
无约束最优化问题:
(
P
)
min
f
(
x
)
s.t.
x
∈
X
⊆
R
n
\\begin{aligned} (P) ~ ~ ~ \\min &~ ~ ~ f(x)\\\\ \\text{s.t.} &~ ~ ~x ∈ X ⊆ R^n \\end{aligned}
(P) mins.t. f(x) x∈X⊆Rn
其中f(x)是可微的。如果
x
=
x
ˉ
x = \\bar{x}
x=xˉ是一个给定的点,在
∥
d
∥
\\|d\\|
∥d∥足够小的时候,f(x)可近似为:
f
(
x
ˉ
+
d
)
≈
f
(
x
ˉ
)
+
▽
f
(
x
ˉ
)
T
d
(1)
f(\\bar{x}+d) \\approx f(\\bar{x}) + \\triangledown f(\\bar{x})^Td\\tag{1}
f(xˉ+d)≈f(xˉ)+▽f(xˉ)Td(1)
现在请注意,如果上面表达式的近似是好的,那么我们要选择
d
d
d使得内积
▽
f
(
x
ˉ
)
T
d
\\triangledown f(\\bar{x})^Td
▽f(xˉ)Td 也是足够小的。
函数
f
(
x
)
f(x)
f(x) 在点x处沿方向d的变化率可用方向导数表 示,当函数可微时有,方向导数
D
f
(
x
,
d
)
=
∇
f
(
x
)
T
d
(2)
D f(x, d)=\\nabla f(x)^{T} d\\tag{2}
Df(x,d)=∇f(x)Td(2)
求函数
f
(
x
)
f(x)
f(x)在点
x
x
x处下降最快的方向,归结为求
min
∇
f
(
x
)
T
d
s.t
∥
d
∥
≤
1
(3)
\\begin{array}{l} \\min \\quad \\nabla f(x)^{T} d \\\\ \\text { s.t } \\quad\\|d\\| \\leq 1 \\end{array}\\tag{3}
min∇f(x)Td s.t ∥d∥≤1(3)
由Schwartz不等式,
∣
∇
f
(
x
)
T
d
∣
≤
∥
∇
f
(
x
)
∥
∥
d
∥
≤
∥
∇
f
(
x
)
∥
\\left|\\nabla f(x)^{T} d\\right| \\leq\\|\\nabla f(x)\\|\\|d\\| \\leq\\|\\nabla f(x)\\|
∣∣∇f(x)Td∣∣≤∥∇f(x)∥∥d∥≤∥∇f(x)∥
⇒
∇
f
(
x
)
T
d
≥
−
∥
∇
f
(
x
)
∥
\\Rightarrow \\nabla f(x)^{T} d \\geq-\\|\\nabla f(x)\\|
⇒∇f(x)Td≥−∥∇f(x)∥
让我们把d标准化
∥
d
∥
=
1
\\|d\\|=1
∥d∥=1。在所有方向标椎化
∥
d
∥
=
1
\\|d\\|=1
∥d∥=1,所以当方向为:
d
~
=
−
▽
f
(
x
ˉ
)
∥
▽
f
(
x
ˉ
)
∥
(4)
\\tilde{d}=\\frac{- \\triangledown f(\\bar{x})}{\\|\\triangledown f(\\bar{x})\\|}\\tag{4}
d~=∥▽f(xˉ)∥−▽f(xˉ)(4)
时(4)的等号成立,使其与梯度
▽
f
(
x
ˉ
)
\\triangledown f(\\bar{x})
▽f(xˉ)的内积最小。这一事实源自下列不等式:
▽
f
(
x
ˉ
)
T
d
≥
−
∥
▽
f
(
x
ˉ
)
∥
∥
d
∥
=
▽
f
(
x
ˉ
)
T
(
−
▽
f
(
x
ˉ
)
∥
▽
f
(
x
ˉ
)
∥
)
=
−
▽
f
(
x
ˉ
)
T
d
~
(5)
\\triangledown f(\\bar{x})^Td \\geq -\\|\\triangledown f(\\bar{x})\\|\\|d\\| =\\triangledown f(\\bar{x})^T\\left (\\frac{- \\triangledown f(\\bar{x})}{\\|\\triangledown f(\\bar{x})\\|} \\right ) = -\\triangledown f(\\bar{x})^T\\tilde{d}\\tag{5}
▽f(xˉ)Td≥−∥▽f(xˉ)∥∥d∥=▽f(xˉ)T(∥▽f(xˉ)∥−▽f(xˉ))=−▽f(xˉ)Td~(5)
因此未归一化方向为:
d
ˉ
=
−
▽
f
(
x
ˉ
)
(6)
\\bar{d}=-\\triangledown f(\\bar{x})\\tag{6}
dˉ=−▽f(xˉ)(6)
称为
x
ˉ
\\bar{x}
xˉ处的最速下降方向。
注意, d ˉ = − ▽ f ( x ˉ ) \\bar{d}=-\\triangledown f(\\bar{x}) dˉ=−▽f(xˉ)是一个只要 ▽ f ( x ˉ ) ≠ 0 \\triangledown f(\\bar{x}) \\neq0 ▽f(xˉ)=0的下降方向。可以看出, d ˉ T ▽ f ( x ˉ ) = − ( ▽ f ( x ˉ ) ) T ▽ f ( x ˉ ) < 0 \\bar{d}^T\\triangledown f(\\bar{x})=-(\\triangledown f(\\bar{x}))^T\\triangledown f(\\bar{x})<0 dˉT▽f(xˉ)=−(▽f(xˉ))T▽f(xˉ)<0,只要 ▽ f ( x ˉ ) ≠ 0 \\triangledown f(\\bar{x}) \\neq0 ▽f(xˉ)=0。
最速下降法的目标函数
所谓的最速下降法,就是在确定下降方向后,从下降方向中找到下降程度最大的一点进行下降。
梯度下降法是先求出梯度,再根据预先设定的learning rate完成下降,那么就完成了一轮的优化;
而最速下降法在求出梯度之后,要进行另外一个 最 小 化 优 化 问 题 \\large\\color{#70f3ff}{\\boxed{\\color{green}{最小化优化问题}}} 最小化最速梯度下降
优化理论09-----线性等式约束问题的投影方法投影最速下降算法解决方向查找问题(DFP)牛顿法的修正在线性等式约束变度量法