Keras:获取模型的中间层最后一层的输出结果

Keras:获取模型的中间层最后一层的输出结果,第1张

最近在做实验时,需要使用到模型在训练时的输出结果。

有些情况下,需要用到模型中间的若干层的输出结果,我的实验中需要用到模型的最后输出结果。

参考另一篇文章中的方法:python - Keras, How to get the output of each layer? - Stack Overflow

但是我的实验更复杂一点,我的模型中有多个输入和多个输出,但实现起来也不是很复杂,获取模型最后一层的输出结果的代码如下:

from keras import backend as K

get_layer_output = K.function([model.layers[index_1].input, model.layers[index_2].input],
                                  [model.layers[index_3].output])
layer_output = get_layer_output([train_x_1, train_x_2])[0]

我的模型中有多个输入和多个输出,但是我需要的最终输出结果只有一个,这个输出结果需要用到两个输入数据,因此,我设置了两个输入:

model.layers[index_1].input,和model.layers[index_2].input,

然后设置了一个输出:model.layers[index_3].output。

其中index_1,2,3表示模型中所在的层数,下标从0开始。

model表示训练好的模型名称。

欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/langs/714107.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-04-24
下一篇 2022-04-24

发表评论

登录后才能评论

评论列表(0条)

保存