Создайте модель прогнозирования AutoML с помощью Vertex AI

1. Обзор

В этой лабораторной работе вы:

  • Создайте управляемый набор данных.
  • Импорт данных из хранилища Google Cloud Storage.
  • Обновите метаданные столбца для корректного использования с AutoML.
  • Обучите модель, используя такие параметры, как бюджет и целевая функция оптимизации.
  • Составляйте онлайн-прогнозы партий.

2. Анализ данных

В этой лабораторной работе используются данные из набора данных о продажах алкогольных напитков в штате Айова, доступного в общедоступных наборах данных BigQuery. Этот набор данных содержит информацию об оптовых закупках алкогольных напитков в штате Айова, США, начиная с 2012 года.

Вы можете просмотреть исходные необработанные данные, выбрав «Просмотреть набор данных» . Чтобы получить доступ к таблице, перейдите в левой панели навигации к проекту bigquery-public-datasets , затем к набору данных iowa_liquor_sales , а затем к таблице sales . Вы можете выбрать «Предварительный просмотр» , чтобы увидеть выбранные строки из набора данных.

f07c88368e7445c6.png

Для целей этой лабораторной работы мы уже выполнили базовую предварительную обработку данных для группировки покупок по дням. Мы будем использовать CSV-файл, извлеченный из таблицы BigQuery. Столбцы в CSV-файле:

  • дс : Дата
  • y : Сумма всех покупок за этот день в долларах
  • holiday : Логическое значение, указывающее, является ли дата праздником в США.
  • id : Идентификатор временного ряда (для поддержки нескольких временных рядов, например, по магазину или по товару). В данном случае мы просто будем прогнозировать общие покупки в одном временном ряду, поэтому id устанавливается равным 0 для каждой строки.

3. Импорт данных

Шаг 1: Перейдите к наборам данных Vertex AI.

Доступ к наборам данных осуществляется через меню Vertex AI в левой панели навигации облачной консоли .

d8f26bfce50bfdb5.png

Шаг 2: Создание набора данных

Создайте новый набор данных, выбрав «Табуляционные данные» , а затем тип задачи «Прогнозирование» . Выберите имя iowa_daily или любое другое по вашему усмотрению.

4efeaebfd7845b9c.png

Шаг 3: Импорт данных

Следующий шаг — импорт данных в набор данных. Выберите опцию «Выбрать CSV-файл из облачного хранилища». Затем перейдите к CSV-файлу в хранилище AutoML Demo Alpha и вставьте его в строку automl-demo-240614-lcm/iowa_liquor/iowa_daily.csv .

4. Модель поезда

Шаг 1: Настройка характеристик модели

Через несколько минут AutoML сообщит вам о завершении импорта. После этого вы сможете настроить характеристики модели.

  • В столбце «Идентификатор временного ряда» выберите id . В нашем наборе данных всего один временной ряд, поэтому это формальность.
  • Выберите столбец «Время» , который будет отображаться как ds .

Затем выберите «Сгенерировать статистику» . После завершения процесса вы увидите статистику по проценту пропущенных значений и уникальным значениям . Этот процесс может занять несколько минут, поэтому вы можете перейти к следующему шагу, если хотите.

Шаг 2: Обучение модели

Выберите «Обучить модель» , чтобы начать процесс обучения. Убедитесь, что выбран параметр AutoML, и продолжите .

5028ec6f242dfa6a.png

Шаг 3: Определение модели

  • В столбце «Цель» выберите значение y . Это то значение, которое мы прогнозируем.
  • Если это еще не было задано ранее, установите для столбца « Идентификатор серии» значение id , а для столбца «Временная метка» — значение ds .
  • Установите параметр «Детали данных» на «Дни» , а горизонт прогнозирования — на «7» . Это поле определяет количество периодов, на которые модель может делать прогнозы в будущем.
  • Установите контекстное окно на 7 дней. Модель будет использовать данные за предыдущие 30 дней для прогнозирования. Существует компромисс между более короткими и более длинными окнами, и обычно рекомендуется выбирать значение от 1 до 10 раз превышающее горизонт прогнозирования.
  • Установите флажок «Экспорт тестового набора данных в BigQuery» . Вы можете оставить его пустым, и в этом случае набор данных и таблица будут автоматически созданы в вашем проекте (или укажите местоположение по вашему выбору).
  • Выберите «Продолжить» .

