Tensorboard 嵌入可视化在传递元数据时挂起(class 标签)
Tensorboard embedding visualization hanging when passed metadata (class labels)
在 tensorboard (TF v1.0.1) 中使用新的嵌入可视化功能时,我很难向它显示的点添加标签。基本上,当我尝试添加此元数据时,嵌入工具会挂起并且永远不会加载。不幸的是,目前此工具的文档非常少。
我有一个 250 class 监督 classification 正在接受训练(在 AlexNet 之类的东西上),我可以使用嵌入工具在训练期间很好地可视化最终的 fc 层 (fc8)。
但是一旦我添加一些代码来为绘图添加标签,即通过 class(而不是全蓝色)获得不同颜色的点,选项卡就永远不会加载(卡在一条消息上,说明 'loading points'永远)
我在 epoch/training 循环之前添加的代码是:
fw=open('snapshots/metadata.tsv','wt')
for i in range(0,250):
fw.write('cat%d\n' % i)
fw.close()
tf.train.write_graph(sess.graph_def, './', 'train.pbtxt')
config = projector.ProjectorConfig()
embedding = config.embeddings.add()
embedding.tensor_name = fc8.name
embedding.metadata_path = 'snapshots/metadata.tsv'
tmp_writer = tf.summary.FileWriter(out_tb)
projector.visualize_embeddings(tmp_writer, config)
其中 fc8 是我想要可视化的张量,之前是从默认图中获得的。所有检查点、tensorboard 事件和现在的元数据(标签)本身都被写入一个名为 'snapshots'
的子文件夹中
配置文件按原样写成 projector_config.pbtxt,包含
embeddings {
tensor_name: "fc8/fc8:0"
metadata_path: "snapshots/metadata.tsv"
}
如果我删除此文件,嵌入选项卡将正常加载并且不会挂起,即我会看到变暗的屏幕和带有 'loading tensors..' 等内容的白色中央小框和一个(未标记的)点云已显示。
我配置有误吗?即使我提高 GLOG 级别,我也没有将任何错误记录到我调用 tensorboard 服务器的控制台。
非常感谢任何指点。
解决了这个问题 - 文件中的张量名称不正确,应该是:
embeddings {
tensor_name: "fc8/weights"
metadata_path: "snapshots/metadata.tsv"
}
事实证明,如果您在配置文件中输入无效的 tensor_name,那么张量板会在加载嵌入选项卡时挂起/没有错误捕获(TF v1.0.1)
在 tensorboard (TF v1.0.1) 中使用新的嵌入可视化功能时,我很难向它显示的点添加标签。基本上,当我尝试添加此元数据时,嵌入工具会挂起并且永远不会加载。不幸的是,目前此工具的文档非常少。
我有一个 250 class 监督 classification 正在接受训练(在 AlexNet 之类的东西上),我可以使用嵌入工具在训练期间很好地可视化最终的 fc 层 (fc8)。
但是一旦我添加一些代码来为绘图添加标签,即通过 class(而不是全蓝色)获得不同颜色的点,选项卡就永远不会加载(卡在一条消息上,说明 'loading points'永远)
我在 epoch/training 循环之前添加的代码是:
fw=open('snapshots/metadata.tsv','wt')
for i in range(0,250):
fw.write('cat%d\n' % i)
fw.close()
tf.train.write_graph(sess.graph_def, './', 'train.pbtxt')
config = projector.ProjectorConfig()
embedding = config.embeddings.add()
embedding.tensor_name = fc8.name
embedding.metadata_path = 'snapshots/metadata.tsv'
tmp_writer = tf.summary.FileWriter(out_tb)
projector.visualize_embeddings(tmp_writer, config)
其中 fc8 是我想要可视化的张量,之前是从默认图中获得的。所有检查点、tensorboard 事件和现在的元数据(标签)本身都被写入一个名为 'snapshots'
的子文件夹中配置文件按原样写成 projector_config.pbtxt,包含
embeddings {
tensor_name: "fc8/fc8:0"
metadata_path: "snapshots/metadata.tsv"
}
如果我删除此文件,嵌入选项卡将正常加载并且不会挂起,即我会看到变暗的屏幕和带有 'loading tensors..' 等内容的白色中央小框和一个(未标记的)点云已显示。
我配置有误吗?即使我提高 GLOG 级别,我也没有将任何错误记录到我调用 tensorboard 服务器的控制台。
非常感谢任何指点。
解决了这个问题 - 文件中的张量名称不正确,应该是:
embeddings {
tensor_name: "fc8/weights"
metadata_path: "snapshots/metadata.tsv"
}
事实证明,如果您在配置文件中输入无效的 tensor_name,那么张量板会在加载嵌入选项卡时挂起/没有错误捕获(TF v1.0.1)