5. 变量
变量也是一种operation,是一种特殊的张量,与张量不同的是变量op可以持久化,而普通张量op不能,所以变量可以用来存储训练模型的各种参数
import tensorflow as tf
# 创建一个变量
var = tf.Variable(tf.random_normal([2, 3], mean=1.2, stddev=2.0))
print(var)
# 变量初始化,如果要在会话中用到变量计算必须要初始化所有变量,否则会报错
init_op = tf.global_variables_initializer()
with tf.compat.v1.Session() as sess:
# 必须先执行变量初始化,才能进行后续的变量计算
sess.run(init_op)
print(sess.run(var))
6. 可视化
可视化的简单流程是:将程序图结构序列化形成事件文件(events)保存起来,然后用web界面(tensorboard)读取并显示这些储存好的事件文件。用summary模块来管理可视化
import tensorflow as tf
# 创建一个变量
var = tf.Variable(tf.random_normal([2, 3], mean=1.2, stddev=2.0))
# 创建一个加法
a = tf.constant(3.0)
b = tf.constant(4.0)
sum1 = tf.add(a, b)
# 变量初始化,如果要在会话中用到变量计算必须要初始化所有变量,否则会报错
init_op = tf.global_variables_initializer()
with tf.Session() as sess:
# 必须先执行变量初始化,才能进行后续的变量计算
sess.run(init_op)
# 把程序的图结构写入事件文件,graph:把指定的图写入到文件中去
tf.summary.FileWriter("./summary/learning/", graph=sess.graph)
print(sess.run(sum1))
print(sess.run(var))
运行完后在设定的目录下会生成一个文件,新创建的文件都是以本机域名结尾,如下图所示:
生成文件后,使用tensorboard将文件发布到服务中,如图下所示:
然后在浏览器中输入http://localhost:6006或者http://127.0.0.1:6006,就会出现下图界面: