Как автоматизировать прогнозы с помощью обученной модели в облаке Google - PullRequest
2 голосов
/ 18 октября 2019

У меня есть данные от веб-пользователей в Firestore.

Я вставил некоторые из этих данных в Google BigQuery для запуска модели машинного обучения.

У меня есть опыт обучения моделям машинного обучения, но у меня нет опыта в полученииПрогнозы для новых данных после обучения этой модели.

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

Я думаю, что это можно сделать с помощью Dataflow (Apache Beam) или Data Composer (Airflow), где я могу автоматизировать этот процесс и планировать его выполнение каждую неделю, но у меня нет опыта в использовании этих технологий, может кто-нибудь порекомендовать мне, какая технология будет лучше для этого конкретногокейс для поиска информации о том, как его использовать?

Одной из возможностей может быть сохранениемодель на платформе AI или в облачном хранилище google и с облачными функциями вызывать эту сохраненную модель и делать прогнозы для ее сохранения в firestore?

Ответы [ 3 ]

2 голосов
/ 18 октября 2019

Bigquery ML поддерживает внешние модели Tensorflow.

Импорт модели TensorFlow. Эта функция позволяет создавать модели BigQuery ML из ранее обученных моделей TensorFlow, а затем выполнять прогнозирование в BigQuery ML. См. Оператор CREATE MODEL для импорта моделей TensorFlow для получения дополнительной информации.

Итак, чего вы хотите достичь, это

  • Получить таблицу в BigQuery
  • Создание набора функций для вашей модели (выберите операторы)
  • СОЗДАНИЕ МОДЕЛИ в BigQuery (перезапустите это, чтобы переобучиться)
  • Запустите ML.PREDICT (или эквивалентный)чтобы получить прогнозы для новых данных

По мере поступления новых данных в BigQuery вы можете
- переучить модель (внешне или внутренне зависит от типа используемого вами алгоритма)
- использовать новую строкув прогнозах

https://cloud.google.com/bigquery-ml/docs/bigqueryml-intro

1 голос
/ 18 октября 2019

Для этого вам понадобятся 2 услуги:

  1. Один для прогноза, который обслуживает вашу модель
  2. Один для получения прогноза и сохранения результата в хранилище

Лично я не рекомендую хранить вашу модель в AI-Platform сегодня (новый релиз должен произойти к концу месяца, но сегодня это не так!). Я написал статью для размещения модели Tensorflow в Cloud Run . Он должен работать на другом фреймворке, но я только построил модель тензорного потока и использовал ее для своих тестов.

Лучшее решение, если ваши новые данные находятся в BigQuery, и если ваша модель в тензорном потоке, этозагрузить вашу модель в BigQuery. Прогноз бесплатен, вы платите только за данные в своем запросе (я также пишу статью об этом, но я жду новую версию платформы AI для обеспечения правильного сравнения обоих решений).

После получения прогноза (результат вызова BigQuery + Cloud Run ИЛИ результата BigQuery с предложением предикта) вам необходимо выполнить итерацию результатов, чтобы сохранить их в пожарном хранилище. Я рекомендую вам пакетную запись в firestore

0 голосов
/ 18 октября 2019

Я прочитал, что могу загрузить эту обученную модель в облачное хранилище Google

Если вы хотите сделать это, вы можете использовать Dataflow. Вы можете написать конвейер, который читает данные из BigQuery и записывает их в GCS.

(я не уверен, что понимаю, как вы хотите, чтобы ваша работа взаимодействовала с платформой AI и Firestore)

...