1. 程式人生 > >3、Softmax分類器

3、Softmax分類器

cnblogs 判斷 選擇 實現 數值計算 思想 max函數 公式 wiki

wiki百科:softmax函數的本質就是將一個K維的任意實數向量壓縮(映射)成另一個K維的實數向量,其中向量中的每個元素取值都介於(0,1)之間。

一、疑問

二、知識點

1. softmax函數公式的意義

? 在softmax函數,輸入向量z的值有正有負,正數表示對應的特征對分類結果是積極的,負數則表示是消極的。因此,在softmax函數中,要 先計算$e^z$, 目的是為了把所有的輸入先處理到大於0的空間內,比如負數經過計算後會得到很接近0的數,因此歸一化後,對應的概率也接近於0,這就很好得體現了softmax函數的思想——值大的對應概率大,值小的對應概率小。

2. softmax回歸與logistic回歸

  • softmax回歸,處理多分類問題;logisitc回歸,處理二分類問題;
  • softmax回歸可以推導出和二元分類logistic回歸一致的公式;多個logistic回歸通過疊加也同樣可以實現多分類的效果;

  • softmax回歸進行的多分類,類與類之間是互斥的,即一個輸入只能被歸為一類:

這一選擇取決於你的類別之間是否互斥,例如,如果你有四個類別的音樂,分別為:古典音樂、鄉村音樂、搖滾樂和爵士樂,那麽你可以假設每個訓練樣本只會被打上一個標簽(即:一首歌只能屬於這四種音樂類型的其中一種),此時你應該使用類別數 k = 4 的softmax回歸。(如果在你的數據集中,有的歌曲不屬於以上四類的其中任何一類,那麽你可以添加一個“其他類”,並將類別數 k 設為5。)

  • 多個logistic回歸進行多分類,輸出的類別並不是互斥的,即"蘋果"這個詞語既屬於"水果"類也屬於"3C"類別:

如果你的四個類別如下:人聲音樂、舞曲、影視原聲、流行歌曲,那麽這些類別之間並不是互斥的。例如:一首歌曲可以來源於影視原聲,同時也包含人聲 。這種情況下,使用4個二分類的logistic回歸分類器更為合適。這樣,對於每個新的音樂作品 ,我們的算法可以分別判斷它是否屬於各個類別。

3. 交叉熵損失

? 從概率論的角度出發,最小化正確分類的負對數概率,等同於進行最大似然估計。

4. 數值穩定問題

? 編程實現softmax函數計算的時候,中間項技術分享圖片

技術分享圖片因為存在指數函數,所以數值可能非常大。除以大數值可能導致數值計算的不穩定,所以要使用歸一化技巧——在分式的分子和分母都乘以一個常數技術分享圖片,並把它變換到求和之中,就能得到一個從數學上等價的公式:

技術分享圖片

技術分享圖片的值可自由選擇,不會影響計算結果,通過使用這個技巧可以提高計算中的數值穩定性。通常將技術分享圖片設為技術分享圖片。該技巧簡單地說,就是應該將向量技術分享圖片中的數值進行平移,使得最大值為0。

3、Softmax分類器