Используйте Amazon DocumentDB для создания решений машинного обучения без кода в среде Amazon SageMaker Canvas.

Создайте решения машинного обучения без кода с помощью Amazon DocumentDB в среде Amazon SageMaker Canvas

Мы с радостью объявляем о запуске интеграции Amazon DocumentDB (с совместимостью с MongoDB) с Amazon SageMaker Canvas, позволяющей клиентам Amazon DocumentDB создавать и использовать решения на основе генеративного искусственного интеллекта (AI) и машинного обучения (ML) без написания кода. Amazon DocumentDB – это полностью управляемая база данных с нативной поддержкой JSON-документов, которая позволяет легко и экономично обрабатывать критические задачи с документами практически любого масштаба без управления инфраструктурой. Amazon SageMaker Canvas – это рабочее пространство ML без кода, предлагающее готовые модели, включая основные модели, а также возможность подготовки данных и создания и развертывания пользовательских моделей.

В этой статье мы рассмотрим, как получить данные, хранящиеся в Amazon DocumentDB, в SageMaker Canvas и использовать эти данные для создания моделей машинного обучения для прогностической аналитики. Без создания и поддержания конвейеров обработки данных вы сможете применять модели машинного обучения к вашим неструктурированным данным, хранящимся в Amazon DocumentDB.

Обзор решения

Допустим, вы являетесь бизнес-аналитиком компании по доставке еды. Ваше мобильное приложение хранит информацию о ресторанах в Amazon DocumentDB из-за его масштабируемости и возможностей гибкой схемы. Вы хотите получить представление о данных и создать модель машинного обучения для прогнозирования рейтинга новых ресторанов, но столкнулись с трудностями в анализе неструктурированных данных. Вам мешает отсутствие опыта в области машинного обучения для создания качественных моделей и генерации прогнозов.

Эта новая интеграция решает эти проблемы, позволяя легко передавать данные из Amazon DocumentDB в SageMaker Canvas и сразу начинать подготавливать и анализировать данные для машинного обучения. Кроме того, SageMaker Canvas устраняет зависимость от специалистов по машинному обучению для создания высококачественных моделей и генерации прогнозов.

Мы продемонстрируем, как использовать данные из Amazon DocumentDB для создания моделей машинного обучения в SageMaker Canvas в следующих шагах:

  1. Создайте подключение к Amazon DocumentDB в SageMaker Canvas.
  2. Анализ данных с использованием генеративного искусственного интеллекта.
  3. Подготовка данных для машинного обучения.
  4. Создание модели и генерация прогнозов.

Предварительные требования

Для реализации этого решения выполните следующие предварительные условия:

  1. Иметь доступ к администрированию облачного сервиса AWS с управлением идентификацией и доступом (Identity and Access Management, IAM) пользователем с правами, необходимыми для выполнения интеграции.
  2. Завершите настройку окружения с использованием AWS CloudFormation через один из следующих вариантов:
    1. Развернуть шаблон CloudFormation в новой виртуальной частной сети (VPC) – В этом варианте создается новая среда AWS, включающая VPC, частные подсети, группы безопасности, роли выполнения IAM, Amazon Cloud9, необходимые конечные точки VPC и домен SageMaker. Затем Amazon DocumentDB развертывается в этой новой VPC. Скачайте шаблон или быстро разверните стек CloudFormation, выбрав Запуск стека: Запуск стека CloudFormation
    2. Развертывание шаблона CloudFormation в существующей VPC – В этом варианте создаются требуемые конечные точки VPC, роли выполнения IAM и домен SageMaker в существующей VPC с частными подсетями. Скачайте шаблон или быстро разверните стек CloudFormation, выбрав Запуск стека: Запуск стека CloudFormation

Обратите внимание, что при создании нового домена SageMaker вы должны настроить домен так, чтобы он находился в частной VPC без доступа в Интернет, чтобы иметь возможность добавить коннектор в Amazon DocumentDB. Чтобы узнать больше, см. Настройка Amazon SageMaker Canvas в VPC без доступа в Интернет.

  1. Пройдите по уроку, чтобы загрузить образцы данных ресторанов в Amazon DocumentDB.
  2. Добавьте доступ к Amazon Bedrock и Anthropic Claude model внутри него. Дополнительную информацию см. в разделе Добавление доступа к модели.

Создание соединителя Amazon DocumentDB в SageMaker Canvas

После создания домена SageMaker выполните следующие действия:

  1. На консоли Amazon DocumentDB выберите Машинное обучение без кодирования в панели навигации.
  2. В разделе Выбрать домен и профиль выберите ваш домен SageMaker и профиль пользователя.
  3. Нажмите Запустить Canvas, чтобы запустить SageMaker Canvas в новой вкладке.

Когда SageMaker Canvas закончит загрузку, вы попадете на вкладку Потоки данных.

  1. Выберите Создать, чтобы создать новый поток данных.
  2. Введите имя для вашего потока данных и выберите Создать.
  3. Добавьте новое соединение с Amazon DocumentDB, выбрав Импорт данных, затем выберите Табличное для Типа набора данных.
  4. На странице Импорт данных, для Источника данных выберите DocumentDB и Добавить соединение.
  5. Введите имя соединения, например “demo”, и выберите нужный вам кластер Amazon DocumentDB.

Обратите внимание, что SageMaker Canvas автоматически предзаполняет выпадающее меню кластерами в той же VPC, что и ваш домен SageMaker.

  1. Введите имя пользователя, пароль и имя базы данных.
  2. Наконец, выберите предпочтение чтения.

