3 損失函式和優化

2021-08-02 07:33:03 字數 1488 閱讀 4174

為了描述之前建立的線性分類器的分類效果,我們引入的損失函式,顧名思義,損失函式越大誤差也就越大。

在下圖的任務中,將測試貓、車和青蛙輸入網路,輸出了一系列的數值,如下表。

很顯然我們希望對應的分類數值越高越好,例如貓的對應cat,但是數值只有3.2,還不如對應的car的數值,所以該線性分類器會將貓這張分類為car。

下面引入svm loss函式:

max(0,5.1-3.2+1)+max(0,-1.7-3.2+1) = 2.9

同理計算出其他兩個的loss值。

比較loss,可以發現分類結果越離譜的loss越大。

但是即使相同的loss,w的存在並不是唯一的。例如將w x 2,對於車的loss並沒有改變,還是0,計算如下圖。

為了固定w使其存在唯一的解,引入了權重正則化。如下圖:

常見的l1和l2正則化,下圖中w1和w2實現相同的計算結果,但是w2是加上l2正則化後的結果,可以看出w1僅僅使用了一維空間,w2資料分布在四個空間中。所以l2正則化迫使權重利用整個空間,利用更多的維度。

softmax分類器:

與其搭配使用的常是對數似然損失:-log

e的指數次方實現了將f(x,w)輸出 > 0,其次除以總和,得到了類似於概率的值。

現在我們已經有資料集,線性分類器f(x;w),和loss函式(多種),接下來要做的就是如何調整w,使得loss變小。

方法1:隨機搜尋。。。。

方法二:沿著下降方向

方法3:梯度下降,可以將loss看作是w的函式,那麼對w進行微分不就得到了下降方向麼。

但是使用單一資料計算loss梯度下降,存在偶然性,計算的梯度並不一定是整體下降的方向。

如果使用整體訓練集的梯度方向,計算量有太大。

所以存在mini batch 梯度下降,用小批量的資料去近似整體的訓練集的loss,相比單一的資料效果好很多。

chapter 3 損失函式和優化

上一章我們了解了線性分類器的函式形式 f x,w x w b。這裡li的計算方式為 列舉每乙個錯誤分類的值與正確分類的差,再用這個值加上設定好的安全邊界值。若和小於等於0,則該錯誤分類的損失為0 否則損失即為和。計算每個錯誤分類的損失並求和,記為該分類的損失。如下圖為例,貓的損失函式值為 設安全邊距...

損失函式優化方法

梯度下降法是求解無約束最優化問題的一種最常用方法,有實現簡單的優點。它是一種迭代演算法,每一步需要求解的目標函式的梯度向量。假設 f x 是 rn 上具有一階連續偏導數的函式。要求解的無約束最優化問題是 minx r nf x x 表示目標函式 f x 的極小點。由於負梯度方向是使函式值下降最快的方...

損失函式及其優化演算法

損失函式 loss function 也叫代價函式 cost function 是神經網路優化的目標函式,神經網路訓練或者優化的過程就是最小化損失函式的過程 損失函式值小了,對應 的結果和真實結果的值就越接近 交叉熵 cross entropy 代價函式 於資訊理論中熵的概念。是目前神經網路分類問題...