TensorFlow 入门(二)——神经网络参数

神经网络参数与tensorflow变量

TensorFlow中的变量声明函数tf.Variable(),其中的一些生成函数如下:

随机数函数 分布 参数
tf.random_normal 正态分布 均值mean,标准差stddev,取值类型dtype
tf.truncated_normal 正态分布,若偏离均值两个标准差,重新生成 均值,标准差,取值类型
tf.random_uniform 均匀分布 最小值,最大值,取值类型
常数函数 功能 用法
tf.zeros 全0 tf.zeros([2,3])
tf.ones 全1 tf.ones([2,3])
tf.constant 指定常数 tf.constant([[1,2,3]])
tf.fill 产生一个全为给定数字的数组 tf.fill([2,3],9)

下面是一段实例:

w1 = tf.Variable(tf.random_normal((2,3),stddev=2,seed=1))#矩阵大小可用()
weights2 = tf.Variable(tf.random_normal([3,1],stddev=2,seed=1))
b = tf.Variable(tf.zeros([3]))#3为长度,即列数
w2 = tf.Variable(weights2.initialized_value())#变量间的赋值
x = tf.constant([[0.7, 0.9]])
a = tf.matmul(x, w1)#乘法函数
y = tf.matmul(a, w2)
with tf.Session() as sess:
    sess.run(w1.initializer)#变量先要初始化
    sess.run(w2.initializer)
    print(sess.run(y))

可以看到tensorflow允许用一个变量给另一个变量赋值(w2 = tf.Variable(weights2.initialized_value()))当然变量类型应一致
2.占位符

x = tf.placeholder(tf.float32, shape=[None, 2], name="input_x")
y_ = tf.placeholder(tf.float32, shape=[None, 1], name="y_input")

类型和维度必须有,name可选

你可能感兴趣的:(tensorflow)