激活函數,提供非線性能力。
1. softmax:
多分類,他有互斥性,是概率問題。 當分類爲2的時候,會退化成sigmod.
2. SIGMOD函數,二分類將數據壓縮到0-1之間, 橫軸0點對稱,以用來做二分類,有飽和區間所以一般用在輸出層
優點:平滑、易於求導。
缺點:激活函數計算量大,反向傳播求誤差梯度時,求導涉及除法;反向傳播時,很容易就會出現梯度消失的情況,從而無法完成深層網絡的訓練。
Sigmoid函數由下列公式定義
其對x的導數可以用自身表示:
Sigmoid函數的圖形如S曲線
2. tanh是雙曲函數中的一個,tanh()tanh()爲雙曲正切。在數學中,雙曲正切“tanhtanh”是由基本雙曲函數雙曲正弦和雙曲餘弦推導而來。
tanhx=sinhxcoshx=ex−e−xex+e−xtanhx=sinhxcoshx=ex−e−xex+e−x
其曲線如下圖所示:
sigmoid函數和tanh函數是研究早期被廣泛使用的2種激活函數。兩者都爲S 型飽和函數。 當sigmoid 函數輸入的值趨於正無窮或負無窮時,梯度會趨近零,從而發生梯度彌散現象。sigmoid函數的輸出恆爲正值,不是以零爲中心的,這會導致權值更新時只能朝一個方向更新,從而影響收斂速度。tanh 激活函數是sigmoid 函數的改進版,是以零爲中心的對稱函數,收斂速度快,不容易出現 loss 值晃動,但是無法解決梯度彌散的問題。2個函數的計算量都是指數級的,計算相對複雜。softsign 函數是 tanh 函數的改進版,爲 S 型飽和函數,以零爲中心,值域爲(−1,1)。
3. relu
relu用於神經網絡層中間層中,在relu之前是tanh,目前建議使用relu, leaky_relu人臉視別,有一半的人臉時可用。 目前一般都使用relu
相比於傳統的神經網絡激活函數,諸如sigmoid和tanh等雙曲函數,線性整流函數有着以下幾方面的優勢:
1.仿生物學原理:相關大腦方面的研究表明生物神經元的信息編碼通常是比較分散及稀疏的。通常情況下,大腦中在同一時間大概只有1%-4%的神經元處於活躍狀態。使用線性修正以及正則化(regularization)可以對機器神經網絡中神經元的活躍度(即輸出爲正值)進行調試;相比之下,邏輯函數在輸入爲0時達到
,即已經是半飽和的穩定狀態,不夠符合實際生物學對模擬神經網絡的期望。不過需要指出的是,一般情況下,在一個使用修正線性單元(即線性整流)的神經網絡中大概有50%的神經元處於激活態。
2.更加有效率的梯度下降以及反向傳播:避免了梯度爆炸和梯度消失問題
3.簡化計算過程:沒有了其他複雜激活函數中諸如指數函數的影響;同時活躍度的分散性使得神經網絡整體計算成本下降。[3]
矩陣是一個工具,
它可以描述的東西有很多,人並不能直接看到抽象的事物(就好比說變換、方程、代數等等),必須要用一些具體的表現工具將其刻畫出來。而矩陣就是其中的一個工具(其實還有其他對線性變換的刻畫)。
線性不可分可以提升維度,可以將線性不可分,轉爲線性可分