Задача прогнозирования с предварительно загруженным оценщиком тензорного потока - PullRequest
0 голосов
/ 04 ноября 2019

Я обучил NN-оценку тензорного потока прогнозировать что-то в Python. И я сохранил модель на своем диске Google через Google colab.

Сегодня я загрузил модель, и это была довольно тяжелая работа. Наконец мне удалось загрузить оценщик, используя метод tf.compat.v2.saved_model.load и .signature. похоже WrappedFunction. Это мой код до этого шага.

  1. код для сохранения
serving_input_fn = tf.estimator.export.build_parsing_serving_input_receiver_fn(
  tf.feature_column.make_parse_example_spec(input_column))
#tf.feature_column.make_parse_example_spec([input_column]))
export_path = dnn_regressor.export_saved_model('/content/gdrive/My Drive',serving_input_fn)
#https://www.tensorflow.org/guide/saved_model#savedmodel%EC%9D%98_%EC%A0%9C%EC%96%B4_%ED%9D%90%EB%A6%84
код для загрузки
imported = tf.compat.v2.saved_model.load('/content/gdrive/My Drive/1572596260', tags=None)
infer = imported.signatures["predict"]

Но все же мне не удается поместить тестовые данные в модель для прогнозирования.

сначала я попытался:

test_predictions = infer(test_data)
test_predictions = np.array([item['predictions'][0] for item in test_predictions])

И он возвращает ошибку

ValueError: Все входные данные для ConcreteFunction s должны быть Tensors;при вызове> обрезанного 0-го ввода (Мои данные [2513 строк х 45 столбцов]) не было> Тензор.

Во-вторых, искал какой-то документ тензорного потока, я написал этот код

test_predictions = infer(tf.constant(test_data))
test_predictions = np.array([item['predictions'][0] for item in test_predictions])

На этот раз он возвращает

Аргумент 'examples' (значение Tensor ("Const_10: 0", shape = (2513, 45),> dtype = float64))несовместим с формой, с которой эта функция была прослежена. Ожидаемая форма (?,), Но получившая форму (2513, 45).

Если вы вызвали get_concrete_function, вам может потребоваться передать> tf.TensorSpec (..., shape = ...) сменее конкретная форма, имеющая None на осях> которая может варьироваться.

Я нашел динамическую / статическую форму тензорного потокаНо я не мог полностью понять эту концепцию и не смог изменить. Как я могу получить результат? Спасибо.

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