tf中的变量:
随机数生成:
a=tf.variable(tf.random_normal([2,3],stddev=2))#stddev方差为2,初始化为0,正太分布
tf.truncated_normal:正太分布
tf.random_uniform:平均分布
tf.random_gamma:gamma分布
常量生成:
tf.zeros:全是0的数组
,tf.ones:全是1的数组
,tf.fill:全部是给定数字的数组
tf.constant:给定数值的常亮
eg:basics=tf.Variable(tf.seros([3])),初始化一个全为0,长度为3的数组
初始化:
initializer:单个
initialize_all_variables:初始化所有申明的变量
一个前向传播算法的实现
import tensorflow as tf
w1=tf.Variable(tf.random_normal([2,3],stddev=1,seed=1))#变量申明
w2=tf.Variable(tf.random_normal([3,1],stddev=1,seed=1))#变量申明
x=tf.constant([[0.7,0.9]])#特征值
a=tf.matmul(x,w1)#一层
y=tf.matmul(a,w2)#二层
session=tf.Session()#开启session
session.run(w1.initializer)#初始化w1
session.run(w2.initializer)#初始化w2
print(session.run(y))#开始节点计算
session.close()#关闭session
或者
import tensorflow as tf
w1=tf.Variable(tf.random_normal([2,3],stddev=1))
w2=tf.Variable(tf.random_normal([3,1],stddev=1))
x=tf.placeholder(tf.float32,shape=(1,2),name='input')
a=tf.matmul(x,w1)
y=tf.matmul(a,w2)
session=tf.Session()
init_op=tf.initialize_all_variables()
session.run(init_op)
print(session.run(y,feed_dict={x:[[0.7,0.9]]}))
session.close()
placeholder多参数形式
import tensorflow as tf
w1=tf.Variable(tf.random_normal([2,3],stddev=1))
w2=tf.Variable(tf.random_normal([3,1],stddev=1))
x=tf.placeholder(tf.float32,shape=(3,2),name='input')
a=tf.matmul(x,w1)
y=tf.matmul(a,w2)
session=tf.Session()
init_op=tf.initialize_all_variables()
session.run(init_op)
print(session.run(y,feed_dict={x:[[0.7,0.9],[0.9,0.6],[0.3,0.6]]}))session.close()
网友评论