Мы рады объявить о запуске интеграции Amazon DocumentDB (с совместимостью с MongoDB) с Amazon SageMaker Canvas, что позволяет клиентам Amazon DocumentDB создавать и использовать решения для генеративного искусственного интеллекта и машинного обучения (ML) без написания кода. Amazon DocumentDB — это полностью управляемая собственная база данных документов JSON, которая позволяет легко и экономично управлять критически важными рабочими нагрузками документов практически в любом масштабе без управления инфраструктурой. Amazon SageMaker Canvas — это рабочее пространство машинного обучения без кода, предлагающее готовые к использованию модели, включая базовые модели, а также возможность подготовки данных, а также создания и развертывания пользовательских моделей.
В этом посте мы обсудим, как перенести данные, хранящиеся в Amazon DocumentDB, в SageMaker Canvas и использовать эти данные для создания моделей машинного обучения для прогнозной аналитики. Не создавая и не поддерживая конвейеры данных, вы сможете использовать в моделях машинного обучения неструктурированные данные, хранящиеся в Amazon DocumentDB.
Обзор решения
Давайте возьмем на себя роль бизнес-аналитика компании по доставке еды. Ваше мобильное приложение хранит информацию о ресторанах в Amazon DocumentDB благодаря его масштабируемости и гибким возможностям схемы. Вы хотите собрать информацию об этих данных и построить модель машинного обучения, чтобы предсказать, как будут оцениваться новые рестораны, но вам сложно выполнять анализ неструктурированных данных. Вы сталкиваетесь с узкими местами, потому что для достижения этих целей вам нужно полагаться на команды по разработке и анализу данных.
Эта новая интеграция решает эти проблемы, упрощая перенос данных Amazon DocumentDB в SageMaker Canvas и немедленное начало подготовки и анализа данных для машинного обучения. Кроме того, SageMaker Canvas устраняет зависимость от опыта машинного обучения для создания высококачественных моделей и прогнозирования.
Мы продемонстрируем, как использовать данные Amazon DocumentDB для построения моделей машинного обучения в SageMaker Canvas, выполнив следующие шаги:
- Создайте коннектор Amazon DocumentDB в SageMaker Canvas.
- Анализируйте данные с помощью генеративного ИИ.
- Подготовьте данные для машинного обучения.
- Постройте модель и сгенерируйте прогнозы.
Предварительные условия
Чтобы реализовать это решение, выполните следующие предварительные условия:
- Получите доступ администратора облака AWS с пользователем AWS Identity and Access Management (IAM) с разрешениями, необходимыми для завершения интеграции.
- Завершите настройку среды с помощью AWS CloudFormation одним из следующих вариантов:
- Разверните шаблон CloudFormation в новом VPC. – Этот вариант создает новую среду AWS, состоящую из VPC, частных подсетей, групп безопасности, ролей выполнения IAM, Amazon Cloud9, необходимых конечных точек VPC и домена SageMaker. Затем он развертывает Amazon DocumentDB в этом новом VPC. Загрузите шаблон или быстро запустите стек CloudFormation, выбрав Запустить стек:
- Развертывание шаблона CloudFormation в существующем VPC. – Этот параметр создает необходимые конечные точки VPC, роли выполнения IAM и домен SageMaker в существующем VPC с частными подсетями. Загрузите шаблон или быстро запустите стек CloudFormation, выбрав Запустить стек:
- Разверните шаблон CloudFormation в новом VPC. – Этот вариант создает новую среду AWS, состоящую из VPC, частных подсетей, групп безопасности, ролей выполнения IAM, Amazon Cloud9, необходимых конечных точек VPC и домена SageMaker. Затем он развертывает Amazon DocumentDB в этом новом VPC. Загрузите шаблон или быстро запустите стек CloudFormation, выбрав Запустить стек:
Обратите внимание: если вы создаете новый домен SageMaker, вам необходимо настроить домен так, чтобы он находился в частном VPC без доступа к Интернету, чтобы иметь возможность добавить соединитель в Amazon DocumentDB. Дополнительные сведения см. в разделе Настройка Amazon SageMaker Canvas в VPC без доступа к Интернету.
- Следуйте инструкциям, чтобы загрузить примеры данных ресторана в Amazon DocumentDB.
- Добавьте доступ к Amazon Bedrock и модели Anthropic Claude внутри нее. Дополнительные сведения см. в разделе Добавление доступа к модели.
Создайте коннектор Amazon DocumentDB в SageMaker Canvas.
После создания домена SageMaker выполните следующие шаги:
- В консоли Amazon DocumentDB выберите Машинное обучение без кода в панели навигации.
- Под Выберите домен и профиль¸ выберите свой домен SageMaker и профиль пользователя.
- Выбирать Запустить холст для запуска SageMaker Canvas в новой вкладке.
Когда SageMaker Canvas завершит загрузку, вы окажетесь на Потоки данных вкладка.
- Выбирать Создавать для создания нового потока данных.
- Введите имя для вашего потока данных и выберите Создавать.
- Добавьте новое соединение с Amazon DocumentDB, выбрав Импортировать данныетогда выбирай Табличный для Тип набора данных.
- На Импортировать данные страница, для Источник данныхвыбирать ДокументБД и Добавить соединение.
- Введите имя подключения, например demo, и выберите нужный кластер Amazon DocumentDB.
Обратите внимание, что SageMaker Canvas предварительно заполнит раскрывающееся меню кластерами в том же VPC, что и ваш домен SageMaker.
- Введите имя пользователя, пароль и имя базы данных.
- Наконец, выберите предпочтения чтения.
Чтобы защитить производительность основных экземпляров, SageMaker Canvas по умолчанию использует вторичный, что означает, что он будет читать только из вторичных экземпляров. Когда предпочтение чтения Вторичное предпочтительно, SageMaker Canvas считывает данные из доступных вторичных экземпляров, но будет читать из основного экземпляра, если вторичный экземпляр недоступен. Дополнительную информацию о настройке подключения к Amazon DocumentDB см. в разделе Подключение к базе данных, хранящейся в AWS.
- Выбирать Добавить соединение.
Если подключение установлено успешно, вы увидите коллекции в базе данных Amazon DocumentDB, представленные в виде таблиц.
- Перетащите выбранную таблицу на пустой холст. Для этого поста мы добавляем данные о нашем ресторане.
Первые 100 строк отображаются в режиме предварительного просмотра.
- Чтобы начать анализировать и готовить данные, выберите Импортировать данные.
- Введите имя набора данных и выберите Импортировать данные.
Анализируйте данные с помощью генеративного ИИ
Далее мы хотим получить некоторую информацию о наших данных и найти закономерности. SageMaker Canvas предоставляет интерфейс на естественном языке для анализа и подготовки данных. Когда Данные вкладка загружается, вы можете начать общение со своими данными, выполнив следующие действия:
- Выбирать Чат для подготовки данных.
- Соберите ценную информацию о своих данных, задавая вопросы, подобные примерам, показанным на следующих снимках экрана.
Дополнительные сведения о том, как использовать естественный язык для исследования и подготовки данных, см. в разделе Использование естественного языка для изучения и подготовки данных с помощью новой возможности Amazon SageMaker Canvas.
Давайте глубже поймем качество наших данных с помощью отчета о качестве и аналитике данных SageMaker Canvas, который автоматически оценивает качество данных и обнаруживает отклонения.
- На Анализы вкладка, выбрать Отчет о качестве данных и аналитической информации.
- Выбирать
rating
в качестве целевого столбца и Регрессия в качестве типа проблемы, затем выберите Создавать.
Это позволит моделировать обучение модели и даст представление о том, как мы можем улучшить наши данные для машинного обучения. Полный отчет формируется за несколько минут.
Наш отчет показывает, что 2,47% строк в нашей цели имеют пропущенные значения — мы рассмотрим это на следующем шаге. Кроме того, анализ показывает, что address line 2
, name
и type_of_food
функции имеют наибольшую предсказательную силу в наших данных. Это означает, что базовая информация о ресторане, такая как местоположение и кухня, может иметь огромное влияние на рейтинги.
Подготовьте данные для машинного обучения
SageMaker Canvas предлагает более 300 встроенных преобразований для подготовки импортированных данных. Дополнительную информацию о функциях преобразования SageMaker Canvas см. в разделе Подготовка данных с помощью расширенных преобразований. Давайте добавим несколько преобразований, чтобы подготовить наши данные для обучения модели ML.
- Вернитесь к Поток данных странице, выбрав имя вашего потока данных в верхней части страницы.
- Выберите знак плюса рядом с Типы данных и выбери Добавить преобразование.
- Выбирать Добавить шаг.
- Давайте переименуем
address line 2
столбец вcities
.- Выбирать Управление столбцами.
- Выбирать Переименовать столбец для Трансформировать.
- Выбирать
address line 2
для Столбец вводавходитьcities
для Новое имяи выберите Добавлять.
- Кроме того, давайте оставим несколько ненужных столбцов.
- Добавьте новое преобразование.
- Для Трансформироватьвыбирать Удалить столбец.
- Для Столбцы для удалениявыбирать
URL
иrestaurant_id
. - Выбирать Добавлять.
(
- Наш
rating
В столбце функции есть некоторые пропущенные значения, поэтому давайте заполним эти строки средним значением этого столбца.- Добавьте новое преобразование.
- Для Трансформироватьвыбирать вменить в вину.
- Для Тип столбцавыбирать Числовой.
- Для Входные столбцывыбрать
rating
столбец. - Для Стратегия вменениявыбирать Иметь в виду.
- Для Выходной столбецвходить
rating_avg_filled
. - Выбирать Добавлять.
- Мы можем отказаться от
rating
столбец, потому что у нас есть новый столбец с заполненными значениями. - Потому что
type_of_food
категоричен по своей природе, мы захотим его численно закодировать. Давайте закодируем эту функцию, используя технику горячего кодирования.- Добавьте новое преобразование.
- Для Трансформироватьвыбирать Одно горячее кодирование.
- Для столбцов ввода выберите
type_of_food
. - Для Неверная стратегия обработкивыбирать Держать.
- Для Стиль выводавыбирать Столбцы.
- Для Выходной столбецвходить
encoded
. - Выбирать Добавлять.
Постройте модель и сгенерируйте прогнозы
Теперь, когда мы преобразовали наши данные, давайте обучим числовую модель машинного обучения прогнозированию рейтингов ресторанов.
- Выбирать Создать модель.
- Для Имя набора данныхвведите имя для экспорта набора данных.
- Выбирать Экспорт и дождитесь экспорта преобразованных данных.
- Выбрать Создать модель ссылка в левом нижнем углу страницы.
Вы также можете выбрать набор данных с помощью функции Data Wrangler в левой части страницы.
- Введите название модели.
- Выбирать Прогнозный анализтогда выбирай Создавать.
- Выбирать
rating_avg_filled
в качестве целевого столбца.
SageMaker Canvas автоматически выбирает подходящий тип модели.
- Выбирать Предварительный просмотр модели чтобы гарантировать отсутствие проблем с качеством данных.
- Выбирать Быстрая сборка построить модель.
Создание модели займет примерно 2–15 минут.
Вы можете просмотреть статус модели после завершения обучения модели. Наша модель имеет RSME 0,422, что означает, что модель часто прогнозирует рейтинг ресторана в пределах +/- 0,422 от фактического значения, что является надежным приближением для рейтинговой шкалы от 1 до 6.
- Наконец, вы можете сгенерировать образцы прогнозов, перейдя к Предсказывать вкладка.
Очистить
Чтобы избежать будущих расходов, удалите ресурсы, которые вы создали, следуя этому сообщению. SageMaker Canvas выставляет вам счет за продолжительность сеанса, и мы рекомендуем выходить из SageMaker Canvas, когда вы его не используете. Дополнительные сведения см. в разделе Выход из Amazon SageMaker Canvas.
Заключение
В этом посте мы обсудили, как можно использовать SageMaker Canvas для генеративного искусственного интеллекта и машинного обучения с данными, хранящимися в Amazon DocumentDB. В нашем примере мы показали, как аналитик может быстро построить высококачественную модель машинного обучения, используя образец набора данных ресторана.
Мы показали шаги по реализации решения: от импорта данных из Amazon DocumentDB до построения модели машинного обучения в SageMaker Canvas. Весь процесс был выполнен через визуальный интерфейс без написания единой строчки кода.
Чтобы начать свой путь машинного обучения с низким кодом или без него, обратитесь к Amazon SageMaker Canvas.
Об авторах
Аделеке Кокер — архитектор глобальных решений в AWS. Он работает с клиентами по всему миру, предоставляя рекомендации и техническую помощь при масштабном развертывании производственных рабочих нагрузок на AWS. В свободное время он любит учиться, читать, играть и смотреть спортивные мероприятия.
Гурурадж С Баяри — старший специалист по архитектуре решений DocumentDB в AWS. Ему нравится помогать клиентам внедрять специальные базы данных Amazon. Он помогает клиентам проектировать, оценивать и оптимизировать масштабируемые в Интернете и высокопроизводительные рабочие нагрузки на базе NoSQL и/или реляционных баз данных.
Тим Пусатери — старший менеджер по продукту в AWS, где он работает над Amazon SageMaker Canvas. Его цель — помочь клиентам быстро извлечь выгоду из AI/ML. Вне работы он любит бывать на свежем воздухе, играть на гитаре, слушать живую музыку и проводить время с семьей и друзьями.
Пратик Дас является менеджером по продукту в AWS. Ему нравится работать с клиентами, стремящимися создать устойчивые рабочие нагрузки и надежную основу данных в облаке. Он привносит свой опыт, работая с предприятиями над инициативами по модернизации, анализу и преобразованию данных.
Варма Готтумуккала — старший специалист по архитектуре решений для баз данных в AWS из Далласа, Форт-Уэрт. Варма работает с клиентами над их стратегией баз данных и проектирует их рабочие нагрузки, используя специально созданные базы данных AWS. До прихода в AWS он в течение последних 22 лет активно работал с реляционными базами данных, базами данных NOSQL и несколькими языками программирования.