深度学习:Tensorflow变量op和可视化TensorBoard

简介: 深度学习:Tensorflow变量op和可视化TensorBoard

变量op

变量也是一种op,是一种特殊的张量

能够进行存储持久化,它的值就是张量,默认被训练


变量op特点:

1、变量op能够持久化保存,普通张量op是不行的

2、当定义一个变量op的时候,一定要在会话中去运行初始化

3、name参数,在tensorboard显示名字,区分相同op


变量的创建


tf.Variable(initial_value=NOne, name=None, trainable=True)

赋值


assign(value)

返回变量值


eval(session=None)

初始化所有变量op


tf.global_varibles_initializer()

可视化学习TensorBoard

数据序列化 events事件文件

TensorBoard通过读取TensorFlow的事件文件来运行


filewriter = tf.summary.FileWriter("/temp/", graph)

写入事件文件到指定目录(最好是绝对路径),以提供tensorboard使用


开启


$ tensorboard --logdir="/temp/"

打开浏览器 127.0.0.1:6006


代码示例

# -*- coding: utf-8 -*-
import tensorflow as tf
a = tf.constant([1, 2, 3], name="a")
b = tf.constant(3.0, name="b")
c = tf.constant(3.0, name="c")
e = tf.add(b, c, name="add")
var = tf.Variable(tf.random_normal((2, 3), mean=0.0, stddev=1.0), name="name")
print(a, var)
# Tensor("Const:0", shape=(3,), dtype=int32)
# <tf.Variable 'Variable:0' shape=(2, 3) dtype=float32_ref>
# 显示初始化op
init_op = tf.global_variables_initializer()
with tf.Session() as session:
    # 必须运行初始化op
    session.run(init_op)
    # 把程序的graph图结构写入事件文件
    filewriter = tf.summary.FileWriter("temp/", graph=session.graph)
    print(session.run([a, var]))
    # [array([1, 2, 3], dtype=int32),
    # array([[ 1.0577981 , -1.1390951 , -0.12928246],
    #   [ 1.2623566 ,  0.7676961 ,  0.46882382]], dtype=float32)]

增加变量显示

目的:观察模型的参数,损失值等变量值的变化


1、收集变量


# 收集对于损失函数和准确率等单值变量
tf.summary.scalar(name="", tensor)
# 收集高纬度的变量参数
tf.summary.histogram(name="", tensor)
# 收集输入的图片张量能显示图片
tf.summary.image(name="", tensor)

2、合并变量写入事件文件


merged = tf.summary.merge_all()
# 合并运行,每次迭代都需要运行
summary = sess.run(merged)
# 添加,i表示第几次的值
FileWriter.add_summary(summary, i)
相关文章
|
15天前
|
机器学习/深度学习 API 语音技术
|
1月前
|
机器学习/深度学习 数据可视化 算法
深度学习之梯度下降参数可视化
深度学习之梯度下降参数可视化
34 2
|
3月前
|
机器学习/深度学习 算法 TensorFlow
文本分类识别Python+卷积神经网络算法+TensorFlow模型训练+Django可视化界面
文本分类识别Python+卷积神经网络算法+TensorFlow模型训练+Django可视化界面
63 0
文本分类识别Python+卷积神经网络算法+TensorFlow模型训练+Django可视化界面
|
3月前
|
机器学习/深度学习 Dart TensorFlow
TensorFlow Lite,ML Kit 和 Flutter 移动深度学习:6~11(5)
TensorFlow Lite,ML Kit 和 Flutter 移动深度学习:6~11(5)
72 0
|
9天前
|
机器学习/深度学习 运维 监控
TensorFlow分布式训练:加速深度学习模型训练
【4月更文挑战第17天】TensorFlow分布式训练加速深度学习模型训练,通过数据并行和模型并行利用多机器资源,减少训练时间。优化策略包括配置计算资源、优化数据划分和减少通信开销。实际应用需关注调试监控、系统稳定性和容错性,以应对分布式训练挑战。
|
1月前
|
机器学习/深度学习 数据可视化 Linux
深度学习模型可视化工具——Netron使用介绍
深度学习模型可视化工具——Netron使用介绍
44 2
|
2月前
|
机器学习/深度学习 PyTorch TensorFlow
Python中的深度学习:TensorFlow与PyTorch的选择与使用
Python中的深度学习:TensorFlow与PyTorch的选择与使用
|
2月前
|
机器学习/深度学习 数据可视化 TensorFlow
基于tensorflow深度学习的猫狗分类识别
基于tensorflow深度学习的猫狗分类识别
63 1
|
3月前
|
机器学习/深度学习 PyTorch TensorFlow
【TensorFlow】深度学习框架概述&TensorFlow环境配置
【1月更文挑战第26天】【TensorFlow】深度学习框架概述&TensorFlow环境配置
|
3月前
|
机器学习/深度学习 人工智能 API
TensorFlow Lite,ML Kit 和 Flutter 移动深度学习:1~5
TensorFlow Lite,ML Kit 和 Flutter 移动深度学习:1~5
71 0

热门文章

最新文章