在 TensorFlow 1.x 中使用 Keras 加载保存的模型时出错:“NotImplementedError:numpy() 仅在启用急切执行时可用”

问题描述 投票:0回答:0

我想运行这个 repo(https://github.com/hfawaz/ijcnn19attacks/blob/master/src/cleverhans_tutorials/tsc_tutorial_keras_tf.py)在第 186 行,它尝试加载保存的 ML 模型

        model = keras.models.load_model(file_path)

我克隆了存储库并做了两个小改动以与 tensorflow.compat.v1 兼容

import tensorflow.compat.v1 as tf
tf.disable_v2_behavior()

然后一切正常,我可以午餐程序加载其保存的模型(文件 Adiac1.hdf5

之后我尝试自己制作保存的模型,结果是文件Adiac2.hdf5但是当我想运行程序时

        model = keras.models.load_model(file_path)

引发以下错误:

NotImplementedError: numpy() 仅在急切执行时可用 启用。

加载两个文件有差异的原因是什么? 正如我在某些情况下明显看到的那样,当使用 Keras 库的 load_model 函数加载保存的模型时,可能需要启用即时执行模式才能正确加载和使用模型。但是,在其他情况下,启用急切执行模式可能不是必需的,甚至是不可取的。为什么?

python tensorflow data-science hdf5
© www.soinside.com 2019 - 2024. All rights reserved.