最小二乘法和梯度下降法有哪些區別?

2021-08-27 23:57:43 字數 1413 閱讀 6113

最小二乘法的目標:求誤差的最小平方和,對應有兩種:線性和非線性。線性最小二乘的解是closed-form即

迭代法,即在每一步update未知量逐漸逼近解,可以用於各種各樣的問題(包括最小二乘),比如求的不是誤差的最小平方和而是最小立方和。

梯度下降是迭代法的一種,可以用於求解最小二乘問題(線性和非線性都可以)。高斯-牛頓法是另一種經常用於求解非線性最小二乘的迭代法(一定程度上可視為標準非線性最小二乘求解方法)。

還有一種叫做levenberg-marquardt的迭代法用於求解非線性最小二乘問題,就結合了梯度下降和高斯-牛頓法。

所以如果把最小二乘看做是優化問題的話,那麼梯度下降是求解方法的一種,

這裡,基於線性回歸,有兩個細節比較重要:

第一,線性回歸的模型假設,這是最小二乘方法的優越性前提,否則不能推出最小二乘是最佳(即方差最小)的無偏估計,具體請參考高斯-馬爾科夫定理。特別地,當隨機雜訊服從正態分佈時,最小二乘與最大似然等價。

第二,由於是線性回歸/擬合,因此可以很容易的求出全域性最優的閉式解close form solution,也即我們通常看到的那幾個矩陣形式,給了input data可以一步到位算擬合引數,而不是像梯度下降法或者牛頓法那樣一點點地迭代優化調參最後到達極值點。

而廣義的最小二乘,指的是上文提到過的最小二乘準則,本質上是一種evaluation rule或者說objective funcion,這裡的「最小二乘法」應叫做「最小二乘法則」或者「最小二乘準則」,英文可呼為lse(least square error)

舉個例子,我要優化乙個深度神經網路dnn(deep neural network)的網路引數(換言之,優化此網路對於已知資料擬合結果的正確性),可不可以用最小二乘準則去衡量某一擬合結果相對於標準答案的偏差程度呢?可以。而同時,由於dnn模型本身的複雜性,我們沒有辦法像線性擬合時那樣,在理論和公式的層面求出乙個close form solution,因此需要引入所謂的bp演算法(實質上就是梯度下降法)進行引數的迭代求解。

but(^_^),上面雖然給出了最小二乘準則+梯度下降法串聯使用的例子,但實際的擬合效果必定會比較一般,原因在於dnn這一體系相當於非線性回歸,因此最小二乘不好,反而是logistic回歸+最大似然=交叉熵準則cross entropy在dnn引數優化演算法中的更有效和廣泛一些。當然,這就是另乙個話題了。

綜上:狹義的最小二乘方法,是線性假設下的一種有閉式解的引數求解方法,最終結果為全域性最優;

梯度下降法,是假設條件更為廣泛(無約束)的,一種通過迭代更新來逐步進行的引數優化方法,最終結果為區域性最優;

廣義的最小二乘準則,是一種對於偏差程度的評估準則,與上兩者不同。

水平所限,歡迎討論指正。

最小二乘法和梯度下降法有哪些區別?

最小二乘法的目標 求誤差的最小平方和,對應有兩種 線性和非線性。線性最小二乘的解是closed form即 迭代法,即在每一步update未知量逐漸逼近解,可以用於各種各樣的問題 包括最小二乘 比如求的不是誤差的最小平方和而是最小立方和。梯度下降是迭代法的一種,可以用於求解最小二乘問題 線性和非線性...

最小二乘法和梯度下降法

通過這段描述可以看出來,最小二乘法也是一種優化方法,求得目標函式的最優值。並且也可以用於曲線擬合,來解決回歸問題。難怪 統計學習方法 中提到,回歸學習最常用的損失函式是平方損失函式,在此情況下,回歸問題可以著名的最小二乘法來解決。看來最小二乘法果然是機器學習領域做有名和有效的演算法之一。二.最小二乘...

最小二乘法以及最小二乘法和梯度下降法的區別

通過這段描述可以看出來,最小二乘法也是一種優化方法,求得目標函式的最優值。並且也可以用於曲線擬合,來解決回歸問題。難怪 統計學習方法 中提到,回歸學習最常用的損失函式是平方損失函式,在此情況下,回歸問題可以著名的最小二乘法來解決。看來最小二乘法果然是機器學習領域做有名和有效的演算法之一。二.最小二乘...