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

時間 2021-05-07 05:09:00

1樓:東東bh

最小二乘問題: ,當 為線性函式時就是線性最小二乘問題,否則就是非線性最小二乘問題。

線性最小二乘問題: 其中 可以直接通過解析形式求得最優解,既 ,當自變數x的維度不是很高的時候,適合直接用解析形式求最優解,當x維度很高的時候求逆運算量過大,可以採用梯度下降法迭代求解。

非線性最小二乘問題一般都採用迭代方法求解,例如梯度下降法或牛頓法。牛頓法的基本思想是通過迭代求解二階泰勒展開的極值點來尋找最優解。一般來講,牛頓法收斂速度更快(二階收斂),但考慮到要計算Hessian矩陣及其逆矩陣,運算量較大,通過高斯-牛頓法近似減少了一部分計算量,此外,擬牛頓法通過對Hessian矩陣的逆矩陣進行近似進一步降低了計算量。

此外,人工神經網路(ANN)一般採用的也是梯度下降法,只不過是隨機梯度下降法,每次選擇乙個batch 資料進行梯度下降法迭代。對於連續回歸問題經常使用到最小二乘準則來對尋優結果進行評估,也就是我們所說的loss函式,其目標是最小化 ,這裡的 只是為了表示方便,不影響優化結果。事實上,不含啟用函式的並採用最小二乘準則loss的單層神經網路也可以看成是線性最小二乘問題的表示,既線性回歸問題。

對比最小二乘問題求解ANN方法。不同於牛頓法和線性最小二乘法,ANN沒有利用原來問題的解析式分析進而求極值,而是採用ANN這個強大的函式擬合器去擬合目標函式,通過梯度下降法進行優化迭代,以期得到更好的擬合。這裡神經網路有個缺點就是它的形式較為複雜,每乙個引數的意義並不明確(人類很難解釋它),所以可能擬合出來效果很好但人們並不理解每個引數對具體意義。

例如在系統辯識領域,人們希望找到具有特定物理意義的引數值,一般就採用梯度方法或者牛頓法解最小二乘問題,得到具體引數對估計值。而對於複雜而沒有解析形式的推理問題,人們只關心擬合結果及其泛化效能,不關心引數代表什麼意思,通常通常神經網路來尋優,其優點是可以擬合複雜問題,並且適合平行計算。

2樓:小菇涼

最小二乘法、極大似然和交叉熵一樣是用來計算loss的,而梯度下降法是用來優化的,深度學習訓練的時候每一輪都會計算輸出loss然後根據梯度下降法進行優化

3樓:

最小二乘(MSE)法嚴格說算不上一種演算法,而是一種基於正態分佈的最優化準則。當你的標籤y滿足正態分佈的時候,基於最小二乘(平方誤差和最小)這種準則擬合出來的模型是最在統計學意義上接近於真實情況的。不過當y滿足正態分佈的時候,最小二乘和交叉熵是等效的,它們兩個最終求解的結果是一樣的。

梯度下降法是一種求解不帶約束條件的,並且目標函式要一階可微的優化問題的演算法。

總的來說,這兩個沒有什麼可比性,不是同乙個層面的東西。實在要連起來的話,可以這麼說:

線性回歸是一種機器學習模型,這種模型採用最小二乘準則,其優化方法為(1)若 為正定矩陣,直接有閉式解;(2)若為非滿秩矩陣,採用其他二次規劃的方法求解,理論上也可以用梯度下降法,不過這種情況很難遇到。

4樓:江子星

當做筆記回答一下,

Ng在網易雲那個ML已經回答了

正規方程法(Nomal equation method):

不需要選擇

不需要iterations

不適用於更加複雜的演算法,像logistic回歸梯度下降法(Gradient descent)需要選擇

需要很多次iterations

在features很多的情況下執行良好(是million級別的特徵)Ng說一般 小於10000用正規方程比較方便,大於10000就考慮梯度下降了

5樓:Ausar

字面理解即可

二乘即歐式空間距離,目的是求二乘的最小值

最小二乘法用資料解析法求此值,即解方程

梯度下降使用迭代法求此值,隨機取方程上一點,按該點梯度值選擇方向,來靠近二乘最小值

兩者都是求最小值,套用到計算機程式設計上,效能和計算量要適應實際情況選擇

6樓:喬卡

我的理解是:ols原理是極值即損失函式最小值,所以可以輕易達到全域性最優的閉式解close form。

然而它具有多種侷限性:只能解決線性回歸、引數估計時要求xtx可逆(存在x多重共線性下估計效率很差的問題)、矩陣計算量大、需要高斯馬爾科夫條件才能保證blue性質。

所以考慮沒有任何前提假定的迭代法(逼近思想),gd是迭代法的一種。

7樓:黃杰

