1. 程式人生 > >sigmoid function和softmax function

sigmoid function和softmax function

values 分享 sdn 進行 本質 分布 oid 它的 gpo

 sigmoid函數(也叫邏輯斯諦函數):
 引用wiki百科的定義:

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

  其實邏輯斯諦函數也就是經常說的sigmoid函數,它的幾何形狀也就是一條sigmoid曲線。

技術分享圖片

  logistic曲線如下:
  技術分享圖片

同樣,我們貼一下wiki百科對softmax函數的定義:

softmax is a generalization of logistic function that “squashes”(maps) a K-dimensional vector z of arbitrary real values to a K-dimensional vector σ(z) of real values in the range (0, 1) that add up to 1.

  這句話既表明了softmax函數與logistic函數的關系,也同時闡述了softmax函數的本質就是將一個K
維的任意實數向量壓縮(映射)成另一個K

維的實數向量,其中向量中的每個元素取值都介於(0,1)之間。

  softmax函數形式如下:
  技術分享圖片

總結:sigmoid將一個real value映射到(0,1)的區間(當然也可以是(-1,1)),這樣可以用來做二分類。
而softmax把一個k維的real value向量(a1,a2,a3,a4….)映射成一個(b1,b2,b3,b4….)其中bi是一個0-1的常數,然後可以根據bi的大小來進行多分類的任務,如取權重最大的一維。

PS.

softmax的輸出每個值都是大於等於0,而且總和等於1,這樣softmax可以認為是概率分布(類比遊戲裏的屬性分布)

容易描述,可以認為輸出的是分類等於每個可能分類等於每個可能分類標簽的概率(如:P(a(x))=0.8 for MNIST)

如果輸出層是sigmod層,不能默認輸出總和為1,所以不能輕易描述為概率分布。

sigmoid function和softmax function