1. 程式人生 > >優化演算法之牛頓法(轉)

優化演算法之牛頓法(轉)

一、牛頓法

上述描述的都是隻有一個自變數X的一元情況,如果是多元的,比如x1,x2,x3...,xn 呢?

二、對比分析梯度下降演算法

從本質上去看,牛頓法是二階收斂,梯度下降是一階收斂,所以牛頓法就更快。如果更通俗地說的話,比如你想找一條最短的路徑走到一個盆地的最底部,梯度下降法每次只從你當前所處位置選一個坡度最大的方向走一步,牛頓法在選擇方向時,不僅會考慮坡度是否夠大,還會考慮你走了一步之後,坡度是否會變得更大。所以,可以說牛頓法比梯度下降法看得更遠一點,能更快地走到最底部。(牛頓法目光更加長遠,所以少走彎路;相對而言,梯度下降法只考慮了局部的最優,沒有全域性思想。)

 

注:紅色為牛頓法,綠色為梯度下降法

牛頓法的優缺點總結:

  優點:二階收斂,收斂速度快;

  缺點:牛頓法是一種迭代演算法,每一步都需要求解目標函式的Hessian矩陣的逆矩陣,計算比較複雜。

 

參考連結:https://www.cnblogs.com/ljy2013/p/5129294.html