1. 程式人生 > >對於softmax和sigmoid的理解

對於softmax和sigmoid的理解

在分類問題中,人們常常會用到sigmoid和softmax這兩個啟用函式。

sigmoid:A logistic function or logistic curve is a common “S” shape (sigmoid curve).
也就是說,sigmoid把一個值對映到0-1之間。

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函式的本質就是將一個K維的任意實數向量壓縮(對映)成另一個K維的實數向量,其中向量中的每個元素取值都介於(0,1)之間並且和為1。
softmax的形式如下:
這裡寫圖片描述

總結一下,在二分類問題中,可以用softmax作為最後的啟用層;在多分類單標籤問題中,可以用sigmoid作為最後的啟用層,取概率最高的作為結果;而在多標籤問題中,又可以用多個softmax作為最後的啟用層,想當於把每一個類別當作二分類來處理。

那什麼一定要用softmax來處理多分類的問題呢?直接用歸一化的方法不就好了。
這裡面的原因有二:
這裡寫圖片描述