![](https://i-blog.csdnimg.cn/blog_migrate/2825758d5e39569b0640ff024a4ea756.png)
第一个核心点:精确一维搜索求步长
λ
{\lambda }
λ ?
λ
k
=
arg
min
f
(
x
k
+
λ
d
k
)
{\lambda _k} = \arg \min f({x^k} + \lambda {d^k})
λk=argminf(xk+λdk)
具体看附录的例题。
第二个核心点:搜索方向 d k {d^k} dk?
最速下降法/随机梯度下降
d k = − 1 ∗ ∇ f ( x k ) {d^k} = - 1*\nabla f({x^k}) dk=−1∗∇f(xk)
注意,相邻两次迭代的搜索方向正交
牛顿法(步长为常数1)
d k = − ( ∇ 2 f ( x k ) ) − 1 ∇ f ( x k ) {d^k} = - {({\nabla ^2}f({x^k}))^{ - 1}}\nabla f({x^k}) dk=−(∇2f(xk))−1∇f(xk)
阻尼牛顿法
搜索方向和牛顿法一样,只不过步长采用精确一位搜索得到
牛顿法得计算hessen矩阵,麻烦,咋整呢?
共轭梯度法
注意下面的 p k {p^k} pk就是搜索方向,相当于上面的 d k {d^k} dk
![](https://i-blog.csdnimg.cn/blog_migrate/6609a59d09a452eb6b7e4e96a8ccb136.png)
拟牛顿法(DFP和BFGS):由牛顿法思想出发的一类方法
DFP算法:用 H k {H_k} Hk逼近海塞矩阵
![](https://i-blog.csdnimg.cn/blog_migrate/c975241f11f56a5418fca27ec2543e37.png)
BFGS算法:用 B k {B_k} Bk逼近海塞矩阵
![](https://i-blog.csdnimg.cn/blog_migrate/5a26db678a25365b22cca5d10089f861.png)
附录:
![](https://i-blog.csdnimg.cn/blog_migrate/972e9fe380d7bbccbbac80452f34b71a.png)
![](https://i-blog.csdnimg.cn/blog_migrate/2a224ec68142163c60bcaa1b599cc57a.png)
![](https://i-blog.csdnimg.cn/blog_migrate/e71a121159732d5d673fa1f2772bd497.png)