python - 在 add_summary 中为 summary.value 中的值:AttributeError:“张量”对象没有属性“值”
问题描述
这是一个非常基本的张量板标量日志:
import numpy as np
import tensorflow as tf
a = np.arange(10)
x = tf.convert_to_tensor(a, dtype=tf.float32)
x_summ = tf.summary.scalar("X", x)
writer = tf.summary.FileWriter('/tmp/logdir')
writer.add_summary(x_summ)
但是,我在 summary.value 中的值的 add_summary 中收到错误:
AttributeError: 'Tensor' object has no attribute 'value'.
有什么解决办法吗?
TensorFlow 文档说当摘要张量的形状或类型错误时会引发 ValueError。当我打印x_summ
它显示:
Tensor("X:0", shape=(), dtype=string)
我不明白为什么NULL
这里的形状。
解决方案
出现值错误是因为您必须在会话中评估摘要节点。
with tf.Session() as sess:
s = sess.run(x_summ)
writer.add_summary(s)
但请注意,当您尝试在标量摘要中跟踪 10 个值时,这会引发另一个错误。但是我认为你会在训练期间跟踪一些有意义的变量(比如损失),这并不重要。
推荐阅读
- css - 容器内的弹性尺寸项目
- oracle - VPD 策略失败并出现 ORA-28113:策略谓词有错误
- windows - 使用文件名和当前日期戳创建多个 txt (Text_01.txt --- Text_50.txt) 文件
- mysql - 正确显示 MySQL 日期
- javascript - 如何在“react-native-datepicker”中使用“null”数据?如果用户愿意,我想使用空数据
- video - 将 YUV420 帧编码为 VP9
- php - 使用 preg_replace 从 img 标签中删除宽度和高度会导致空值
- excel - 在excel VBA中通过硒为每个谷歌搜索创建新标签
- linux - 如何在后台运行 script.py?
- javafx - 在使用 JavaFX 拖动期间更改 dragView