softmax函式詳解

2021-10-23 08:14:31 字數 1277 閱讀 4389

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

下面為大家解釋一下為什麼softmax是這種形式。

首先,我們知道概率有兩個性質:1)**的概率為非負數;2)各種**結果概率之和等於1

softmax就是將在負無窮到正無窮上的**結果按照這兩步轉換為概率的。

1)將**結果轉化為非負數

下圖為y=exp(x)的影象,我們可以知道指數函式的值域取值範圍是零到正無窮。softmax第一步就是將模型的**結果轉化到指數函式上,這樣保證了概率的非負性。

2)各種**結果概率之和等於1

為了確保各個**結果的概率之和等於1。我們只需要將轉換後的結果進行歸一化處理。方法就是將轉化後的結果除以所有轉化後結果之和,可以理解為轉化後結果佔總數的百分比。這樣就得到近似的概率。

1)將**結果轉化為非負數

y1 = exp(x1) = exp(-3) = 0.05

y2 = exp(x2) = exp(1.5) = 4.48

y3 = exp(x3) = exp(2.7) = 14.88

2)各種**結果概率之和等於1

z1 = y1/(y1+y2+y3) = 0.05/(0.05+4.48+14.88) = 0.0026

z2 = y2/(y1+y2+y3) = 4.48/(0.05+4.48+14.88) = 0.2308

z3 = y3/(y1+y2+y3) = 14.88/(0.05+4.48+14.88) = 0.7666

總結一下softmax如何將多分類輸出轉換為概率,可以分為兩步:

1)分子:通過指數函式,將實數輸出對映到零到正無窮。

2)分母:將所有結果相加,進行歸一化。

下圖為史丹福大學cs224n課程中最softmax的解釋:

Softmax函式詳解

softmax在機器學習中有非常廣泛的應用,但是剛剛接觸機器學習的人可能對softmax的特點以及好處並不理解,其實你了解了以後就會發現,softmax計算簡單,效果顯著,非常好用。我們先來直 一下,softmax究竟是什麼意思 我們知道max,假如說我有兩個數,a和b,並且a b,如果取max,那...

SoftMax回歸詳解

損失函式 梯度下降法求引數 omega b bb 實現與 logistic 回歸的關係 重點 關係 求導的關係 重點 from sklearn import datasets import numpy as np iris datasets.load iris 載入鳶尾花資料集 x iris dat...

softmax函式應用

softmax函式應用 1.softmax初探 在機器學習中,softmax是十分常用而且重要的乙個函式,尤其在多分類的場景中使用廣泛。它把一些輸入對映為0 1之間的實數,並且歸一化保證和為1,因此多分類的概率之和也剛好為1。首先我們簡單來看看softmax是什麼意思。顧名思義,softmax由兩個...