Модель машинного обучения: на основе Tensorflow (версия 1.9) и версия Python 3.6
Ввод данных: из Bigquery
Вывод данных: в Bigquery
Прогноз производствачастота: ежемесячно
Я разработал модель машинного обучения на основе Tensorflow.Я обучил его локально и хочу развернуть его в Google Cloud Platform для прогнозов.
Модель считывает входные данные из Google Bigquery, а выходные прогнозы должны записываться в Google Bigquery.Существует несколько сценариев подготовки данных, которые необходимо запустить перед выполнением прогнозирования модели.В настоящее время я не могу использовать BigQuery ML в производстве, так как он находится в стадии бета-тестирования.Кроме того, так как это пакетный прогноз, я не думаю, что Tensorflow Serving будет хорошим выбором.
Стратегии, которые я пробовал для развертывания:
ИспользованиеGoogle ML Engine для прогнозирования: Этот подход создает выходные файлы деталей в GCS.Они должны быть объединены и записаны в Google Bigquery.Таким образом, в этом подходе мне нужно раскрутить виртуальную машину только для того, чтобы выполнить скрипт подготовки данных и вывод ML Engine в скрипт Google Bigquery.Это увеличивает стоимость виртуальной машины до 24x7 только для запуска двух сценариев в месяц.
Использование потока данных для выполнения сценария подготовки данных вместе с Google ML Engine : поток данных используетPython 2.7, в то время как модель разработана в версии 1.9 Tensorflow и версии 3.6.Таким образом, этот подход не может быть использован.
Google App Engine : с использованием этого подхода необходимо разработать полное веб-приложение для обслуживания прогнозов.Поскольку прогнозы являются пакетными, этот подход не подходит.Кроме того, необходимо использовать flask / django с кодом для его использования.
Google Compute Engine : При таком подходе виртуальная машина будет работать 24x7 только длязапуск ежемесячных прогнозов и запуск двух сценариев.Это может привести к большим накладным расходам.
Я хотел бы знать, каков наилучший подход к развертыванию для моделей Tensorflow, в которых есть несколько сценариев до и после обработки.