1. 程式人生 > >前向傳播算法

前向傳播算法

兩層 之間 分享 inf 表示 方式 特征 play .com

一個神經元有多個輸入和一個輸出,每個神經元的輸入既可以是其他神經元的輸出也可以是整個神經網絡的輸入。所謂神經網絡的結構就是指的是不同的神經元之間的連接結構。
如下圖所示,一個最簡單的神經元結構的輸出就是所有輸入的加權和,而不同的輸入的權重就是神經元的參數。神經網絡的優化過程就是優化神經元中參數的取值的過程。

技術分享圖片

不同的神經網絡結構前向傳播的方式也不一樣,,本節介紹最簡單的全鏈接神經網絡結構的前向傳播算法。之所以稱之為全鏈接神經網絡是因為相鄰兩層之間任意兩個節點都有連接,如下圖所示:

技術分享圖片

計算神經網絡的前向傳播結果需要三部分信息:

第一個部分是神經網絡的輸入,這個輸入就是從實體中提取的特征向量。比如在上圖中有兩個輸入x1

和x2

第二個部分為神經網絡的連接結構。神經網絡是由神經元構成的,神經網絡的結構給出不同神經元之間輸入輸出的連接關系。神經網絡中的神經元也可以稱之為節點,通常我們使用節點來指代神經網絡中的神經元。 在上圖中,節點有兩個輸入,他們分別是x1和x2的輸出。而的輸出則是節點 y的輸入。

最後一個部分是每個神經元中的參數。在上圖中用W來表示神經元中的參數。W的上標表明了神經網絡的層數,比如W(1)表示第一層節點的參數,而W(2)表示第二層節點的參數。W的下標表明了連接節點編號, 比如W1,2(1) 表示連接x1和a12節點的邊上的權重。如何優化每一 條邊的權重將是算法的關鍵,這一節假設這些權重是已知的。給定神經網絡的輸入,神經網絡的結構以及邊上權重,就可以通過前向傳播算法來計算出神經網絡的輸出。下圖展示了這個神經網絡前向傳播的過程。

技術分享圖片

前向傳播算法