Унифицированная подготовка данных и обучение модели с помощью Amazon SageMaker Data Wrangler и Amazon SageMaker Autopilot PlatoBlockchain Data Intelligence. Вертикальный поиск. Ай.

Унифицированная подготовка данных и обучение модели с помощью Amazon SageMaker Data Wrangler и Amazon SageMaker Autopilot

Данные подпитывают машинное обучение (ML); качество данных напрямую влияет на качество моделей машинного обучения. Таким образом, повышение качества данных и использование правильных методов проектирования признаков имеют решающее значение для создания точных моделей машинного обучения. Практики машинного обучения часто утомительно повторяют разработку функций, выбор алгоритмов и другие аспекты машинного обучения в поисках оптимальных моделей, которые хорошо обобщают реальные данные и дают желаемые результаты. Поскольку скорость ведения бизнеса имеет непропорционально большое значение, этот чрезвычайно утомительный и повторяющийся процесс может привести к задержкам проекта и упущенным деловым возможностям.

Обработчик данных Amazon SageMaker сокращает время агрегирования и подготовки данных для машинного обучения с недель до минут, а также Amazon SageMaker Автопилот автоматически создает, обучает и настраивает лучшие модели машинного обучения на основе ваших данных. С помощью Autopilot вы по-прежнему сохраняете полный контроль и видимость своих данных и модели. Обе услуги созданы специально для того, чтобы повысить продуктивность специалистов по машинному обучению и ускорить окупаемость.

Теперь Data Wrangler предоставляет унифицированный интерфейс, позволяющий подготавливать данные и беспрепятственно обучать модель машинного обучения в Autopilot. Благодаря этой недавно запущенной функции вы теперь можете подготавливать данные в Data Wrangler и легко запускать эксперименты Autopilot непосредственно из пользовательского интерфейса (UI) Data Wrangler. Всего несколькими щелчками мыши вы можете автоматически создавать, обучать и настраивать модели машинного обучения, упрощая использование самых современных методов разработки признаков, обучая высококачественные модели машинного обучения и быстрее получая ценные сведения из ваших данных.

В этом посте мы обсудим, как вы можете использовать этот новый интегрированный интерфейс Data Wrangler для анализа наборов данных и простого создания высококачественных моделей машинного обучения в Autopilot.

Обзор набора данных

Индейцы пима — коренная группа, проживающая в Мексике и Аризоне, США. Исследования показывают, что индейцы пима относятся к группе населения с высоким риском развития сахарного диабета. Прогнозирование вероятности индивидуального риска и восприимчивости к хроническим заболеваниям, таким как диабет, является важной задачей в улучшении здоровья и благополучия этой часто недопредставленной группы меньшинств.

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

Набор данных содержит информацию о женщинах индейцев пима в возрасте 21 года и старше и включает в себя несколько медицинских предикторов (независимых) переменных и одну целевую (зависимую) переменную, Результат. Следующая диаграмма описывает столбцы в нашем наборе данных.

Column Фамилия Описание
Беременности Количество беременностей
Глюкоза Концентрация глюкозы в плазме при пероральном тесте на толерантность к глюкозе в течение 2 часов
Артериальное давление Диастолическое артериальное давление (мм рт. Ст.)
Толщина кожи Толщина кожной складки трицепса (мм)
Инсулин 2-часовой инсулин в сыворотке (мЕд/мл)
BMI Индекс массы тела (вес в кг/(рост в м)^2)
ДиабетРодословная Функция родословной диабета
Возраст Возраст в годах
Результат Целевая переменная

Набор данных содержит 768 записей с 9 общими функциями. Мы храним этот набор данных в Сегмент простого хранилища Amazon (Amazon S3) в виде CSV-файла, а затем импортируйте CSV-файл непосредственно в поток Data Wrangler из Amazon S3.

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

Следующая диаграмма суммирует то, что мы делаем в этом посте.[KT1]

Унифицированная подготовка данных и обучение модели с помощью Amazon SageMaker Data Wrangler и Amazon SageMaker Autopilot PlatoBlockchain Data Intelligence. Вертикальный поиск. Ай.

Специалисты по данным, врачи и другие эксперты в области медицины предоставляют данные пациентов с информацией об уровне глюкозы, артериальном давлении, индексе массы тела и других характеристиках, используемых для прогнозирования вероятности развития диабета. С набором данных в Amazon S3 мы импортируем набор данных в Data Wrangler для выполнения исследовательского анализа данных (EDA), профилирования данных, проектирования функций и разделения набора данных на обучение и тестирование для построения и оценки модели.

