機器學習--Softmax回歸


      SVM只選自己喜歡的男神,Softmax把所有備胎全部拉出來評分,最后還歸一化一下

1.引入---為何種問題存在

2.Softmax回歸的預設函數、代價函數

    2.1Softmax函數

    2.2Softmax回歸的預設函數

    2.3Softmax回歸的代價函數

3.梯度下降法求解最優值

4.softmax regression模型參數的特點(參數冗余)

5.Softmax回歸與Logistic 回歸的關系

 

 

1.引入---為何種問題存在

線性回歸解決的連續值的預測,邏輯回歸解決的是離散值的預測,而且針對二分類問題。那么問題來了,如果是離散值預測,但是是多類別預測,也就是有多個類別標簽,這種情況怎么辦呢?Softmax回歸針對的就是這種問題。

 

 

2.Softmax回歸的預設函數、代價函數

 

  2.1Softmax函數(wiki

  Softmax函數,或稱歸一化指數函數[1]:198,是邏輯函數的一種推廣。它能將一個含任意實數的K維向量 {\displaystyle \mathbf {z} } “壓縮”到另一個K維實向量 {\displaystyle \sigma (\mathbf {z} )} 中,

使得每一個元素的范圍都在{\displaystyle (0,1)}之間,並且所有元素的和為1。

 

 

這個函數的作用就是使得P(i)在負無窮到0的區間趨向於0,在0到正無窮的區間趨向於1。同樣,softmax函數加入了e的冪函數正是為了兩極化:正樣本的結果將趨近於1,而負樣本的結果趨近於0。這樣為多類別分類提供了方便(可以把P(i)看作是樣本屬於類別i的概率)

 

 

  2.2Softmax回歸的預設函數

softmax regression主要用於解決多元分類問題,假設對於樣本,樣本有K個類別,即。例如對於手寫體識別來說 。softmax回歸主要是估算對於輸入樣本  屬於每一類別的概率,所以softmax回歸的假設函數如下:

其中 是模型的參數,乘以的目的是為了使概率在[0,1]之間且概率之和為1。因此,softmax回歸將樣本標記為類別  的概率為:

  2.3 Softmax回歸的代價函數

其中, 是示性函數,所謂示性函數即,舉例來說就是:

 

 

其他博客有一種說法:

 

但感覺解釋並不合理,這種推理類似於倒推,由特殊情況推導一般情況。

 我的推導過程,不知道對不對。

推導過程如下:(沒搞懂)

  極大似然估計法:

假設當前輸入為x1,x2,,xmx1,x2,⋯,xm,yiyi表示xixi的正確標簽類別,似然函數可定義為:

使得似然函數最大化:

等價於:

使得似然函數最大化的參數就是極大似然估計希望得到的參數,因此可以定義以下損失函數, 然后用梯度下降逼近最優解

 

 

 

3.梯度下降法求解最優值

1.法一:

 

這里面幾個容易踩得坑:1.對求偏導,這個  不要和 這里的  混淆了,還有就是除  項外其他項為0。2.紅色框起來的地方結果為1,因為僅有一種類別滿足條件是真,其他是0。
2.法二:如果上面的推導過程沒看明白,可以看看下面這種推導方法,之所以要拆成兩項,是因為分母中總含有  這一項,於是我們可以下列的方法拆成兩項:

 

好吧,不得不承認編輯公式是一件費時費力的事情。。。

4.softmax regression模型參數的特點(參數冗余)

Softmax 回歸有一個不尋常的特點:它有一個“冗余”的參數集。為了便於闡述這一特點,假設我們從參數向量  中減去了向量  這時,每一個  都變成了 。此時假設函數變成了以下的式子:

  • 換句話說,從  中減去  完全不影響假設函數的預測結果!這表明前面的 softmax 回歸模型中存在冗余的參數。更正式一點來說, Softmax 模型被過度參數化了。對於任意一個用於擬合數據的假設函數,可以求出多組參數值,這些參數得到的是完全相同的假設函數 
  • 進一步而言,如果參數 是代價函數的極小值點,那么同樣也是它的極小值點,其中  可以為任意向量。
  • 因此使  最小化的解不是唯一的。(有趣的是,由於  仍然是一個凸函數,因此梯度下降時不會遇到局部最優解的問題。但是 Hessian 矩陣是奇異的/不可逆的,這會直接導致采用牛頓法優化就遇到數值計算的問題)
  • 注意,當 時,我們總是可以將  替換為 (即替換為全零向量),並且這種變換不會影響假設函數。因此我們可以去掉參數向量 (或其他  中的任意一個)而不影響假設函數的表達能力。
  • 實際上,與其優化全部的 個參數(其中),我們可以令,只優化剩余的個參數,這樣算法依然能夠正常工作。

在實際應用中,為了使算法實現更簡單清楚,往往保留所有參數,而不任意地將某一參數設置為 0。但此時我們需要對代價函數做一個改動:加入權重衰減。權重衰減可以解決 softmax 回歸的參數冗余所帶來的數值問題。

 

5.Softmax回歸與Logistic 回歸的關系

 

其實softmax回歸是logistic回歸的一般形式,logistic回歸是softmax回歸在   時的特殊形式,下面通過公式推導來看下當   時softmax回歸是如何退化成logistic回歸的:
當   時,softmax回歸的假設函數為:

 

前面說過softmax回歸的參數具有冗余性,從參數向量  中減去向量 ,完全不影響結果。現在我們令 ,並且兩個參數向量都減去 ,則有:

 

 

 


免責聲明!

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



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