Сгенерируйте SavedModel из модели Tensorflow, чтобы использовать ее в Google Cloud ML - PullRequest
0 голосов
/ 28 февраля 2019

Я использовал TF Hub для переобучения модели для классификации изображений.Теперь я хотел бы подать его в облаке.Для этого мне нужно SavedModel.Сценарий retrain.py от TF Hub использует tf.saved_model.simple_save для генерации SavedModel после завершения обучения.

Меня смущает файл .pb внутри папки SavedModel, которую яget из этого метода намного меньше, чем конечный .pb, сохраненный после тренировки.

simple_save также устарел, и я попытался получить SavedModel после того, как обучение завершено, следуя этому SOвыпуск .

Но мой variables folder пуст.Как я могу включить это здание SavedModel в retrain.py, чтобы заменить метод simple_save?Советы будут высоко оценены.

1 Ответ

0 голосов
/ 26 марта 2019

Чтобы развернуть вашу модель в Google Cloud ML, вам нужна SavedModel, которая может быть произведена из tf.saved_model API.

Ниже приведены инструкции по размещению обученных моделей в облаке с помощью Cloud ML Engine.

  1. Загрузите сохраненную модель в корзину облачного хранилища, настроив корзину облачного хранилища.используя BUCKET_NAME="your_bucket_name"

  2. Выберите регион для вашего сегмента и установите переменную окружения REGION.EGION=us-central1

  3. Создание нового сегмента gsutil mb -l $REGION gs://$BUCKET_NAME

  4. Загрузка с использованием SAVED_MODEL_DIR=$(ls ./your-export-dir-base | tail -1) gsutil cp -r $SAVED_MODEL_DIR gs://your-bucket

  5. Создайте ресурс модели и версию модели Cloud ML Engine.

Также для вашего вопроса о включении сохраненной модели в retrain.py вам необходимо передать сохраненную модель в качестве аргумента tfhub_moduleстрока, как показано ниже.

python retrain.py --image_dir C: ...\\code\\give the path here --tfhub_module C:

... укажите путь к каталогу сохраненной модели

...