Затем мы используем интеграцию новых функций Autopilot, чтобы быстро построить модель непосредственно из интерфейса Data Wrangler. Мы выбираем лучшую модель автопилота на основе модели с наивысшим показателем F-бета. После того, как Autopilot находит лучшую модель, мы запускаем Пакетное преобразование SageMaker задание на тестовый (задерживающий) набор с моделью артефактов лучшей модели для оценки.

Медицинские эксперты могут предоставить новые данные для проверенной модели, чтобы получить прогноз, чтобы увидеть, будет ли у пациента диабет. Благодаря этим знаниям медицинские эксперты могут начать лечение на ранней стадии, чтобы улучшить здоровье и благополучие уязвимых групп населения. Медицинские эксперты также могут объяснить предсказание модели, ссылаясь на детали модели в Autopilot, поскольку они имеют полное представление об объяснимости, производительности и артефактах модели. Эта наглядность в дополнение к проверке модели на тестовом наборе дает медицинским экспертам большую уверенность в прогностической способности модели.

Мы проведем вас через следующие этапы высокого уровня.

  1. Импортируйте набор данных из Amazon S3.
  2. Выполняйте EDA и профилирование данных с помощью Data Wrangler.
  3. Выполните разработку функций для обработки выбросов и пропущенных значений.
  4. Разделите данные на обучающие и тестовые наборы.
  5. Обучайте и стройте модель с помощью автопилота.
  6. Протестируйте модель на контрольном образце с помощью ноутбука SageMaker.
  7. Проанализируйте производительность валидации и набора тестов.

Предпосылки

Выполните следующие обязательные шаги:

  1. Загрузите набор данных в корзину S3 по вашему выбору.
  2. Убедитесь, что у вас есть необходимые разрешения. Для получения дополнительной информации см. Начать работу с Data Wrangler.
  3. Настройте домен SageMaker, настроенный для использования Data Wrangler. Инструкции см. Подключение к домену Amazon SageMaker.

Импортируйте свой набор данных с помощью Data Wrangler

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

  1. Создать новый Поток обработки данных.

Если вы впервые открываете Data Wrangler, возможно, вам придется подождать несколько минут, пока он будет готов.

  1. Выберите набор данных, хранящийся в Amazon S3, и импортируйте его в Data Wrangler.

Унифицированная подготовка данных и обучение модели с помощью Amazon SageMaker Data Wrangler и Amazon SageMaker Autopilot PlatoBlockchain Data Intelligence. Вертикальный поиск. Ай.

После импорта набора данных вы должны увидеть начало потока данных в пользовательском интерфейсе Data Wrangler. Теперь у вас есть блок-схема.

  1. Выберите знак плюс рядом с Типы данных , а затем выбрать Редактировать чтобы убедиться, что Data Wrangler автоматически определил правильные типы данных для ваших столбцов данных.

Унифицированная подготовка данных и обучение модели с помощью Amazon SageMaker Data Wrangler и Amazon SageMaker Autopilot PlatoBlockchain Data Intelligence. Вертикальный поиск. Ай.

Если типы данных неверны, вы можете легко изменить их через пользовательский интерфейс. При наличии нескольких источников данных их можно объединить или объединить.

Теперь мы можем создать анализ и добавить преобразования.

Выполните исследовательский анализ данных с помощью отчета о анализе данных

Исследовательский анализ данных является важной частью рабочего процесса машинного обучения. Мы можем использовать новый отчет об анализе данных от Data Wrangler, чтобы лучше понять профиль и распределение наших данных. Отчет включает в себя сводную статистику, предупреждения о качестве данных, информацию о целевых столбцах, быструю модель и информацию об аномальных и повторяющихся строках.

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

Унифицированная подготовка данных и обучение модели с помощью Amazon SageMaker Data Wrangler и Amazon SageMaker Autopilot PlatoBlockchain Data Intelligence. Вертикальный поиск. Ай.

  1. Что касается цель обзор, выберите Результат.
  2. Что касается Тип проблемыи (необязательно) выберите классификация.
  3. Выберите Создавай.

Унифицированная подготовка данных и обучение модели с помощью Amazon SageMaker Data Wrangler и Amazon SageMaker Autopilot PlatoBlockchain Data Intelligence. Вертикальный поиск. Ай.

Результаты показывают сводные данные со статистикой набора данных.

