線性回歸的損失函式和梯度下降

2022-06-20 11:51:13 字數 1619 閱讀 6176

損失函式

總損失定義為:

理解:x為特徵值矩陣,y為目標值矩陣。直接求到最好的結果

缺點:當特徵過多過複雜時,求解速度太慢並且得不到結果

其中y是真實值矩陣,x是特徵值矩陣,w是權重矩陣

對其求解關於w的最小值,起止y,x 均已知二次函式直接求導,導數為零的位置,即為最小值。

求導:

注:式(1)到式(2)推導過程中, x是乙個m行n列的矩陣,並不能保證其有逆矩陣,但是右乘xt把其變成乙個方陣,保證其有逆矩陣。

式(5)到式(6)推導過程中,和上類似。

梯度下降(gradient descent)

梯度下降法的基本思想可以模擬為乙個下山的過程。

假設這樣乙個場景:乙個人被困在山上,需要從山上下來(i.e. 找到山的最低點,也就是山谷)。但此時山上的濃霧很大,導致可視度很低。因此,下山的路徑就無法確定,他必須利用自己周圍的資訊去找到下山的路徑。這個時候,他就可以利用梯度下降演算法來幫助自己下山。具體來說就是,以他當前的所處的位置為基準,尋找這個位置最陡峭的地方,然後朝著山的高度下降的地方走,(同理,如果我們的目標是上山,也就是爬到山頂,那麼此時應該是朝著最陡峭的方向往上走)。然後每走一段距離,都反覆採用同乙個方法,最後就能成功的抵達山谷。

梯度下降的基本過程就和下山的場景很類似。

首先,我們有乙個可微分的函式。這個函式就代表著一座山。

我們的目標就是找到這個函式的最小值,也就是山底。

根據之前的場景假設,最快的下山的方式就是找到當前位置最陡峭的方向,然後沿著此方向向下走,對應到函式中,就是找到給定點的梯度 ,然後朝著梯度相反的方向,就能讓函式值下降的最快!因為梯度的方向就是函式之變化最快的方向。 所以,我們重複利用這個方法,反覆求取梯度,最後就能到達區域性的最小值,這就類似於我們下山的過程。而求取梯度就確定了最陡峭的方向,也就是場景中測量方向的手段。

有了梯度下降這樣乙個優化演算法,回歸就有了"自動學習"的能力

梯度下降和正規方程的對比

梯度下降

正規方程

需要選擇學習率

不需要需要迭代求解

一次運算得出

特徵數量較大可以使用

需要計算方程,時間複雜度高o(n3)

邏輯回歸 損失函式與梯度下降

由於二分類結果是1或者0,這與數學的階躍函式很類似,但是階躍函式在x 0的位置會發生突變,這個突變在數學上很難處理。所以一般使用sigmoid函式來擬合 g z 1 1 e z 1 具體應用到邏輯回歸演算法中 z 0 1x1 2x2 nxn i 0n i xi tx 2 其中x i 表示樣本屬性 對...

損失函式和梯度下降

前提 前向傳播經過若干個神經元,再經過啟用函式,最終得到結果,然後輸出損失函式,根據損失函式再進行反向傳播,及傳遞梯度,調整權重。並不是根據啟用偶函式輸出直接返回梯度值,而是在計算損失函式的基礎上進行反向傳播梯度。更多的是按照小批量的處理,累計梯度求平均值,最後進行梯度下降。損失函式與分類函式 sv...

線性回歸 梯度下降

線性回歸演算法屬於監督學習的一種,主要用於模型為連續函式的數值 過程總得來說就是初步建模後,通過訓練集合確定模型引數,得到最終 函式,此時輸入自變數即可得到 值。1 初步建模。確定假設函式 h x 最終 用 2 建立價值函式 j 也叫目標函式 損失函式等,求引數 用 3 求引數 對價值函式求偏導 即...