Activation Function

傳統激活函數(Sigmoid)

傳統激活函數Sigmoid:Sigmoid 是傳統神經網絡中常用的一種激活函數,尤其在早期的神經網絡結構中。

Sigmoid 函數的輸出始終在 0 和 1 之間,這使得它經常被用于二分類問題中,其中輸出可以解釋為屬于某一類的概率。

激活函數Tanh(Sigmoid雙曲線版本)Tanh函數是Sigmoid函數的雙曲版本,它將任何實數映射到-1到1之間。

Tanh函數是雙曲正切函數,其輸出值在-1和1之間,常用于神經網絡隱藏層,以提供比Sigmoid函數更廣的激活范圍。

主流激活函數(ReLU)

主流激活函數ReLU:ReLU(Rectified Linear Unit)是當今深度學習領域中最主流的激活函數之一。

與傳統的Sigmoid和Tanh激活函數相比,ReLU函數在輸入為正數時導數為1,在輸入為負數時導數為0,這有效地避免了梯度消失問題。由于ReLU函數的非線性特性和計算簡單性,它可以幫助神經網絡更快地收斂到最優解。

激活函數Leaky ReLU(ReLU改進版本)Leaky ReLU是一種改進的ReLU激活函數,旨在解決傳統ReLU在輸入小于等于0時導致的神經元“死亡”問題。它通過允許一個小的、固定的梯度通過負值區域來實現這一點。

注意:雖然上面的公式直接使用了0.01作為α的值,但在實際應用中,α可以是一個在(0, 1)區間內的任意小正數,具體值需要根據任務和數據集進行調整。

與ReLU相比,Leaky ReLU的主要優勢在于它能夠解決神經元“死亡”問題。然而,在某些情況下,ReLU可能由于其簡單的形式和計算效率而更受歡迎。因此,在選擇激活函數時,需要根據具體任務和數據集的特點進行權衡。

輸出層激活函數(Softmax)

多分類問題激活函數SoftmaxSoftmax函數是一種用于多分類問題的激活函數,它將神經網絡的輸出(logits-原始未經處理的得分)轉換為一個概率分布。轉換后的每個值都在0和1之間,且所有值的總和為1,這使得Softmax函數非常適合用于表示各個類別的概率。

Softmax是一種歸一化函數,它將一個數值向量轉換為概率分布向量,使得輸出值落在0到1之間,且所有輸出值的總和為1。

神經網絡(Neural network)

神經網絡是一種受人腦啟發的機器學習算法,它模仿大腦中神經元相互發出信號的方式。它由互連的節點或“神經元”組成,這些節點被組織成層。通過對輸入進行加權、計算總和以及應用非線性激活函數,神經網絡能夠將輸入數據轉換為不同的表示形式,直到產生輸出

Neural network

神經網絡

神經網絡(Neural Network)是什么?神經網絡是由大量的節點(“神經元”)相互連接而成的網絡結構,這些節點在網絡中相互連接,可以處理復雜的數據輸入,執行各種任務,如分類、回歸、模式識別等。

神經網絡的工作原理是什么?模擬人腦神經系統的功能,通過多個節點(神經元)的連接和計算,實現非線性模型的組合和輸出。每個節點接收來自前一層節點的輸入,進行加權和,加上偏置,然后通過激活函數處理,輸出到下一層。

  1. 節點(神經元):神經網絡的基本單元,模擬生物神經元的功能。
  2. 層次:包括輸入層、隱藏層和輸出層。輸入層負責接收輸入數據,隱藏層位于輸入層和輸出層之間,進行數據的加工和轉換,輸出層輸出最終的計算結果。
  3. 權重:連接不同神經元的參數,代表一個神經元輸出對另一個神經元輸出的影響力。在訓練過程中,神經網絡通過調整權重來學習數據中的模式。
  4. 偏置:加到加權和上的一個常數,可以看作是每個神經元的一個額外輸入。偏置允許神經元即使在所有輸入都為零時也有非零的輸出。
  5. 激活函數:決定神經元是否應該被激活(即輸出信號)的函數。常見的激活函數包括Sigmoid、ReLU等。

從感知機到神經網絡:神經網絡起源于20世紀40-50年代的MP模型和感知機,歷經兩次低谷與兩次興起

激活函數