Унифицированная подготовка данных и обучение модели с помощью Amazon SageMaker Data Wrangler и Amazon SageMaker Autopilot PlatoBlockchain Data Intelligence. Вертикальный поиск. Ай.

Мы также можем просмотреть распределение помеченных строк с помощью гистограммы, оценку ожидаемого прогнозируемого качества модели с функцией быстрой модели и сводную таблицу функций.

Унифицированная подготовка данных и обучение модели с помощью Amazon SageMaker Data Wrangler и Amazon SageMaker Autopilot PlatoBlockchain Data Intelligence. Вертикальный поиск. Ай.

Унифицированная подготовка данных и обучение модели с помощью Amazon SageMaker Data Wrangler и Amazon SageMaker Autopilot PlatoBlockchain Data Intelligence. Вертикальный поиск. Ай.

Мы не вдаемся в подробности анализа отчета о анализе данных; Ссылаться на Ускорьте подготовку данных с помощью качества данных и аналитики в Amazon SageMaker Data Wrangler. дополнительные сведения о том, как можно использовать отчет о анализе данных для ускорения подготовки данных.

Выполнение функционального инжиниринга

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

Например, мы знаем, что нули (0) для Insulin столбец представляет отсутствующие значения. Мы могли бы последовать рекомендации заменить нули на NaN. Но при ближайшем рассмотрении мы обнаруживаем, что минимальное значение равно 0 для других столбцов, таких как Glucose, BloodPressure, SkinThicknessкачества BMI. Нам нужен способ обработки пропущенных значений, но мы должны быть чувствительны к столбцам с нулями как к допустимым данным. Давайте посмотрим, как мы можем это исправить.

В Художественные Подробнее раздел, в докладе поднимается Замаскированное пропущенное значение предупреждение для функции Insulin.

Унифицированная подготовка данных и обучение модели с помощью Amazon SageMaker Data Wrangler и Amazon SageMaker Autopilot PlatoBlockchain Data Intelligence. Вертикальный поиск. Ай.

Унифицированная подготовка данных и обучение модели с помощью Amazon SageMaker Data Wrangler и Amazon SageMaker Autopilot PlatoBlockchain Data Intelligence. Вертикальный поиск. Ай.

Поскольку нули в Insulin столбец на самом деле отсутствуют данные, мы используем Преобразовать регулярное выражение в отсутствующее transform для преобразования нулевых значений в пустые (отсутствующие значения).

  1. Выберите знак плюс рядом с Данные Типы , а затем выбрать Добавить трансформировать.
  2.  Выберите Искать и редактировать.
  3. Что касается Transform, выберите Преобразовать регулярное выражение в отсутствующее.
  4. Что касается вход столбцы, выберите столбцы Insulin, Glucose, BloodPressure, SkinThicknessкачества BMI.
  5. Что касается шаблон, войти 0.
  6. Выберите предварительный просмотр и Добавить чтобы сохранить этот шаг.

0 записей под Insulin, Glucose, BloodPressure, SkinThicknessкачества BMI теперь отсутствуют значения.

Унифицированная подготовка данных и обучение модели с помощью Amazon SageMaker Data Wrangler и Amazon SageMaker Autopilot PlatoBlockchain Data Intelligence. Вертикальный поиск. Ай.

Data Wrangler предлагает несколько других вариантов исправления отсутствующих значений.

  1. Мы обрабатываем пропущенные значения, вводя приблизительную медиану для Glucose колонка.

Унифицированная подготовка данных и обучение модели с помощью Amazon SageMaker Data Wrangler и Amazon SageMaker Autopilot PlatoBlockchain Data Intelligence. Вертикальный поиск. Ай.

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

  1. Добавить новый Числовой процесс трансформируйся и выбирай Значения шкалы.
  2. Что касается Scaler, выберите Мин-макс скалер.
  3. Что касается Входные столбцы, выберите столбцы Pregnancies, BloodPressure, Glucose, SkinThickness, Insulin, BMIкачества Age.
  4. Поставьте Мин. в 0 и Max в 1.

Это гарантирует, что наши функции находятся между значениями 0 и 1.

Унифицированная подготовка данных и обучение модели с помощью Amazon SageMaker Data Wrangler и Amazon SageMaker Autopilot PlatoBlockchain Data Intelligence. Вертикальный поиск. Ай.

Теперь, когда мы создали некоторые функции, мы разделили наш набор данных на обучение и тестирование, прежде чем строить модель.

