Sigmoid函數與Softmax函數的理解


1. Sigmod 函數

1.1 函數性質以及優點

其實logistic函數也就是經常說的sigmoid函數,它的幾何形狀也就是一條sigmoid曲線(S型曲線)。

             

其中z是一個線性組合,比如z可以等於:b + w1*x1 + w2*x2。通過代入很大的正數或很小的負數到g(z)函數中可知,其結果趨近於0或1

A logistic function or logistic curve is a common “S” shape (sigmoid curve).

也就是說,sigmoid函數的功能是相當於把一個實數壓縮至0到1之間。當z是非常大的正數時,g(z)會趨近於1,而z是非常小的負數時,則g(z)會趨近於0     

                   

壓縮至0到1有何用處呢?用處是這樣便可以把激活函數看作一種“分類的概率”,比如激活函數的輸出為0.9的話便可以解釋為90%的概率為正樣本。

優點:

1、Sigmoid函數的輸出在(0,1)之間,輸出范圍有限,優化穩定,可以用作輸出層。

2、連續函數,便於求導。

1.2 函數缺點

sigmoid也具有自身的缺陷。
第一點,最明顯的就是飽和性,從上圖也不難看出其兩側導數逐漸趨近於0, 即[公式] 。具體來說,在反向傳播的過程中,sigmoid的梯度會包含了一個 [公式] 因子(sigmoid關於輸入的導數),因此一旦輸入落入兩端的飽和區, [公式] 就會變得接近於0,導致反向傳播的梯度也變得非常小,此時網絡參數可能甚至得不到更新,難以有效訓練,這種現象稱為梯度消失。一般來說,sigmoid網絡在5層之內就會產生梯度消失現象。

第二點,激活函數的偏移現象。sigmoid函數的輸出值均大於0,使得輸出不是0的均值,這會導致后一層的神經元將得到上一層非0均值的信號作為輸入,這會對梯度產生影響。。

第三點,計算復雜度高,因為sigmoid函數是指數形式。

1.3 Sigmod函數求導

                           

 

 

sigmod 求導過程很簡單,可以手動推導。

2. Softmax 函數

2.1 Softmax函數表達式與性質

softmax函數,又稱歸一化指數函數。它是二分類函數sigmoid在多分類上的推廣,目的是將多分類的結果以概率的形式展現出來。下圖展示了softmax的計算方法:

                               

 

 下面這張圖便於理解:

 

softmax直白來說就是將原來輸出是3,1,-3通過softmax函數一作用,就映射成為(0,1)的值,而這些值的累和為1(滿足概率的性質),那么我們就可以將它理解成概率,在最后選取輸出結點的時候,我們就可以選取概率最大(也就是值對應最大的)結點,作為我們的預測目標!

由於Softmax函數先拉大了輸入向量元素之間的差異(通過指數函數),然后才歸一化為一個概率分布,在應用到分類問題時,它使得各個類別的概率差異比較顯著,最大值產生的概率更接近1,這樣輸出分布的形式更接近真實分布。

2.2Softmax函數的解釋

Softmax可以由三個不同的角度來解釋。從不同角度來看softmax函數,可以對其應用場景有更深刻的理解。

2.2.1 是arg max的一種平滑近似

softmax可以當作arg max的一種平滑近似,與arg max操作中暴力地選出一個最大值(產生一個one-hot向量)不同,softmax將這種輸出作了一定的平滑,即將one-hot輸出中最大值對應的1按輸入元素值的大小分配給其他位置。

2.2.2 歸一化產生一個概率分布

Softmax函數的輸出符合指數分布族的基本形式

[公式]

其中 [公式] 。

不難理解,softmax將輸入向量歸一化映射到一個類別概率分布,即 [公式] 個類別上的概率分布(前文也有提到)。這也是為什么在深度學習中常常將softmax作為MLP的最后一層,並配合以交叉熵損失函數(對分布間差異的一種度量)。

2.2.3 產生概率無向圖的聯合概率

從概率圖模型的角度來看,softmax的這種形式可以理解為一個概率無向圖上的聯合概率。因此你會發現,條件最大熵模型與softmax回歸模型實際上是一致的,諸如這樣的例子還有很多。由於概率圖模型很大程度上借用了一些熱力學系統的理論,因此也可以從物理系統的角度賦予softmax一定的內涵。

3. 總結

• 如果模型輸出為非互斥類別,且可以同時選擇多個類別,則采用Sigmoid函數計算該網絡的原始輸出值。

• 如果模型輸出為互斥類別,且只能選擇一個類別,則采用Softmax函數計算該網絡的原始輸出值。

 

參考鏈接:
https://zhuanlan.zhihu.com/p/69771964  (有許多sigmod 和 softmax函數理解的例子)
https://zhuanlan.zhihu.com/p/79585726  (對softmax函數與交叉熵函數的理解)

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM