#python #tensorflow #keras
#python #tensorflow #keras
Вопрос:
Я попробовал с быстрым выполнением и отключил быстрое выполнение с помощью следующего кода:
model = build_encoder_decoder()
final = build_refinement(model)
final.load_weights('/content/gdrive/My Drive/DIM/models/model.01-0.1296.hdf5')
for layer in final.layers:
layer.trainable = True
import tensorflow as tf
sgd = tensorflow.keras.optimizers.SGD(lr=1e-5, decay=1e-6, momentum=0.9, nesterov=True)
nadam = tensorflow.keras.optimizers.Nadam(lr=2e-5)
tensorflow.compat.v1.disable_eager_execution()
decoder_target = tensorflow.compat.v1.placeholder(dtype='float32', shape=(None, None, None, None))
# final.compile(optimizer=sgd, loss=alpha_prediction_loss)
final.compile(optimizer=sgd,loss=alpha_prediction_loss, target_tensors=[decoder_target],run_eagerly=False)
Когда я пытаюсь выполнить его, я получаю следующую ошибку:
---------------------------------------------------------------------------
ValueError Traceback (most recent call last)
<ipython-input-43-912314147d95> in <module>()
----> 1 final.compile(optimizer=sgd,loss=alpha_prediction_loss, target_tensors=[decoder_target],run_eagerly=False)
1 frames
/usr/local/lib/python3.6/dist-packages/tensorflow/python/keras/engine/training.py in _validate_compile(self, optimizer, metrics, **kwargs)
2489 if kwargs.pop('target_tensors', None) is not None:
2490 raise ValueError(
-> 2491 'target_tensors argument is not supported when executing eagerly.')
2492 invalid_kwargs = set(kwargs) - {
2493 'experimental_steps_per_execution', 'sample_weight_mode'
ValueError: target_tensors argument is not supported when executing eagerly.
Я попытался отключить быстрое выполнение, следуя некоторым методам, которые я нашел на StackOverflow и других сайтах, но я продолжаю получать эту ошибку.
Может кто-нибудь сказать мне, где я ошибаюсь и как я могу это исправить?
Ответ №1:
Какую версию tensorflow вы используете? Вам не нужно eager_execution в 2.x
Комментарии:
1. Вот версии, которые я использую tensorflow = 2.3.0 keras = 2.4.3