Загруженная модель Keras выдает ошибку при прогнозировании (вероятные проблемы с маскированием)Python

Программы на Python
Ответить Пред. темаСлед. тема
Anonymous
 Загруженная модель Keras выдает ошибку при прогнозировании (вероятные проблемы с маскированием)

Сообщение Anonymous »

В настоящее время я разрабатываю и тестирую RNN, которая использует для обучения большой объем данных, поэтому попыталась разделить файлы обучения и тестирования. У меня есть один файл, в котором я создаю, обучаю и сохраняю модель tensorflow.keras в файл model.keras. Затем я загружаю эту модель в другой файл и прогнозирую некоторые значения, но получаю следующее ошибка:

Код: Выделить всё

Failed to convert elements of {'class_name': '__tensor__', 'config': {'dtype': 'float64', 'value': [0.0, 0.0, 0.0, 0.0]}} to Tensor. Consider casting elements to a supported type. See https://www.tensorflow.org/api_docs/python/tf/dtypes for supported TF dtypes
Кстати, я попробовал запустить model.predict с теми же данными в файле, где я обучаю модель, и все работает гладко. Проблема должна заключаться в загрузке модели, а не в данных, используемых для прогнозирования.
Этот загадочный тензор float64 — это значение, которое я передал в маскирующий слой. Я не понимаю, почему keras не может распознать этот объект JSON как тензор и применить операцию маскировки как таковую. Ниже я включил фрагменты своего кода, отредактированные для ясности и краткости:
model_generation.py:

Код: Выделить всё

# Create model

model = tf.keras.Sequential([
tf.keras.layers.Input((352, 4)),
tf.keras.layers.Masking(mask_value=tf.convert_to_tensor(np.array([0.0, 0.0, 0.0, 0.0]))),
tf.keras.layers.GRU(50, return_sequences=True, activation='tanh'),
tf.keras.layers.Dropout(0.2),
tf.keras.layers.GRU(50,activation='tanh'),
tf.keras.layers.Dropout(0.2),
tf.keras.layers.Dense(units=1, activation='sigmoid')])

# Compile Model...
# Train Model...
model.save('model.keras')

model.predict(data) # Line works here
model_testing.py

Код: Выделить всё

model = tf.keras.models.load_model('model.keras')

model.predict(data) # this line generates the error
Заранее благодарим вас и дайте мне знать, если вы хотите, чтобы я опубликовал что-то еще!

Подробнее здесь: https://stackoverflow.com/questions/793 ... th-masking
Реклама
Ответить Пред. темаСлед. тема

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

  • Похожие темы
    Ответы
    Просмотры
    Последнее сообщение

Вернуться в «Python»