小编Kar*_*oso的帖子

如何在 Keras 的输出中添加 tf.constant

我有一个正在运行的模型,构建:

model = tf.keras.Model(inputs=input_layers, outputs=outputs)

如果我尝试向输出添加一个简单的常量,则会收到一条错误消息。前任:

output = output + [tf.constant(['label1', 'label2'], dtype = tf.string)]
model = tf.keras.Model(inputs=input_layers, outputs=outputs)
Run Code Online (Sandbox Code Playgroud)

错误信息 : AttributeError: Tensor.op is meaningless when eager execution is enabled.

有没有办法将它添加到模型中,即使在训练之后或在 save() 时间。

这个想法是在服务时间将常量作为输出。

带有错误的完整网络示例:

import tensorflow as tf
import tensorflow.keras as keras

input = keras.layers.Input(shape=(2,))
hidden = keras.layers.Dense(10)(input)
output = keras.layers.Dense(3, activation='sigmoid')(hidden)
model = keras.models.Model(inputs=input, outputs=[output, tf.constant(['out1','out2','out3'], dtype=tf.string)])
Run Code Online (Sandbox Code Playgroud)

错误

in <module>
      5 hidden = keras.layers.Dense(10)(input)
      6 output = keras.layers.Dense(3, activation='sigmoid')(input)
----> 7 model = keras.models.Model(inputs=input, outputs=[output, tf.constant(['out1','out2','out3'], dtype=tf.string)])

/lib/python3.6/site-packages/tensorflow_core/python/keras/engine/training.py …
Run Code Online (Sandbox Code Playgroud)

python machine-learning keras tensorflow

2
推荐指数
1
解决办法
1036
查看次数

标签 统计

keras ×1

machine-learning ×1

python ×1

tensorflow ×1