将 KerasTensor 转换为 numpy 数组
Converting KerasTensor to numpy array
我正在尝试将“KerasTensor”转换为 numpy 数组。我试过将 KerasTensor 转换为 tf.Tensor (没有运气)。我也尝试过使用 tensor.numpy()、tensor.eval() 和 keras.backend.eval(tensor) 所有这些都没有用。尝试“.numpy()”和“.eval()”我得到 AttributeError: 'KerasTensor' object has no attribute 'numpy' 错误。如何将提取的 KerasTensor 转换为 numpy 数组或 EagerTensor,以便我可以使用 .numpy() 方法?
张量流版本:2.8.0
凯拉斯版本:2.8.0
感谢帮助
编辑(附加信息):模型是使用 keras functional API 构建的。在 fit() 之后,我通过以下方式提取编码输入: encoded = model.get_layer("encoder_output").output 之后我尝试像上面描述的那样转换“编码”KerasTensor,它确实不工作。
没有可转换为 numpy 的值。
你需要输入才能有输出。
在 keras 中,最好的做法是构建一个子模型。
submodel = Model(original_model.inputs, original_model.get_layer("encoder_output").output)
results = submodel.predict(numpy_input)
我正在尝试将“KerasTensor”转换为 numpy 数组。我试过将 KerasTensor 转换为 tf.Tensor (没有运气)。我也尝试过使用 tensor.numpy()、tensor.eval() 和 keras.backend.eval(tensor) 所有这些都没有用。尝试“.numpy()”和“.eval()”我得到 AttributeError: 'KerasTensor' object has no attribute 'numpy' 错误。如何将提取的 KerasTensor 转换为 numpy 数组或 EagerTensor,以便我可以使用 .numpy() 方法?
张量流版本:2.8.0 凯拉斯版本:2.8.0
感谢帮助
编辑(附加信息):模型是使用 keras functional API 构建的。在 fit() 之后,我通过以下方式提取编码输入: encoded = model.get_layer("encoder_output").output 之后我尝试像上面描述的那样转换“编码”KerasTensor,它确实不工作。
没有可转换为 numpy 的值。
你需要输入才能有输出。
在 keras 中,最好的做法是构建一个子模型。
submodel = Model(original_model.inputs, original_model.get_layer("encoder_output").output)
results = submodel.predict(numpy_input)