在學習機器學習過程中,激活函數是隨處可見。下面為常見三種激活函數的筆記:
1. Sigmoid
Sigmoid 是使用范圍最廣的一類激活函數,具有指數函數形狀 。
Sigmoid函數實際上就是把數據映射到一個(0,1)的空間上,也就是說,Sigmoid函數如果用來分類的話,只能進行二分類。正式定義為:
2.Tanh
Tanh函數可以看作是2* sigmoid(2x) -1,所以它的區間是(-1,1)。
Tanh函數相比於Sigmoid函數往往更具有優越性,這主要是因為Sigmoid函數在輸入處於(0,1)之間時,函數值變化敏感,一旦接近或者超出區間就失去敏感性,處於飽和狀態,影響神經網絡預測的精度值。
而tanh的輸出和輸入能夠保持非線性單調上升和下降關系,符合BP網絡的梯度求解,容錯性好,有界,漸進於0、1,符合人腦神經飽和的規律,但比sigmoid函數延遲了飽和期。Tanh也用於二分類。

3. softmax
通過softmax函數,可以使得P(i)的范圍在[0,1]之間。在回歸和分類問題中,通常θ是待求參數,通過尋找使得P(i)最大的θi作為最佳參數。
用通信的術語來講,如果Sigmoid函數是MISO,Softmax就是MIMO的Sigmoid函數。
softmax的應用主要有multiclass regression/softmax regression, 也有神經網絡用softmax來當最后一層的激活函數來達到分類的功能(且能模擬出每個類的概率)。
sigmoid將一個real value映射到(0,1)的區間(當然也可以是(-1,1)),這樣可以用來做二分類。
而softmax把一個k維的real value向量(a1,a2,a3,a4….)映射成一個(b1,b2,b3,b4….)其中bi是一個0-1的常數,然后可以根據bi的大小來進行多分類的任務,如取權重最大的一維。