本系列使用的是tensorflow0.12和极客学院的中文教程有出入
import tensorflow as tf
state=tf.Variable(0,name="counter")#使用tensorflow在默认的图中创建节点,这个节点是一个变量
one=tf.constant(1)
new_value=tf.add(state,one)#对常量与变量进行简单的加法操作
update=tf.assign(state, new_value)#赋值操作。将new_value的值赋值给state变量,返回值=new_value赋给updata
init_op=tf.global_variables_initializer()#之前只是定义好了图,并没有变量并没有初始化
with tf.Session() as sess:
print(sess.run(init_op))
print("new_value",sess.run(new_value))#0+1
print("state",sess.run(state))#初始化的0
print("------")
for _ in range(3):
print("update",sess.run(update))#赋值更新操作。将new_value的值赋值给update,state变量。
print("new_value",sess.run(new_value))#state+one
print("state",sess.run(state))
print("------")
输出:
None new_value 1 state 0 ------ update 1 new_value 2 state 1 ------ update 2 new_value 3 state 2 ------ update 3 new_value 4 state 3 ------
输出多个值
import tensorflow as tf
input1 = tf.constant(3.0)
input2 = tf.constant(2.0)
input3 = tf.constant(5.0)
intermed = tf.add(input2, input3)
mul = tf.mul(input1, intermed)
with tf.Session() as sess:
result = sess.run([mul, intermed])
print(result)
[21.0, 7.0]
使用placeholder作为占位符
import tensorflow as tf
input1 = tf.constant(3.0)
input2 = tf.placeholder(tf.float32)
input3 = tf.constant(5.0)
intermed = tf.add(input2, input3)
mul = tf.mul(input1, intermed)
with tf.Session() as sess:
result = sess.run([mul], feed_dict={input2:[7.]})
print(result)
[array([ 36.], dtype=float32)]