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

Nar*_*oiu 6 python numpy tensorflow

当我尝试保存模型时遇到这些问题。另外,我使用的是Tensorflow 2.0.0和numpy 1.6.0,所以我不知道如何解决这个问题,因为在最新版本的tensorflow中,默认情况下启用了eager执行。

Compilamos
Entrenamos
Train on 946 samples, validate on 237 samples
Epoch 1/2
946/946 [==============================] - 5s 5ms/step - loss: 0.6866 - accuracy: 0.5719 - val_loss: 0.6897 - val_accuracy: 0.5316
Epoch 2/2
946/946 [==============================] - 5s 5ms/step - loss: 0.6782 - accuracy: 0.5729 - val_loss: 0.6862 - val_accuracy: 0.5316
Entrenamiento finalizado
Traceback (most recent call last):

  File "<ipython-input-23-35267c139307>", line 1, in <module>
    runfile('C:/Users/Narcis Teodoroiu/Desktop/Version MASK R-CNN/TILErecognitionYcant.py', wdir='C:/Users/Narcis Teodoroiu/Desktop/Version MASK R-CNN')

  File "C:\ProgramData\Anaconda3\lib\site-packages\spyder_kernels\customize\spydercustomize.py", line 827, in runfile
    execfile(filename, namespace)

  File "C:\ProgramData\Anaconda3\lib\site-packages\spyder_kernels\customize\spydercustomize.py", line 110, in execfile
    exec(compile(f.read(), filename, 'exec'), namespace)

  File "C:/Users/Narcis Teodoroiu/Desktop/Version MASK R-CNN/TILErecognitionYcant.py", line 332, in <module>
    model.save('tile_cnn_model.h5')

  File "C:\ProgramData\Anaconda3\lib\site-packages\keras\engine\network.py", line 1152, in save
    save_model(self, filepath, overwrite, include_optimizer)

  File "C:\ProgramData\Anaconda3\lib\site-packages\keras\engine\saving.py", line 449, in save_wrapper
    save_function(obj, filepath, overwrite, *args, **kwargs)

  File "C:\ProgramData\Anaconda3\lib\site-packages\keras\engine\saving.py", line 541, in save_model
    _serialize_model(model, h5dict, include_optimizer)

  File "C:\ProgramData\Anaconda3\lib\site-packages\keras\engine\saving.py", line 179, in _serialize_model
    'config': model.optimizer.get_config()

  File "C:\ProgramData\Anaconda3\lib\site-packages\keras\optimizers.py", line 557, in get_config
    config = {'learning_rate': float(K.get_value(self.learning_rate)),

  File "C:\ProgramData\Anaconda3\lib\site-packages\keras\backend\tensorflow_backend.py", line 2927, in get_value
    return x.numpy()

  File "C:\ProgramData\Anaconda3\lib\site-packages\tensorflow_core\python\ops\resource_variable_ops.py", line 579, in numpy
    "numpy() is only available when eager execution is enabled.")

NotImplementedError: numpy() is only available when eager execution is enabled.
Run Code Online (Sandbox Code Playgroud)

小智 3

当尝试将我的项目从“tensorflow-gpu 1.12.0”迁移到“tensorflow-gpu 2.0.0”时,我遇到了同样的问题,当我启用tensorflow v2功能时(我首先禁用了v2功能),这个错误得到了解决。

如果您之前禁用了“tf_v2”功能,也许您可​​以尝试将其注释掉。

# tf.disable_v2_behavior()

https://www.tensorflow.org/guide/migrate