8d2f34779ba49bb1.png

Шаг 4: Настройка параметров обучения

На этом этапе вы можете указать более подробную информацию о том, как вы хотите обучить модель.

  • Установите для столбца «Праздники» значение « Доступно на момент прогнозирования», поскольку мы заранее знаем, является ли данная дата праздником.
  • Измените целевую функцию оптимизации на MAE . MAE, или средняя ошибка, более устойчива к выбросам по сравнению со средней квадратичной ошибкой. Поскольку мы работаем с данными о ежедневных покупках, которые могут сильно колебаться, MAE является подходящим показателем для использования.
  • Выберите «Продолжить» .

9557c92be32a1987.png

Шаг 5: Начало обучения

Установите бюджет по своему усмотрению. В данном случае 1 узлового часа достаточно для обучения модели. Затем начните процесс обучения.

Шаг 6: Оценка модели

Процесс обучения может занять от 1 до 2 часов (включая дополнительное время на настройку). Вы получите электронное письмо, когда обучение завершится. Когда оно будет готово, вы сможете просмотреть точность созданной вами модели.

5. Предсказать

Шаг 1: Анализ прогнозов на основе тестовых данных.

Перейдите в консоль BigQuery , чтобы просмотреть прогнозы на тестовых данных. В вашем проекте автоматически создается новый набор данных со схемой именования: export_evaluated_data_items + <имя модели> + <временная метка> . В этом наборе данных вы найдете таблицу evaluated_data_items для просмотра прогнозов.

В этой таблице появилось несколько новых столбцов:

  • predicted_on_[дата в столбце]: Дата, когда был сделан прогноз. Например, если predicted_on_ds равно 11/4, а ds равно 11/8, мы делаем прогноз на 4 дня вперед.
  • predicted_[целевой столбец].tables.value: Прогнозируемое значение

9800c7c67d93db03.png

Шаг 2: Выполните пакетное прогнозирование

Наконец, вам потребуется использовать свою модель для составления прогнозов.

Входной файл содержит пустые значения для прогнозируемых дат, а также исторические данные:

дс

праздничный день

идентификатор

й

15.05.20

0

0

1751315.43

16.05.20

0

0

0

17.05.20

0

0

0

18.05.20

0

0

1612066.43

19.05.20

0

0

1773885.17

20.05.20

0

0

1487270.92

21.05.20

0

0

1024051.76

22.05.20

0

0

1471736.31

23.05.20

0

0

<пусто>

24.05.20

0

0

<пусто>

25.05.20

1

0

<пусто>

26.05.20

0

0

<пусто>

27.05.20

0

0

<пусто>

28.05.2020

0

0

<пусто>

29.05.20

0

0

<пусто>

В левой панели навигации платформы ИИ (Unified) в разделе «Пакетные прогнозы» вы можете создать новый пакетный прогноз.

Пример входного файла создан для вас здесь в хранилище: automl-demo-240614-lcm/iowa_liquor/iowa_daily_automl_predict.csv

Вы можете указать местоположение исходного файла. Затем вы можете выбрать, экспортировать ли ваши прогнозы в облачное хранилище в формате CSV или в BigQuery. Для целей этой лабораторной работы выберите BigQuery и укажите идентификатор вашего проекта Google Cloud .

22e808dd5cbd4224.png

Процесс пакетного прогнозирования займет несколько минут. После его завершения вы можете щелкнуть по заданию пакетного прогнозирования, чтобы просмотреть подробности, включая место экспорта . В BigQuery вам нужно будет перейти к проекту/набору данных/таблице в левой панели навигации, чтобы получить доступ к прогнозам.

В результате выполнения задания в BigQuery будут созданы две разные таблицы. Одна будет содержать все строки с ошибками, а другая — прогнозы. Вот пример выходных данных из таблицы Predictions:

9ead59dcc9ad1521.png

Шаг 3: Заключение

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

Вы готовы создать собственную модель прогнозирования!