神經網路的基礎知識

2021-10-09 09:44:09 字數 2690 閱讀 6181

前饋神經網路是最早被提出的神經網路,熟悉的單層感知機,多層感知機,卷積深度網路等都屬於前饋神經網路,之所以叫前饋,可能是因為資訊向前流:資料從輸入–計算–輸出步驟。像rnn有反饋連線的叫反饋神經網路。

如圖:乙個典型的神經元模型:包含n個輸入,1個輸出,計算功能(先求和,再將結果送入f啟用函式中) 圖中箭頭代表連線,每個箭頭都會包含乙個權值w。乙個神經網路的訓練演算法就是讓權重的值調整到最佳,使得整個網路的訓練效果最好。

感知機僅有兩層:輸入層和輸出層。如圖:輸入層有4個輸入單元,輸出層有2個神經單元,其中y1的值是4個輸入單元與權重相乘再求和,然後再用f啟用函式啟用後的值,同理f2也是。雖然輸入相同不過對應的權重不同,

由於單層感知機對線性可分或近似可分的資料處理效果很好,但是對線性不可分的資料的效果不理想,即使人們想到了增加輸出層的神經元數,調正啟用函式,都還是不好,後來人們想到增加層數,這就引入了多層神經網路。

如圖:包含n個輸入單元,p個隱藏單元,q個輸出神經元 共兩層神經網路。

增加了層數隨之而來的計算複雜度也增加了。此刻人們面臨的問題大致如下:

面對這些問題,直到2023年hinton和rumelhar等人提出了**反向傳播(bp)**演算法,解決了兩層神經網路所需要的計算量問題。

多層神經網路採用反向傳播的主要思想步驟如下:

①②就是前向傳播過程,③④就是反向傳播過程。

如圖(為了簡單介紹,省略偏差b):c是損失函式,z是啟用函式,

前向傳播:z=∑

i=12

(wix

i)z = \sum_^2(w_ix_i)

z=i=1∑

2​(w

i​xi

​),a =g

(z)=

1/(1

+e−z

)a= g(z) = 1/(1+e^)

a=g(z)

=1/(

1+e−

z)c =1

/2(∣

∣a−y

∣∣2)

c = 1/2(||a-y||^2)

c=1/2(

∣∣a−

y∣∣2

)反向傳播:

δ (a

)=∂c

/∂a=

−(y−

a)\delta^ = \partial c/\partial a = -(y-a)

δ(a)=∂

c/∂a

=−(y

−a)δ(z

)=∂c

/∂z=

(∂c/

∂a)∗

(∂a/

∂z)=

δ(a)

a(1−

a)\delta^ = \partial c/\partial z =(\partial c/\partial a ) * ( \partial a/\partial z) = \delta^ a(1-a)

δ(z)=∂

c/∂z

=(∂c

/∂a)

∗(∂a

/∂z)

=δ(a

)a(1

−a)再根據鏈式求導法則求c關於權重w和偏差b的梯度。

∇ wc

=(∂c

/∂z)

∗(∂z

/∂w)

=δ(z

)xt\nabla_wc =(\partial c/\partial z)* ( \partial z/\partial w) =\delta^ x^t

∇w​c=(

∂c/∂

z)∗(

∂z/∂

w)=δ

(z)x

t隨著神經網路的層數的增加,計算的複雜度增加,因微積分的鏈式規則導致的梯度不穩定,因深度導致的bp演算法困難,資訊丟失,對超引數敏感,對初始資料敏感,以及因此而導致的欠擬合或過擬合等,面對這些問題,目前也有策略,雖然不是完美,但也不錯。如下:

如何選擇啟用函式?常見的有:sigmoid,tanh,relu,softmax

圖中分別是:sigmoid , tanh, relu啟用函式

其對應的導數圖如下:

答:當神經網路層數不多時,選擇這四個都可以,當搭建的神經網路層數較多時,需要適當選舉,不當將導致梯度消失,不宜選擇sigmoid,tanh因為它們導數都小於1,將導致梯度消失。當然導數也不能大於1,大於1將導致梯度**。

《python深度學習基於tensorflow 》吳茂貴 王冬 李濤 楊本法 著

神經網路基礎知識

1 前饋神經網路 前饋神經網路描述的是網路的結構,是指每一層的神經元只接受前一層神經元的輸入,並且輸出到下一層。2 bp神經網路 3 mlp mlp是多層感知機也被稱為多層神經網路,是一種前向結構,包括輸入層 隱藏層和輸出層。至少三層結構 即隱藏層只有一層網路 如圖所示 4 cnn cnn就是著名的...

神經網路基礎知識(神經網路簡介)

一 生物神經網路 神經元的排列和突觸的強度 由複雜的化學過程決定 確立了神經網路的功能。突觸有兩種型別,興奮性突觸和抑制性突觸。前者產生正突觸後電位,後者產生負突觸後電位。抑制性 神經元雖然接收到其他神經元傳遞的資訊,但沒有向外傳遞資訊,該神經元稱 抑制性 的 興奮性 當乙個神經元的樹突接收的興奮資...

神經網路基礎知識收集

更新中 1 神經網路 人工神經網路 artificial neural network,ann 是指一系列受生物學和神經學啟發的數學模型。這些模型主要是通過對人腦的神經元網路進行抽象,構建人工神經元,並按照一定拓撲結構來建立人工神經元之間的連線,來模擬生物神經網路。在人工智慧領域,人工神經網路也常常...