Разделите данные на обучение и тестирование

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

Мы используем Data Wrangler, чтобы разделить наш набор данных для тестирования. Мы сохраняем 90% нашего набора данных для обучения, потому что у нас относительно небольшой набор данных. Остальные 10% нашего набора данных служат тестовым набором данных. Мы используем этот набор данных для проверки модели автопилота позже в этом посте.

Мы разделяем наши данные, выбирая Разделить данные трансформируйся и выбирай Рандомизированный сплит как метод. Мы обозначаем 0.9 как процент разделения для обучения и 0.1 для тестирования.

Унифицированная подготовка данных и обучение модели с помощью Amazon SageMaker Data Wrangler и Amazon SageMaker Autopilot PlatoBlockchain Data Intelligence. Вертикальный поиск. Ай.

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

Обучите и проверьте модель

Мы можем использовать новую интеграцию Data Wrangler с Autopilot для прямого обучения модели из пользовательского интерфейса потока данных Data Wrangler.

  1. Выберите знак плюс рядом с Dataset , а затем выбрать Модель поезда.

Унифицированная подготовка данных и обучение модели с помощью Amazon SageMaker Data Wrangler и Amazon SageMaker Autopilot PlatoBlockchain Data Intelligence. Вертикальный поиск. Ай.

  1. Что касается Местоположение Амазон S3, укажите расположение Amazon S3, куда SageMaker экспортирует ваши данные.

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

  1. Выберите Экспортировать и тренироваться чтобы инициировать построение модели с помощью автопилота.

Унифицированная подготовка данных и обучение модели с помощью Amazon SageMaker Data Wrangler и Amazon SageMaker Autopilot PlatoBlockchain Data Intelligence. Вертикальный поиск. Ай.

Автопилот автоматически выбирает места ввода и вывода тренировочных данных. Вам нужно только указать целевой столбец и нажать Создать эксперимент для обучения вашей модели.

Унифицированная подготовка данных и обучение модели с помощью Amazon SageMaker Data Wrangler и Amazon SageMaker Autopilot PlatoBlockchain Data Intelligence. Вертикальный поиск. Ай.

Протестируйте модель на контрольном образце

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

Унифицированная подготовка данных и обучение модели с помощью Amazon SageMaker Data Wrangler и Amazon SageMaker Autopilot PlatoBlockchain Data Intelligence. Вертикальный поиск. Ай.

Унифицированная подготовка данных и обучение модели с помощью Amazon SageMaker Data Wrangler и Amazon SageMaker Autopilot PlatoBlockchain Data Intelligence. Вертикальный поиск. Ай.

  1. Выберите Посмотреть сведения о модели для нужной модели, затем выберите Перфоманс на странице сведений о модели.

Унифицированная подготовка данных и обучение модели с помощью Amazon SageMaker Data Wrangler и Amazon SageMaker Autopilot PlatoBlockchain Data Intelligence. Вертикальный поиск. Ай.

Ассоциация Перфоманс Вкладка отображает несколько тестов измерения модели, включая матрицу путаницы, площадь под кривой точности/отзыва (AUCPR) и площадь под кривой рабочей характеристики приемника (ROC). Они иллюстрируют общую эффективность проверки модели, но они не говорят нам, будет ли модель хорошо обобщаться. Нам все еще нужно провести оценку невидимых тестовых данных, чтобы увидеть, насколько точно модель предсказывает, будет ли у человека диабет.

Чтобы убедиться, что модель достаточно хорошо обобщается, мы откладываем тестовую выборку для независимой выборки. Мы можем сделать это в пользовательском интерфейсе потока Data Wrangler.

  1.  Выберите знак плюс рядом с Dataset, выберите Экспорт в, и выберите Amazon S3.

Унифицированная подготовка данных и обучение модели с помощью Amazon SageMaker Data Wrangler и Amazon SageMaker Autopilot PlatoBlockchain Data Intelligence. Вертикальный поиск. Ай.

  1. Укажите путь к Amazon S3.

Мы ссылаемся на этот путь при выполнении пакетного вывода для проверки в следующем разделе.

  1. Создайте новую записную книжку SageMaker для выполнения пакетного логического вывода на заблокированном образце и оценки производительности теста. См. следующее Репо GitHub для образец тетради для запуска пакетного вывода для проверки.

Анализ производительности валидации и набора тестов

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

