如何在TensorFlow.js中评估模型的中间节点

时间:2019-07-01 23:00:15

标签: tensorflow tensorflow.js

我正在研究TensorFlow.js图像识别模型,并尝试在softmax之前获取最后一层以最后进行分类。我正在尝试传递模型可以分类的相同张量,但只需获取模型图中的中间节点的结果即可。

我看到"dense_Dense1"name中的model.json字段。这是在Sequential节点下,我可以像这样查询Layer对象:

model.getLayer('sequential_2').getLayer('dense_Dense1')

但是将其作为所需的输出传递到GraphModel#execute不起作用,并在控制台上产生以下错误消息:

model.execute(tf.browser.fromPixels(document.querySelector('img')), 'dense_Dense1')
  

错误:层Sequence_2具有多个入站节点,因此“层输出”的概念定义不明确。请改用getOutputAt(nodeIndex)

这似乎可能完全忽略了第二个参数,而没有得到我要的图层的输出。但是错误消息使我感到困惑-一个节点具有多个入站节点,并且您可以评估该节点的“层输出”,这似乎很正常。错误消息还引用了getOutputAt,这听起来像是在执行我要查找的操作,但这未在API docs的任何位置列出。

我怀疑我在这里缺少一些概念性的东西,但不确定是什么。

0 个答案:

没有答案