如何 select 在 TensorBoard 的嵌入选项卡中查看哪个检查点?
How can I select which checkpoint to view in TensorBoard's embeddings tab?
小问题:如何select在 TensorBoard 的嵌入选项卡中查看哪个检查点?
问题的较长版本:
我想用 TensorBoard 可视化词嵌入。为此,在阅读 official tutorial (mirror) 后,我添加了以下代码:
embedding_writer = tf.summary.FileWriter(model_folder)
embeddings_projector_config = projector.ProjectorConfig()
embedding = embeddings_projector_config.embeddings.add()
embedding.tensor_name = model.W.name # W corresponds to the embeddings' weights.
projector.visualize_embeddings(embedding_writer, embeddings_projector_config)
# Initialize the model
sess.run(tf.global_variables_initializer())
[...]
# Then, for each training epoch:
model_saver.save(sess, os.path.join(model_folder, 'model_{0:05d}.ckpt'.format(epoch_number)))
查看 TensorFlow 保存日志的文件夹,我确实有每个 epoch 的检查点:
但是,在 TensorBoard 的嵌入选项卡中,我似乎只能查看最新的检查点:
我有时想查看以前 epoch 的嵌入。如何 select 在 TensorBoard 的嵌入选项卡中查看哪个检查点?
我是嵌入可视化工具的工程师之一。感谢您的反馈。我们计划在 UI 中添加一个下拉菜单,允许您选择不同的检查点。
同时,有一个解决方法。您可以编辑位于 TensorBoard 保存日志的文件夹中的 projector_config.pbtxt
。我假设 projector_config.pbtxt
的内容是:
embeddings {
...
}
在文件末尾添加以下行:
model_checkpoint_path: "path_to_log_dir/model_0000N.ckpt"
指向您想要可视化的确切检查点,然后删除(如果存在)行 model_checkpoint_dir: "..."
。然后刷新页面(并可能重新运行 TensorBoard)。
例如,如果您使用 tensorboard --logdir=output
启动了 TensorBoard,并且模型检查点绝对路径是 C:\Users\a\output\en_2017-03-08_17-42-09-310106\model\model_00004.ckpt
,那么您应该附加到 projector_config.pbtxt
:
model_checkpoint_path: "output\en_2017-03-08_17-42-09-310106\model\model_00004.ckpt"
projector_config.pbtxt
示例:
embeddings {
tensor_name: "token_embedding/W:0"
}
model_checkpoint_path: "output\en_2017-03-08_17-42-09-310106\model\model_00004.ckpt"
如果当您点击 TensorBoard 中的嵌入选项卡时没有任何显示,则表示您输入的 model_checkpoint_path
不正确。
希望对您有所帮助!
小问题:如何select在 TensorBoard 的嵌入选项卡中查看哪个检查点?
问题的较长版本:
我想用 TensorBoard 可视化词嵌入。为此,在阅读 official tutorial (mirror) 后,我添加了以下代码:
embedding_writer = tf.summary.FileWriter(model_folder)
embeddings_projector_config = projector.ProjectorConfig()
embedding = embeddings_projector_config.embeddings.add()
embedding.tensor_name = model.W.name # W corresponds to the embeddings' weights.
projector.visualize_embeddings(embedding_writer, embeddings_projector_config)
# Initialize the model
sess.run(tf.global_variables_initializer())
[...]
# Then, for each training epoch:
model_saver.save(sess, os.path.join(model_folder, 'model_{0:05d}.ckpt'.format(epoch_number)))
查看 TensorFlow 保存日志的文件夹,我确实有每个 epoch 的检查点:
但是,在 TensorBoard 的嵌入选项卡中,我似乎只能查看最新的检查点:
我有时想查看以前 epoch 的嵌入。如何 select 在 TensorBoard 的嵌入选项卡中查看哪个检查点?
我是嵌入可视化工具的工程师之一。感谢您的反馈。我们计划在 UI 中添加一个下拉菜单,允许您选择不同的检查点。
同时,有一个解决方法。您可以编辑位于 TensorBoard 保存日志的文件夹中的 projector_config.pbtxt
。我假设 projector_config.pbtxt
的内容是:
embeddings {
...
}
在文件末尾添加以下行:
model_checkpoint_path: "path_to_log_dir/model_0000N.ckpt"
指向您想要可视化的确切检查点,然后删除(如果存在)行 model_checkpoint_dir: "..."
。然后刷新页面(并可能重新运行 TensorBoard)。
例如,如果您使用 tensorboard --logdir=output
启动了 TensorBoard,并且模型检查点绝对路径是 C:\Users\a\output\en_2017-03-08_17-42-09-310106\model\model_00004.ckpt
,那么您应该附加到 projector_config.pbtxt
:
model_checkpoint_path: "output\en_2017-03-08_17-42-09-310106\model\model_00004.ckpt"
projector_config.pbtxt
示例:
embeddings {
tensor_name: "token_embedding/W:0"
}
model_checkpoint_path: "output\en_2017-03-08_17-42-09-310106\model\model_00004.ckpt"
如果当您点击 TensorBoard 中的嵌入选项卡时没有任何显示,则表示您输入的 model_checkpoint_path
不正确。
希望对您有所帮助!