Javascript 在tensorflowjs中组合多个输出

Javascript 在tensorflowjs中组合多个输出,javascript,tensorflow.js,Javascript,Tensorflow.js,一所大学给了我一个模型,我想用它来制作热图。 为此,我需要得到最后一个卷积层的结果。因此,我尝试使用旧模型的定义创建一个新模型。我已经在python中看到了这一点,根据文档,这似乎应该是可能的 我的代码如下所示: const组合输出模式=(cam模式)=>{ const conv_layer=cam_model.layers.length-3 const input_layer=cam_model.input const output\u layer=cam\u model.layers[con

一所大学给了我一个模型,我想用它来制作热图。 为此,我需要得到最后一个卷积层的结果。因此,我尝试使用旧模型的定义创建一个新模型。我已经在python中看到了这一点,根据文档,这似乎应该是可能的

我的代码如下所示:

const组合输出模式=(cam模式)=>{
const conv_layer=cam_model.layers.length-3
const input_layer=cam_model.input
const output\u layer=cam\u model.layers[conv\u layer].output
返回模型=tf.model(
输入=输入层,
输出=输出层
)
但是,当我运行代码时,会出现以下错误:

container.ts:156未捕获(承诺中)类型错误:无法读取未定义的属性“sourceLayer”
at e[作为构造函数](容器ts:156)
在新东区(培训编号:483)
at Object.t.model(exports.ts:74)
at预测器(prediction.js:28)
当查看局部变量中的
input_layer
output_layer
时,它们都有sourcelayer

谢谢你的帮助


关于

要构建作为原始模型子集的新层模型(即,
cam\u模型
),您可以尝试以下操作:

const model=tf.sequential()
对于(设i=0;i

请注意,如果您采用这种方法,但希望跳过/省略第一个/输入层,则需要定义一个新的输入层:

您正在使用类似python的语句在js中创建模型。在js中,tf.model接受一个对象

return model = tf.model(
        {inputs: input_layer,
        outputs: output_layer}
    )
类似的答案也可以找到