關於 ML 中的激活函數你需要知道的一切

已發表: 2022-11-08

目錄

什麼是機器學習中的激活函數?

機器學習激活函數被證明是包含所有權重和偏差的 ML 模型中的關鍵元素。 它們是一個不斷發展的研究課題,並在使深度神經網絡訓練成為現實方面發揮了重要作用。 從本質上講,它們決定了刺激神經元的決定。 如果神經元接收到的信息與已經存在的信息相關,或者是否應該忽略它。 我們應用於輸入信號的非線性修改稱為激活函數。 下一層神經元接收這個改變的輸出作為輸入。

由於激活函數對神經網絡的輸入進行非線性計算,它們允許它在沒有它們的情況下學習並完成更複雜的任務,這本質上是機器學習中的線性回歸模型。

必須理解激活函數的應用並權衡每個激活函數的優缺點,以選擇合適的激活函數類型,以在特定的神經網絡模型中提供非線性和精度。

報名參加世界頂尖大學機器學習課程獲得碩士、Executive PGP 或高級證書課程以加快您的職業生涯。

機器學習激活函數模型基本上有兩種類型——

  • 隱藏層
  • 輸出層

隱藏層

神經模型的隱藏層中使用的激活函數的主要作用是提供神經網絡模擬非線性交互所需的非線性。

輸出層

機器學習模型的輸出層採用的激活方法有一個特定的主要目標:將值壓縮在一個有限的範圍內,例如 0 到 1。

讓我們首先了解機器學習中不同類型的激活函數——

1. 二元階躍函數

一個基於閾值的分類器,它決定神經元是否應該被使用,當我們有一個激活函數時,首先想到的是。 如果 Y 值大於指定的閾值,則觸發神經元; 否則,它處於休眠狀態。

它通常被定義為——

f(x) = 1, x>=0

f(x) = 0, x<0

二元函數很簡單。 它適用於開發二元分類器。 需要評估,當我們只需要對單個班級回答“是”或“否”時,這是理想的選擇,因為它們要么打開神經元,要么讓它為零。

2. 線性函數

隨著輸入速率的增加,正斜率可能會導致觸發速率上升。 線性激活函數在提供廣泛的激活方面表現出色。

該函數與我們直接的水平激活函數中的神經元或輸入的加權組合成正比。

一個神經元可能在二進制中被激發或不被激發。 如果您熟悉機器學習中的梯度下降,您可能會注意到此函數的導數是恆定的。

最佳機器學習課程和在線人工智能課程

LJMU 機器學習與人工智能理學碩士 來自 IIITB 的機器學習和人工智能高級研究生課程
IIITB 機器學習和自然語言處理高級證書課程 IIITB 機器學習和深度學習高級證書課程 馬里蘭大學數據科學與機器學習高級管理研究生課程
要探索我們所有的課程,請訪問下面的頁面。
機器學習課程

3.非線性函數

  1. ReLU

在激活函數方面,Rectified Linear Unit 是最好的。 對於大多數問題,這是最流行和默認的激活功能。 當它為負時,它被限制為 0,而當它變為正時,它是無界的。 深度神經網絡可以受益於這種有界性和無界性組合所產生的內在正則化。 正則化創建了一個稀疏表示,使訓練和推理在計算上有效。

正無界性在加速線性回歸收斂的同時保持了計算的簡單性。 ReLU 只有一個明顯的缺點:死神經元。 一些死亡的神經元在訓練階段的早期就關閉了,並且負向 0 永遠不會重新激活。 因為函數從 x > 0 時的無界快速轉變為 x ≤ 0 時的有界,所以它不能連續微分。 然而,在實踐中,如果學習率低和顯著的負偏差,這可能會被克服,而不會對性能產生持久影響。

優點:

  • 與其他非線性函數相比,ReLU 需要更少的數學過程,從而降低了計算成本和線性度。
  • 它可以防止並修復消失梯度問題。

利用:

  • 用於 RNN、CNN 和其他機器學習模型。

ReLU 的不同修改——

洩漏的 ReLU

ReLU 函數的一個更好的變體是 Leaky ReLU 函數。 由於 ReLU 函數的梯度為 0,其中 x<0,因此該區域中的激活導致神經元死亡,而洩漏 ReLU 被證明是解決此類問題最有益的。 我們將 ReLU 函數定義為 x 的微小線性分量,而不是 0,其中 x<0。

可以看作——

f(x)=ax, x<0

f(x)=x, x>=0

優點 -

  • Leaky ReLU 有一點負斜率,是為了解決“垂死的 ReLU”問題(0.01 左右)的嘗試。

利用 -

  • 用於涉及梯度的任務,例如 GAN。

參數 ReLU

這是對 Leaky ReLU 的改進,其中標量倍數是在數據上訓練的,而不是隨機選擇的。 因為模型是使用數據訓練的,所以它對縮放參數 (a) 很敏感,並且它會根據 a 的值進行不同的計數。

利用 -

  • 當 Leaky ReLU 失敗時,可以使用 Parametric ReLU 來解決死神經元的問題。

GeLU(高斯誤差線性單元)

最新的孩子,毫無疑問是 NLP(自然語言處理)相關任務的勝利者是高斯誤差線性單元,它用於基於變壓器的系統和 SOTA 算法,如 GPT-3 和 BERT。 GeLU 結合了 ReLU、Zone Out 和 Dropout(在稀疏網絡中隨機將神經元歸零)。 ReLU 使用 GeLU 變得更平滑,因為它通過百分位數而不是門對輸入進行加權。

