為神經網路選擇正確的啟用函式

2022-09-19 10:57:11 字數 2446 閱讀 8689

**知乎專欄為神經網路選擇正確的啟用函式

我們都知道神經網路模型中使用啟用函式的主要目的是將非線性特性引入到我們的網路中,強化網路的學習能力。啟用函式應用於隱藏層和輸出層中每個節點的稱為 z 的輸入加權和(此處輸入可以是原始資料或前一層的輸出)。

在本篇文章中我們將討論神經網路中常見的啟用函式,並使用視覺化技術幫助你了解啟用函式的函式定義和不同的使用場景。

在看完本文章後,你可以將清楚地了解何時使用哪種啟用函式,並了解不同啟用函式的定義。

神經網路通常由三種型別的層組成:輸入層、隱藏層和輸出層。

輸入層只儲存輸入資料,不執行任何計算。 因此,這裡不需要使用啟用函式。

在神經網路的隱藏層中需要使用非線性啟用函式, 這是因為需要在網路中引入非線性來學習複雜的模式。 如果沒有非線性啟用函式,具有許多隱藏層的神經網路將成為乙個巨大的線性回歸模型,這對於從現實世界資料中學習複雜模式毫無用處。 根據我們在隱藏層中使用的啟用函式的型別,神經網路模型的效能會有很大差異。

在神經網路的輸出層內使用啟用函式的選擇取決於我們要解決的問題型別。

大多數啟用函式是非線性的。但是有時也在神經網路中使用線性啟用函式,例如在解決回歸問題的神經網路模型的輸出層中使用線性啟用函式。

乙個線性函式(稱為 f)接受輸入 z 並返回輸出 cz,它是輸入乘以常數 c。在數學上,這可以表示為 f(z) = cz。當 c=1 時,函式按原樣返回輸入,並且不對輸入進行任何更改。二維空間中線性函式的圖形是一條直線。

任何不是線性的函式都可以歸類為非線性函式。非線性函式的圖形不是一條直線。它可以是乙個複雜的模式,也可以是兩個或多個線性元件的組合。

下面將討論神經網路中常用的啟用函式。

主要特點:

用法:

當我們使用 sigmoid 函式建立乙個多標籤分類模型時,其中每個相互包含的類都有兩個結果。 不要將此與多類分類模型混淆。

由於以下缺點,我們通常不在隱藏層中使用 sigmoid 函式。

主要特點:

用法:由於以下缺點,我們通常不在隱藏層中使用 tanh 函式。

主要特點:

用法:缺點:

主要特點:

用法:5、引數 relu (prelu) 啟用函式

主要特點:

主要特點:

主要特點:

用法:

8、二元階梯啟用函式

主要特點:

用法:9、恒等啟用函式

主要特點:

用法:10、swish

主要特點:

用法:缺點:

11、h-swish

主要特點:

用法:啟用函式只是數學函式。啟用函式應該具有的主要特徵是該函式是可微的,因為這是模型中反向傳播的要求。

選擇正確的啟用函式可以被認為是一種超引數調整,通過理解問題定義並考慮模型的效能和損失函式的收斂性來手動選擇啟用函式。

這裡總結了上面討論的不同啟用函式的使用場景。當訓練神經網路模型時,可以作為參考:

神經網路啟用函式

2018,jul 23 學了深度學習也快近一年了,在學deep learning的時候什麼教程都去看,起初學起來也特別的雜亂,前面的基礎沒弄懂還一直往下學,自然導致我學到後面的時候有點崩潰什麼都看不懂,並且因為自己還是一名在校生,平常課程也非常多,沒有乙個連續的學習時間也導致我的學習是斷斷續續,在學...

啟用函式 神經網路

andrew的 neural networks and deep learning 課程學習筆記 如圖所示,是乙個簡單的三層神經網路,如果只使用線性啟用函式或者恒等啟用函式 不使用啟用函式 那麼神經網路的輸出就只是輸入函式的線性變化,因為線性啟用函式的組合依然是線性啟用函式。這種情況下,不管使用多少...

神經網路啟用函式

1.sigmoid sigmoid散活函式是將 乙個實數輸入轉化至 0 1 之間的輸出,具體來說也就是將越大的負數轉化到越靠近 0 越大的正數轉化到越靠近1。多用於二分類。缺點 1 sigmoid 函式會造成梯度消失。乙個非常不好的特點就是 sigmoid 函式在靠近 1和0 的兩端時,梯度會幾乎變...