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

Tensorflow中前向傳播演算法

神經網路的前向傳播演算法主要構成部分:

      1.神經網路的輸入;

      2.神經網路的連線結構;

      3.每個神經元中的引數。


                 為剪下圖,為表示前向傳播過程

由輸入層的取值推導隱藏層取值,再由隱藏層取值推導輸出層取值。
通過矩陣乘法計算前向傳播演算法:
輸入層為1*2的矩陣x=[x1,x2]  ,而輸入層和隱藏層的連線權值W為一個2*3的矩陣:w=[w1,w2,w3,w4,w5,w6];

則通過矩陣乘法得到隱藏層中三個節點所組成的向量取值:a=[x1*w1+x2*w4,x1*w2+x2*w5,x1*w3+x2*w6]

再通過前向傳播演算法得出輸出層:隱藏層和輸出層間連線的權值用3*1矩陣s=[s1,

                                                                                                                                        s2,

                                                                                                                                         s3]表示(為便於區分);

則由a*s得到輸出層:[y]=[(x1*w1+x2*w4)*s1+(x1*w2+x2*w5)*s2+(x1*w3+x2*w6)*s3]

用tensorflow程式實現則用到tf.matmul()函式,表示為:

a=tf.matmul(x,w)

y=tf.matmul(a,s)

其中,tf.matmul()函式實現了矩陣乘法的功能。