Обновление старых моделей Keras с предупреждениями об устаревании - PullRequest
0 голосов
/ 04 мая 2019

У меня есть более старый файл модели Keras, который отлично работает. Когда я пытаюсь загрузить его в tensorflow==1.13.1, я получаю множество предупреждений:

import tensorflow as tf
model = tf.keras.models.load_model("best.h5")

ПРЕДУПРЕЖДЕНИЕ: tenorflow: из .pyenv / версии / 3.6.0 / lib / python3.6 / site-packages / tenorflow / python / ops / resource_variable_ops.py: 435: colocate_with (из тензорного потока.python.framework.ops) устарела и будет удалена в следующей версии. Инструкция по обновлению: Колокейсы обрабатываются автоматически россыпью.

ПРЕДУПРЕЖДЕНИЕ: tenorflow: из .pyenv / версии / 3.6.0 / lib / python3.6 / site-packages / tenorflow / python / ops / math_ops.py: 3066: to_int32 (из тензор потока.python.ops.math_ops) устарела и будет удалена в следующей версии. Инструкция по обновлению: Вместо этого используйте tf.cast.

Если я не хочу переучивать модель, как я могу обновить ее, чтобы не выдавать эти ошибки? Если необходимо, оригинальная сеть (простая 1D covnet) будет ниже:

M = keras.Sequential()
M.add(Embedding(n_vocab, n_window, input_length=n_window))

M.add(Conv1D(128, 5, activation="relu"))
M.add(MaxPooling1D(5))

M.add(Conv1D(128, 5, activation="relu"))
M.add(MaxPooling1D(5))

M.add(Flatten())
M.add(Dense(128, activation="relu"))
M.add(Dense(n_classes, activation="softmax"))

1 Ответ

0 голосов
/ 04 мая 2019

Это не ошибки, они относятся к внутренней реализации Keras в tenorflow, вы не можете ничего сделать, кроме как ждать tf.keras, чтобы обновить их реализацию и не использовать устаревшие функции.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...