本文目錄:
- 一、什么是神經網絡
- 二、如何構建神經網絡
- 三、神經網絡內部狀態值和激活值
一、什么是神經網絡
人工神經網絡(Artificial Neural Network, 簡寫為ANN)也簡稱為神經網絡(NN),是一種模仿生物神經網絡結構和功能的計算模型。它由多個互相連接的人工神經元(也稱為節點)構成,可以用于處理和學習復雜的數據模式,尤其適合解決非線性問題。人工神經網絡是機器學習中的一個重要模型,尤其在深度學習領域中得到了廣泛應用。
人腦可以看做是一個生物神經網絡,由眾多的神經元連接而成。各個神經元傳遞復雜的電信號,樹突接收到輸入信號,然后對信號進行處理,通過軸突輸出信號。下圖是生物神經元示意圖:
當電信號通過樹突進入到細胞核時,會逐漸聚集電荷。達到一定的電位后,細胞就會被激活,通過軸突發出電信號。
二、如何構建神經網絡
神經網絡是由多個神經元組成,構建神經網絡就是在構建神經元。以下是神經網絡中神經元的構建說明:
這個流程就像,來源不同樹突(樹突都會有不同的權重)的信息, 進行加權的計算, 輸入到細胞中做加和,再通過激活函數輸出細胞值。
同一層的多個神經元可以看作是通過并行計算來處理相同的輸入數據,學習輸入數據的不同特征。每個神經元可能會關注輸入數據中的不同部分,從而捕捉到數據的不同屬性。
接下來,我們使用多個神經元來構建神經網絡,相鄰層之間的神經元相互連接,并給每一個連接分配一個強度,如下圖所示:
神經網絡中信息只向一個方向移動,即從輸入節點向前移動,通過隱藏節點,再向輸出節點移動。其中的基本部分是:
- 輸入層(Input Layer): 即輸入x的那一層(如圖像、文本、聲音等)。每個輸入特征對應一個神經元。輸入層將數據傳遞給下一層的神經元。
- 輸出層(Output Layer): 即輸出y的那一層。輸出層的神經元根據網絡的任務(回歸、分類等)生成最終的預測結果。
- 隱藏層(Hidden Layers): 輸入層和輸出層之間都是隱藏層,神經網絡的“深度”通常由隱藏層的數量決定。隱藏層的神經元通過加權和激活函數處理輸入,并將結果傳遞到下一層。
特點是:
- 同一層的神經元之間沒有連接;
- 第N層的每個神經元和第N-1層的所有神經元相連(這就是Fully Connected的含義),這就是全連接神經網絡(FCNN);
- 全連接神經網絡接收的樣本數據是二維的,數據在每一層之間需要以二維的形式傳遞;
- 第N-1層神經元的輸出就是第N層神經元的輸入;
- 每個連接都有一個權重值(w系數和b系數)。
三、神經網絡內部狀態值和激活值
每一個神經元工作時,前向傳播會產生兩個值,內部狀態值(加權求和值)和激活值;反向傳播時則會產生激活值梯度和內部狀態值梯度。
-
內部狀態值
- 神經元或隱藏單元的內部存儲值,它反映了當前神經元接收到的輸入、歷史信息以及網絡內部的權重計算結果。
- 每個輸入 x i x_i xi?都有一個與之相乘的權重 w i w_i wi?,表示每個輸入信號的重要性。
- z=w?x+b
- w:權重矩陣
- x:輸入值
- b:偏置
-
激活值
- 通過激活函數(如 ReLU、Sigmoid、Tanh)對內部狀態值進行非線性變換后得到的結果。激活值決定了當前神經元的輸出。
- a=f(z)
- f:激活函數
- z:內部狀態值
通過控制每個神經元的內部狀態值和激活值的大小、每一層內部狀態值的方差和每一層激活值的方差可讓整個神經網絡工作的更好。
今天的分享到此結束。