利用 -

  • 計算機視覺、自然語言處理、語音識別

ELU(指數線性單位)

2015 年推出的 ELU 是正無界的,並且對負值採用對數曲線。 與 Leaky 和 ​​Parameter ReLU 相比,這種解決死神經元問題的策略略有不同。 與 ReLU 相比,負值逐漸平滑並受到約束以防止神經元死亡。 然而,它很昂貴,因為使用指數函數來描述負斜率。 當使用不太理想的起始技術時,指數函數偶爾會導致梯度擴大。

嗖嗖

Swish 的小負值於 2017 年首次引入,仍然有助於捕捉潛在模式,而大的負值將導數為 0。Swish 可用於輕鬆替換 ReLU,因為它的形式很有趣。

優點 -

  • 結果是 Sigmoid 函數和 RELU 之間的一種解決方法,有助於對結果進行規範化。
  • 具有處理梯度消失問題的能力。

利用 -

  • 在圖片分類和機器翻譯方面,與 ReLU 不相上下,甚至優於 ReLU。

需求機器學習技能

人工智能課程 畫面課程
自然語言處理課程 深度學習課程

4. Softmax 激活函數

與 sigmoid 激活函數一樣,softmax 主要用於最後一層或輸出層,用於做出決策。 softmax 只是根據權重為輸入變量賦值,這些權重的總和最終等於 1。

優點 -

  • 與 RELU 函數相比,Softmax 中的梯度收斂更平滑。
  • 它有能力處理消失梯度問題。

利用 -

  • 多類和多名詞分類。

5. 乙狀結腸

機器學習中的 Sigmoid 函數是最流行的激活函數之一。 方程是——

f(x)=1/(1+e^-x)

這些激活函數的好處是將輸入減少到 0 和 1 之間的值,這使得它們成為概率建模的理想選擇。 當應用於深度神經網絡時,函數變得可微,但由於有界性而迅速飽和,導致梯度減小。 當需要訓練具有數百層和神經元的模型時,指數計算的成本會增加。

導數被限制在 -3 和 3 之間,而函數被限制在 0 和 1 之間。它不適合訓練隱藏層,因為輸出在零附近不對稱,這將導致所有神經元在訓練期間採用相同的符號.

優點 -

  • 在收斂期間提供平滑的漸變。
  • 它通常用 0 和 1 給出預測的精確分類。

利用 -

  • 機器學習Sigmoid 函數通常用於輸出層的二元分類和邏輯回歸模型。

流行的機器學習和人工智能博客

物聯網:歷史、現在和未來 機器學習教程:學習機器學習 什麼是算法? 簡單易行
印度機器人工程師的薪水:所有角色 機器學習工程師的一天:他們在做什麼? 什麼是物聯網(物聯網)
排列與組合:排列與組合之間的區別 人工智能和機器學習的 7 大趨勢 使用 R 進行機器學習:您需要知道的一切

6. Tanh – 雙曲正切激活函數

機器學習中的 Sigmoid 函數類似,此激活函數用於預測或區分兩個類別,除了它專門將負輸入轉換​​為負量並且範圍為 -1 到 1。

tanh(x)=2sigmoid(2x)-1

或者

tanh(x)=2/(1+e^(-2x)) -1

它基本上解決了我們的問題,即具有相同符號的值。 其他特徵與 sigmoid 函數相同。 在任何時候,它都是連續的和獨特的。

優點 -

  • 與 sigmoid 不同,它具有以零為中心的功能。
  • 這個函數也有一個平滑的漸變。

儘管機器學習中的 Tahn 和 Sigmoid 函數由於它們的正有界性而可以用於隱藏層,但由於訓練飽和和梯度消失,深度神經網絡無法使用它們。

從正確的課程開始您的機器學習生涯

有興趣深入了解激活函數及其對增強機器學習的幫助嗎? 通過 WES 認可的 UpGrad 課程機器學習和人工智能科學碩士課程,全面了解機器學習以及 AI、深度學習、NLP 和強化學習等所有細節 本課程提供實踐經驗,同時參與 12 個以上的項目、進行研究、高級編碼課程以及與一些最優秀的教授進行輔導。

註冊以了解更多信息!

結論

被稱為激活函數的關鍵操作以非線性方式改變輸入,使其能夠理解和執行更複雜的任務。 我們討論了最流行的激活函數及其可能適用的用途; 這些激活函數提供相同的功能,但適用於各種情況。

你如何決定哪個激活函數是最好的?

選擇激活函數是一個複雜的決定,完全取決於手頭的問題。 但是,如果您是機器學習的新手,您可能希望先從 sigmoid 函數開始,然後再繼續其他學習。

激活函數應該是線性的還是非線性的?

無論設計多麼複雜,線性激活函數只在一層深度內有效。 因此激活層不能是線性的。 此外,當今世界及其挑戰是非常非線性的。

哪個激活函數可以輕鬆學習?

譚。 通過擴大範圍以覆蓋 -1 到 1,它解決了 sigmoid 激活函數的缺點。 這導致零中心,這導致隱藏層的權重的平均值接近於 0。因此學習變得更快更容易。