Обслуживание модели движка Tensorflow Keras GCP ML

Я работаю над классификатором изображений с оценкой тензорного потока + keras, переобучаю последний уровень предварительно обученного приложения inception_v3 на движке GCP ML. .

Модель keras экспортируется с помощью tf.keras.estimator.model_to_estimator, а функция ввода получает путь к изображению, хранящемуся в облачном хранилище GCP, открывает изображение с помощью tf.image.decode_jpeg и возвращает набор данных в следующем формате dict(zip(['inception_v3_input'], [image])), label

Я пытаюсь определить tf.estimator.export.ServingInputReceiver, но у меня возникли проблемы с его определением.

Модель правильно обслуживает прогноз с помощью метода predict с использованием функции ввода без меток. Моя идея заключалась в том, чтобы повторно использовать input_function для декодирования изображения, передавая только путь изображения в облачном хранилище для предсказания также для конечной точки Google, но я не могу понять, как это сделать.

Спасибо за вашу помощь


person Paolo Fusari    schedule 11.06.2018    source источник
comment
Может ли это помочь? tensorflow.org/programmers_guide/   -  person dizcology    schedule 15.06.2018


Ответы (1)


Если я правильно понимаю, ваш вопрос заключается в том, как получить файл из облачного хранилища, учитывая, что вы хотите декодировать изображение следующим образом:

image_decoded = tf.image.decode_jpeg(image_string)

Итак, в этом случае вы можете использовать:

image_string = file_io.FileIO(filename, mode='r')

Сначала импортировав file_io:

from tensorflow.python.lib.io import file_io

Согласно комментариям по этому вопросу о чтении входных данных из GCS, используя Функция file_read должна давать те же результаты, поскольку «была проделана большая работа по абстрагированию файловых систем и файловых систем, поэтому все функции io работают согласованно». Так что вы можете попробовать также с функцией read_file.

person Héctor Neri    schedule 16.10.2018