激活函數(Activation Function)是什么?激活函數是神經網絡中神經元節點上的一種函數,用于將神經元的輸入映射到輸出。它決定了節點是否應該被激活(即,是否讓信息通過該節點繼續在網絡中向后傳播)。

在神經網絡中,輸入通過加權求和(權重(W)和偏置(b)),然后被一個函數作用,這個函數就是激活函數。

為什么神經網絡需要激活函數神經網絡中的線性組合(即加權和)本身只能表示線性關系。然而,現實世界中的大多數問題都是非線性的。通過引入激活函數,神經網絡能夠學習并表示這些非線性關系,從而解決更復雜的問題。

感知機(perceptron)

在機器學習中,感知機(perceptron)是最簡單的神經網絡模型之一,只有輸入層和輸出層,是二分類的線性分類器。它可以解決與(AND)、或(OR)等簡單的線性可分問題,但無法解決復雜的異或(XOR)等非線性可分問題。

perceptron

單層感知機

感知機(perceptron)是什么?感知機是由美國學者Frank Rosenblatt在1957年提出的,它是一種模擬人腦神經元工作原理的模型。感知機接收多個輸入信號,通過加權求和并加上偏置值,然后通過一個激活函數將結果轉化為輸出信號。

為什么要學習這么古老的算法?感知機是神經網絡的起源算法,它的工作原理和概念構成了深度學習算法的基礎。通過了解感知機,可以掌握神經網絡的基本組成單元、工作原理和訓練方法,為后續學習更復雜的模型打下基礎。

感知機的工作原理是什么?單層感知機通過加權求和輸入信號并加上偏置值,然后經過階躍激活函數處理,輸出二分類結果。

  1. 加權求和:輸入信號被送往輸出層時,會被分別乘以各自的權重,然后求和。
  2. 偏置值:用于調整輸出層的激活閾值。
  3. 激活函數:在單層感知機中,常用的激活函數是階躍函數,它將大于某個閾值的結果輸出為1,小于閾值的結果輸出為0。

感知機的訓練過程是什么?通過調整權重和偏置值,感知機可以在有限的迭代次數中收斂到一個能夠將訓練數據集正確分類的分離超平面

多層感知機

多層感知機(Multilayer Perceptron,簡稱MLP)是什么?多層感知機由多個神經元層組成,每個神經元層與前一層全連接。其基本結構包括輸入層、輸出層和至少一層或多層的隱藏層。

  1. 輸入層:接收輸入特征,是數據的入口。
  2. 隱藏層:位于輸入層和輸出層之間,用于提取特征和進行非線性變換。隱藏層增加了網絡的容量,使其能夠學習并表示更復雜的函數。
  3. 輸出層:給出最終的預測結果。

多層感知機的工作原理是什么?多層感知機通過前向傳播產生預測結果,計算損失函數評估性能,利用反向傳播算法傳播梯度,并使用優化算法更新權重和偏置以最小化損失。

  1. 前向傳播:輸入數據通過輸入層進入網絡,經過隱藏層的非線性變換,最終到達輸出層并產生預測結果。
  2. 損失函數計算:根據預測結果和真實標簽計算損失函數,用于評估模型的性能。
  3. 反向傳播:通過反向傳播算法,將損失函數的梯度從輸出層傳播到輸入層,以更新神經元之間的權重和偏置。
  4. 參數更新:使用優化算法(如梯度下降)更新權重和偏置,以最小化損失函數。

單層感知機 vs 多層感知機:單層感知機僅包含輸入和輸出層,主要用于線性可分問題的分類,而多層感知機則增加了隱藏層和非線性激活函數,能夠處理復雜的非線性問題

文章轉自微信公眾號@架構師帶你玩轉AI

上一篇:

一文徹底搞懂深度學習(3)

下一篇:

一文徹底搞懂多模態 - 多模態學習
#你可能也喜歡這些API文章!

我們有何不同?

API服務商零注冊

多API并行試用

數據驅動選型,提升決策效率

查看全部API→
??

熱門場景實測,選對API

#AI文本生成大模型API

對比大模型API的內容創意新穎性、情感共鳴力、商業轉化潛力

25個渠道
一鍵對比試用API 限時免費

#AI深度推理大模型API

對比大模型API的邏輯推理準確性、分析深度、可視化建議合理性

10個渠道
一鍵對比試用API 限時免費