Мы видим 23 истинных положительных результата и 33 истинных отрицательных результата. В нашем случае истинные положительные результаты относятся к модели, правильно предсказывающей наличие у человека диабета. Напротив, истинные отрицательные результаты относятся к модели, правильно предсказывающей, что у человека нет диабета.

Унифицированная подготовка данных и обучение модели с помощью Amazon SageMaker Data Wrangler и Amazon SageMaker Autopilot PlatoBlockchain Data Intelligence. Вертикальный поиск. Ай.

В нашем случае важными показателями являются точность и полнота. Точность, по сути, измеряет всех людей, у которых прогнозируется диабет. Сколько действительно больных диабетом? Напротив, припоминание помогает измерить всех людей, у которых действительно есть диабет, сколько было предсказано диабета? Например, вы можете захотеть использовать модель с высокой точностью, потому что вы хотите лечить как можно больше людей, особенно если первый этап лечения не влияет на людей без диабета (это ложноположительные результаты — те, у кого он когда на самом деле их нет).

Мы также наносим площадь под графиком ROC-кривой (AUC) для оценки результатов. Чем выше AUC, тем лучше модель различает классы, что в нашем случае показывает, насколько хорошо модель работает при различении пациентов с диабетом и без него.

Унифицированная подготовка данных и обучение модели с помощью Amazon SageMaker Data Wrangler и Amazon SageMaker Autopilot PlatoBlockchain Data Intelligence. Вертикальный поиск. Ай.

Заключение

В этом посте мы продемонстрировали, как интегрировать обработку ваших данных, включая проектирование и построение моделей, с помощью Data Wrangler и Autopilot. Мы рассказали, как легко обучить и настроить модель с помощью автопилота непосредственно из пользовательского интерфейса Data Wrangler. С помощью этой функции интеграции мы можем быстро построить модель после завершения разработки функций без написания кода. Затем мы сослались на лучшую модель Autopilot для запуска пакетных прогнозов с использованием класса AutoML с SageMaker Python SDK.

Решения с низким кодом и AutoML, такие как Data Wrangler и Autopilot, избавляют от необходимости иметь глубокие знания в области кодирования для создания надежных моделей машинного обучения. Начните использовать Data Wrangler сегодня, чтобы узнать, как легко создавать модели машинного обучения, используя Автопилот SageMaker.


Об авторах

Унифицированная подготовка данных и обучение модели с помощью Amazon SageMaker Data Wrangler и Amazon SageMaker Autopilot PlatoBlockchain Data Intelligence. Вертикальный поиск. Ай.Питер Чунг является архитектором решений для AWS и с энтузиазмом помогает клиентам извлекать из своих данных полезную информацию. Он создает решения, которые помогают организациям принимать решения на основе данных как в государственном, так и в частном секторах. Он имеет все сертификаты AWS, а также два сертификата GCP. Он любит кофе, готовит, остается активным и проводит время с семьей.

Унифицированная подготовка данных и обучение модели с помощью Amazon SageMaker Data Wrangler и Amazon SageMaker Autopilot PlatoBlockchain Data Intelligence. Вертикальный поиск. Ай.Прадип Редди является старшим менеджером по продукту в команде SageMaker Low/No Code ML, в которую входят SageMaker Autopilot и SageMaker Automatic Model Tuner. Вне работы Прадип любит читать, бегать и развлекаться с компьютерами размером с ладонь, такими как raspberry pi, и другими технологиями домашней автоматизации.

Унифицированная подготовка данных и обучение модели с помощью Amazon SageMaker Data Wrangler и Amazon SageMaker Autopilot PlatoBlockchain Data Intelligence. Вертикальный поиск. Ай.Арунпрасат Шанкар является специалистом по архитектуре решений в области искусственного интеллекта и машинного обучения (AI / ML) в AWS, помогая клиентам во всем мире эффективно масштабировать свои решения AI в облаке. В свободное время Арун любит смотреть научно-фантастические фильмы и слушать классическую музыку.

Унифицированная подготовка данных и обучение модели с помощью Amazon SageMaker Data Wrangler и Amazon SageMaker Autopilot PlatoBlockchain Data Intelligence. Вертикальный поиск. Ай.Сруджан Гопу является старшим инженером по внешнему интерфейсу в SageMaker Low Code/No Code ML, помогая клиентам продуктов Autopilot и Canvas. В свободное от программирования время Сруджан любит бегать со своей собакой Максом, слушать аудиокниги и разрабатывать игры для виртуальной реальности.

Отметка времени:

Больше от Машинное обучение AWS