观察张量流模型权重

时间:2016-05-31 07:33:40

标签: python machine-learning tensorflow machine-translation

我在这里使用的tensorflow rnn翻译模型:
translation model

我想根据自己的想法对此代码的一部分进行更改 我想做的第一件事就是在每一层看到target_weights 我所知道的是,首先是一个target_weights数组,其中包含填充的零和一个句子中每个单词的1。 初始化后,它被送到session.run方法,它肯定会改变 现在我想知道是否有人知道如何在学习过程中看到这个数组面临的变化 或者别的什么,我怎样才能看到每个图层的权重并检查每个图层对应的值。

提前致谢

1 个答案:

答案 0 :(得分:1)

您正在寻找的可能是 TensorBoard ,这使您能够可视化网络的任意值/统计信息。

tensorboard

您只需在代码中添加summarizers,例如通过

tf.scalar_summary("norm of weights going", norm_of_weights)

以及稍后创建摘要编写器

merged = tf.merge_all_summaries()
writer = tf.train.SummaryWriter("logs_directory/", sess.graph_def)

这将创建您的日志,您可以通过tensorboard分析。 您定义摘要的方式,您记录的内容等取决于您,并且仅取决于问题。您想分别跟踪每个重量吗?如果是这样 - 为每个添加标量摘要。你想要一个简短的演变吗?专注于这些规范。您还可以通过tf.histogram_summary监视直方图(例如激活的分布),依此类推。