可以比較一下他們的時間複雜度,單單對於乙個N階非奇異方陣A,求逆就已經O(n^3)

而梯度下降,每一次的時間複雜度 X^TXW 只有O(mn),在大量的資料裡面差別就很大了

8樓:立春

對最小二乘法直接求導找出全域性最小值的方法即為Normal Equation解法。

而梯度下降法是一種迭代法,先對引數給定乙個初始值,然後向梯度下降最快的方向調整,在若干次迭代之後找到全域性最優或區域性最優解。

9樓:yanan li

這兩種方法的目的相同,並且對於損失函式的定義都是相同的--求得損失函式的最小值,使得假設函式能夠更好的擬合訓練集資料。但是明顯也是有區別的:

計算上,最小二乘法直接計算損失函式的極值,而梯度下降卻是給定初始值,按照梯度一步步下降的方式取得區域性最小值,之後再選定其他初始值,計算-比較。

數學上,最小二乘法直接使用極值,將極值作為最小值。其假定有二:1,損失函式中極值就是最小值。

2,損失函式具有極值。而梯度下降則不同,梯度下降並沒有什麼假定,是利用函式中某一點的梯度,一步步尋找到損失函式的區域性最小值,之後對多個區域性最小值進行比較(選定不同的初始值),確定全域性最小值。

總體來說:最小二乘法計算簡單,但梯度下降法更加通用!

10樓:

如果題主問的是兩者的區別,那麼兩者是兩回事情,區別很大。

梯度下降 (Gradient Decsend) 是一種典型的數值方法,它的唯一目的,就是用迭代的方法求出區域性最優解。最小二乘法提供的僅是一種描述loss function(損失函式)的模型,它本身不是乙個解最優解的工具。形象點來說,最小二乘法告訴我們目標是什麼。

而至於如何來實現這個目標,大部分情況下可以使用梯度下降法來實現。

注意,有些情況下我們是沒有必要用梯度下降法的。梯度下降法雖然適用的範圍很廣,然而它也僅僅只能得到乙個區域性的最優解。最好的情況莫過於在有一些模型中,能用一種非數值方法求得全域性精確解。

這樣的模型比如說orinigal linear regression model,它已經簡單到只要你直接將假設好的模型代入到最小二乘法的公式裡,利用矩陣微積分就能得到解的精確表示。但這樣好的模型基本只是滄海一粟,大部分其他的模型,是得不到精確解的表示的。所以在這種時候,如何求解,使得loss function(大部分情況下我們都用最小二乘法來描述)取得其最小值?

梯度下降法就是一種很好的方法。

11樓:

最小二乘法是通過平方損失函式建立模型優化目標函式的一種思路,此時求解最優模型過程便具體化為最優化目標函式的過程了;

而梯度下降法便對應最優化目標函式的一種優化演算法,具體求解的是使得目標函式能達到最優或者近似最優的引數集.

12樓:

最小二乘法源自線性回歸,屬於數理統計。在回歸中樣本量(n)會遠大於變數數量(m),最小二乘法目的在於解決n個方程解m個未知數的問題。求極值的過程不是最小二乘法的重點,其重點在於平衡了n個樣本得出m個方程進而去解m個未知引數。

再說其中的極值,線性回歸這一前提決定了其天生就只有乙個極值點,即全域性最小。

梯度上公升(下降)法是乙個單純的求極值方法,用以應對各種古怪的極值求解,屬於優化演算法。具體的@張子權已經說清楚了。

計量分析中最小二乘法和二階最小二乘法有什麼區別呀?

今天心情好,是時候來個硬核的三本回答騙面次了 先上OLS,考慮高斯 馬爾科夫假設 定理 BLUE 其它非奇異的預設你懂了,後面不提滿秩非奇異就是因為我三本什麼都不會 考慮E X,res 0,考慮Y X res 得到beta估計量 X X 1X Y X X 1X Y X X 1X res 考慮右邊第二...

Fama Macbath 方法比最小二乘法好在哪?

童話李 有乙個經濟學的詞語叫路徑依賴。當初英國的火車軌道軸距是根據馬車的軸距確定的,具體這個軸距是不是最優的沒人知道。後來各地的鐵軌都已經按照這個標準鋪設好,究竟這個軸距是不是最優的就不重要了,反正也沒人能承擔的起把所有的鐵路重鋪一遍的成本。FM方法有類似的特點。其出現的時間點是在計算能力不足的歷史...

為什麼最小二乘法要用最小誤差平方和來擬合(為什麼不用立方和,或者開方和)

因為 space只有當 的時候才是Hilbert space.證明參見 http Klaus Ianopatov 講道理如果你只把最小二乘法看成乙個optimization problem的話,你可以設定很多loss function來達到gradient descent optimization的...