ML Engine: «Обнаружена плохая модель ... Нет модуля с именем trainer» при создании версии модели - PullRequest
0 голосов
/ 26 октября 2018

Я успешно тренировал модель на ML Engine.Я могу получить файл model.joblib из своего хранилища Cloud Storage и загрузить его, а также получить локальные прогнозы, используя gcloud.Однако я не могу создать версию модели.

JOB_DIR=$(gcloud ml-engine jobs describe "$JOB" \
    --format="value(trainingInput.jobDir)")

gcloud ml-engine versions create "$VERSION" \
  --model "$MODEL_NAME" \
  --origin "$JOB_DIR" \
  --framework scikit-learn \
  --runtime-version 1.10 \
  --python-version 3.5

Возвращает:

ОШИБКА: (gcloud.ml-engine.versions.create) Обнаружена плохая модель с ошибкой: «Не удалось загрузитьмодель: Не удалось загрузить модель: /tmp/model/0001/model.joblib. Нет модуля с именем «trainer». (Код ошибки: 0) "

Как я могу исправить эту ошибку?

Моя модель - конвейер sklearn.Он использует FunctionTransformer, который вызывает функцию в модуле trainer.model.Я задавался вопросом, не установлена ​​ли на виртуальной машине, обслуживающей прогнозы, пакет trainer.Однако я не смог подтвердить / отклонить эту гипотезу или найти в документации способ указать на пакет.

1 Ответ

0 голосов
/ 30 октября 2018

Ваша гипотеза верна.Функция, которая позволяет загружать пользовательский пакет для использования во время прогнозирования, доступна в качестве альфа-функции только в данный момент.Вы можете получить к нему доступ через эту регистрационную форму: https://docs.google.com/forms/d/e/1FAIpQLSc6fxgXQIyA6BDLfCKOJPu5CyCuOB_M_rGTws0629od5mlznw/viewform?usp=sf_link

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