Для защиты производительности основных экземпляров SageMaker Canvas по умолчанию использует Вторичный режим, что означает, что он будет читать только с вторичных экземпляров. Когда предпочтение чтения задано как Предпочтительно вторичный, SageMaker Canvas будет читать доступные вторичные экземпляры, но будет читать с основного экземпляра, если вторичный экземпляр недоступен. Дополнительную информацию о настройке соединения Amazon DocumentDB см. в разделе Подключение к базе данных, хранящейся на AWS.

  1. Выберите Добавить соединение.

Если соединение успешно установлено, вы увидите коллекции вашей базы данных Amazon DocumentDB, отображенные в виде таблиц.

  1. Перетащите выбранную таблицу на пустой холст. В этом сообщении мы добавляем данные нашего ресторана.

Отображаются первые 100 строк в качестве предварительного просмотра.

  1. Чтобы начать анализировать и подготавливать данные, выберите Импортировать данные.
  2. Введите имя набора данных и выберите Импортировать данные.

Анализ данных с использованием генеративного искусственного интеллекта

Далее мы хотим получить некоторые информации о наших данных и искать паттерны. SageMaker Canvas предоставляет естественный языковой интерфейс для анализа и подготовки данных. Когда загружается вкладка Данные, вы можете начать общаться с вашими данными с помощью следующих шагов:

  1. Выберите Чат для подготовки данных.
  2. Получите информацию о ваших данных, задавая вопросы, как показано на следующих скриншотах.

Чтобы узнать больше о том, как использовать естественный язык для исследования и подготовки данных, см. Использование естественного языка для исследования и подготовки данных с новой возможностью SageMaker Canvas.

Давайте получим более глубокое представление о качестве наших данных с помощью отчета SageMaker Canvas Data Quality and Insights, который автоматически оценивает качество данных и обнаруживает аномалии.

  1. На вкладке Анализы выберите Отчет о качестве данных и идеи.
  2. Выберите rating в качестве целевого столбца и Регрессия в качестве типа задачи, затем выберите Создать.

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

Наш отчет показывает, что 2,47% строк в нашей целевой переменной имеют пропущенные значения – мы исправим это на следующем шаге. Кроме того, анализ показывает, что признаки address line 2, name и type_of_food имеют наибольшую предсказательную силу в наших данных. Это указывает на то, что базовая информация о ресторане, такая как местоположение и кухня, может оказывать значительное влияние на рейтинги.

Подготовка данных для машинного обучения

SageMaker Canvas предлагает более 300 встроенных преобразований для подготовки ваших импортированных данных. Для получения дополнительной информации о функциях преобразования SageMaker Canvas обратитесь к Подготовка данных с помощью продвинутых преобразований. Давайте добавим некоторые преобразования, чтобы подготовить наши данные к обучению модели машинного обучения.

  1. Вернитесь на страницу Поток данных, выбрав название вашего потока данных в верхней части страницы.
  2. Выберите знак плюс рядом с Типы данных и выберите Добавить преобразование.
  3. Выберите Добавить шаг.
  4. Переименуем столбец address line 2 в cities.
    1. Выберите Управление столбцами.
    2. Выберите Переименовать столбец для Преобразования.
    3. Выберите address line 2 для Исходного столбца, введите cities для Нового имени и выберите Добавить.
  5. Кроме того, давайте удалим некоторые ненужные столбцы.
    1. Добавьте новое преобразование.
    2. Для Преобразования выберите Удалить столбец.
    3. Для Столбцов, которые нужно удалить выберите URL и restaurant_id.
    4. Выберите Добавить.
  6. Наш столбец rating содержит пропущенные значения, поэтому давайте заполним эти строки средним значением этого столбца.
    1. Добавьте новое преобразование.
    2. Для Преобразования выберите Заполнить значения.
    3. Для Типа столбца выберите Числовой.Создание модели и генерация прогнозов

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

      1. Выберите Создать модель.
      2. Для Название набора данных введите имя для экспорта набора данных.
      3. Выберите Экспортировать и дождитесь экспорта преобразованных данных.
      4. Выберите ссылку Создать модель в нижнем левом углу страницы.

      Вы также можете выбрать набор данных из функции Data Wrangler слева на странице.

      1. Введите имя модели.
      2. Выберите Предварительный анализ, затем выберите Создать.
      3. Выберите rating_avg_filled в качестве целевого столбца.

      SageMaker Canvas автоматически выбирает подходящий тип модели.

      1. Выберите Просмотреть модель, чтобы убедиться, что нет проблем с качеством данных.
      2. Выберите Быстрая сборка, чтобы построить модель.

      Создание модели займет примерно 2-15 минут.

      После завершения обучения модели можно просмотреть ее статус. Наша модель имеет RSME 0.422, что означает, что модель часто предсказывает рейтинг ресторана с точностью до +/- 0.422 от фактического значения, что является хорошим приближением для шкалы рейтинга от 1 до 6.

      1. Наконец, вы можете сгенерировать примеры прогнозов, перейдя на вкладку Предсказание.

      Очистка

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

      Заключение

      В данной статье мы обсудили, как использовать SageMaker Canvas для генеративного и машинного обучения с данными, хранящимися в Amazon DocumentDB. В нашем примере мы показали, как аналитик может быстро создать качественную модель машинного обучения с использованием набора данных о ресторанах.

      Мы показали шаги реализации решения, от импорта данных из Amazon DocumentDB до создания модели машинного обучения в SageMaker Canvas. Весь процесс был завершен с помощью визуального интерфейса без написания ни одной строки кода.

      Для начала вашего пути в машинном обучении с низким уровнем кодирования смотрите Amazon SageMaker Canvas.