主要学习Tensorflow中的Session 会话控制和变量的使用。
Session 会话控制
session 是Tensorflow中用于控制,和输出文件的模块,Session.run()语言可以得到运算的结果,或者想要运算的部分。看如下的例子:
# coding=utf-8
import tensorflow as tf
# Tensorflow中Session()会话控制
m1 = tf.constant([[4, 2]])
m2 = tf.constant([[2], [4]])
product = tf.matmul(m1, m2)
# 第一种方式
sess = tf.Session()
result1 = sess.run(product)
print(result1)
sess.close() # 手动关闭
# 第二种方式
with tf.Session() as sess:
result2= sess.run(product)
print(result2) # 不需要手动关闭
Variable 变量
Variable(0通常是将网络中的权值设为变量,在下面的例子来熟悉一下Variable的用法:
# coding=utf-8
import tensorflow as tf
# Tensorflow的Variable()
# 定义变量
state = tf.Variable(0, name='counter')
# 定义常量
one = tf.constant(1)
new_value = tf.add(state, one)
update = tf.assign(state, new_value)
# 变量必须初始化
init = tf.global_variables_initializer()
with tf.Session() as sess:
sess.run(init)
for i in range(5):
sess.run(update)
print(sess.run(state))
注意:定义了变量必须初始化(tf.global_variables_initialize()),另外直接print(state)是不可以的