-
定義 add_layer()
在 Tensorflow 裏定義一個添加層的函數可以很容易的添加神經層,爲之後的添加省下不少時間.神經層裏常見的參數通常有weights、biases和激勵函數。
首先,我們需要導入tensorflow模塊。
import tensorflow as tf
然後定義添加神經層的函數def add_layer(),它有四個參數:輸入值、輸入的大小、輸出的大小和激勵函數,我們設定默認的激勵函數是None。
def add_layer(inputs, in_size, out_size,activation_function=None):
接下來,我們開始定義weights和biases。
因爲在生成初始參數時,隨機變量(normal distribution)會比全部爲0要好很多,所以我們這裏的weights爲一個in_size行, out_size列的隨機變量矩陣。
Weights = tf.Variable(tf.random_normal([in_size, out_size]))
在機器學習中,biases的推薦值不爲0,所以我們這裏是在0向量的基礎上又加了0.1。
biases = tf.Variable(tf.zeros([1, out_size]) + 0.1)
下面,我們定義Wx_plus_b, 即神經網絡未激活的值。其中,tf.matmul()是矩陣的乘法。
Wx_plus_b = tf.matmul(inputs, Weights) + biases
當activation_function——激勵函數爲None時,輸出就是當前的預測值——Wx_plus_b,不爲None時,就把Wx_plus_b傳到activation_function()函數中得到輸出。
if activation_function is None: outputs = Wx_plus_b else: outputs = activation_function(Wx_plus_b)
最後,返回輸出,添加一個神經層的函數——def add_layer()就定義好了。
return outputs
tensorflow學習框架之添加層 def add_layer()
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.