Создатель мудреца Амазонки предоставляет набор встроенные алгоритмы, предварительно обученные моделикачества готовые шаблоны решений чтобы помочь ученым, работающим с данными, и специалистам по машинному обучению (ML) быстро приступить к обучению и развертыванию моделей ML. Эти алгоритмы и модели можно использовать как для обучения с учителем, так и без него. Они могут обрабатывать различные типы входных данных, включая табличные, изображения и текст.
Отток клиентов — это проблема, с которой сталкивается широкий круг компаний, от телекоммуникационных до банковских, где клиенты обычно теряются из-за конкурентов. В интересах компании сохранить существующих клиентов, а не приобретать новых, поскольку привлечение новых клиентов обычно обходится значительно дороже. У операторов мобильной связи есть исторические записи, согласно которым клиенты продолжали пользоваться услугой или в конечном итоге уходили. Мы можем использовать эту историческую информацию об оттоке мобильных операторов для обучения модели ML. После обучения этой модели мы можем передать в модель информацию о профиле произвольного клиента (ту же информацию о профиле, которую мы использовали для обучения модели), и она предсказывает, собирается ли этот клиент уйти или нет.
В этом посте мы обучаем и развертываем четыре недавно выпущенных алгоритма SageMaker—LightGBM, CatBoost, TabTransformer и AutoGluon-Tabular — в наборе данных прогнозирования оттока клиентов. Мы используем Автоматическая настройка модели SageMaker (инструмент для оптимизации гиперпараметров), чтобы найти лучшие гиперпараметры для каждой модели и сравнить их производительность на наборе тестовых данных, чтобы выбрать оптимальный.
Вы также можете использовать это решение в качестве шаблона для поиска по коллекции современных табличных алгоритмов и использовать оптимизацию гиперпараметров для поиска лучшей общей модели. Вы можете легко заменить пример набора данных своим собственным для решения реальных бизнес-задач, которые вас интересуют. Если вы хотите сразу перейти к коду SageMaker SDK, который мы рассмотрим в этом посте, вы можете обратиться к следующему образец ноутбука Jupyter.
Преимущества встроенных алгоритмов SageMaker
При выборе алгоритма для конкретного типа задач и данных использование встроенного алгоритма SageMaker является самым простым вариантом, поскольку это дает следующие основные преимущества:
- Низкое кодирование – Встроенные алгоритмы требуют небольшого написания кода для запуска экспериментов. Единственные входные данные, которые вам необходимо предоставить, — это данные, гиперпараметры и вычислительные ресурсы. Это позволяет проводить эксперименты быстрее и с меньшими затратами на отслеживание результатов и изменений кода.
- Эффективные и масштабируемые реализации алгоритмов – Встроенные алгоритмы обеспечивают распараллеливание нескольких вычислительных экземпляров и поддержку графического процессора прямо из коробки для всех применимых алгоритмов. Если у вас много данных для обучения вашей модели, большинство встроенных алгоритмов можно легко масштабировать в соответствии с потребностями. Даже если у вас уже есть предварительно обученная модель, все равно может быть проще использовать ее следствие в SageMaker и ввести уже известные вам гиперпараметры, чем переносить ее и писать сценарий обучения самостоятельно.
- Прозрачность – Вы являетесь владельцем полученных артефактов модели. Вы можете взять эту модель и развернуть ее в SageMaker для нескольких различных шаблонов вывода (ознакомьтесь со всеми доступные типы развертывания) и легкое масштабирование и управление конечными точками, или вы можете развернуть его там, где вам это нужно.
Визуализация и предварительная обработка данных
Сначала мы собираем набор данных об оттоке клиентов. Это относительно небольшой набор данных, содержащий 5,000 записей, где каждая запись использует 21 атрибут для описания профиля клиента неизвестного оператора мобильной связи в США. Атрибуты варьируются от штата США, в котором проживает клиент, до количества звонков, которые он совершил в службу поддержки клиентов, до стоимости, выставленной им в счет за дневные звонки. Мы пытаемся предсказать, уйдет клиент или нет, что является проблемой бинарной классификации. Ниже приводится подмножество этих функций с меткой в последнем столбце.
Ниже приведены некоторые сведения по каждому столбцу, в частности сводная статистика и гистограмма выбранных функций.
Затем мы предварительно обрабатываем данные, разделяем их на обучающие, проверочные и тестовые наборы и загружаем данные в Простой сервис хранения Amazon (Amazon S3).
Автоматическая настройка модели табличных алгоритмов
Гиперпараметры контролируют работу наших базовых алгоритмов и влияют на производительность модели. Этими гиперпараметрами могут быть количество слоев, скорость обучения, скорость затухания веса и отсев для моделей на основе нейронных сетей или количество листьев, итераций и максимальная глубина дерева для моделей ансамбля деревьев. Чтобы выбрать лучшую модель, мы применяем автоматическую настройку модели SageMaker к каждому из четырех обученных табличных алгоритмов SageMaker. Вам нужно только выбрать гиперпараметры для настройки и диапазон для каждого параметра для изучения. Дополнительную информацию об автоматической настройке модели см. Автоматическая настройка моделей Amazon SageMaker: использование машинного обучения для машинного обучения or Автоматическая настройка модели Amazon SageMaker: масштабируемая оптимизация без градиента.
Посмотрим, как это работает на практике.
СветGBM
Мы начинаем с автоматической настройки модели с помощью LightGBM и адаптируем этот процесс к другим алгоритмам. Как поясняется в посте Модели и алгоритмы Amazon SageMaker JumpStart теперь доступны через API, для обучения предварительно созданного алгоритма с помощью SageMaker SDK необходимы следующие артефакты:
- Образ контейнера, специфичный для платформы, содержащий все необходимые зависимости для обучения и вывода.
- Скрипты обучения и вывода для выбранной модели или алгоритма.
Сначала мы извлекаем эти артефакты, которые зависят от model_id
(lightgbm-classification-model
в данном случае) и версия:
Затем мы получаем гиперпараметры по умолчанию для LightGBM, устанавливаем для некоторых из них выбранные фиксированные значения, такие как количество раундов повышения и метрика оценки данных проверки, и определяем диапазоны значений, в которых мы хотим искать другие. Используем параметры SageMaker ContinuousParameter
и IntegerParameter
для этого:
Наконец, мы создаем Оценщик SageMaker, подайте его в ГиперараметрТюнери запустите задание по настройке гиперпараметра с помощью tuner.fit()
:
Ассоциация max_jobs
Параметр определяет, сколько всего заданий будет запущено в задании автоматической настройки модели, и max_parallel_jobs
определяет, сколько параллельных заданий обучения должно быть запущено. Мы также определяем цель “Maximize”
AUC модели (площадь под кривой). Чтобы глубже погрузиться в доступные параметры, предоставляемые HyperParameterTuner
, Ссылаться на Гиперпараметртюнер.
Попробуйте образец тетради чтобы увидеть, как мы приступим к развертыванию и оценке этой модели на тестовом наборе.
CatBoost
Процесс настройки гиперпараметров алгоритма CatBoost такой же, как и раньше, хотя нам нужно получить артефакты модели под идентификатором catboost-classification-model
и измените выбор диапазона гиперпараметров:
ВкладкаТрансформер
Процесс настройки гиперпараметров модели TabTransformer такой же, как и раньше, хотя нам необходимо получить артефакты модели под идентификатором pytorch-tabtransformerclassification-model
и измените выбор диапазона гиперпараметров.
Также мы меняем обучение instance_type
в ml.p3.2xlarge
. TabTransformer — это модель, недавно созданная на основе исследований Amazon, которая обеспечивает возможности глубокого обучения табличных данных с использованием моделей Transformer. Чтобы эффективно обучить эту модель, нам нужен экземпляр с поддержкой графического процессора. Для получения дополнительной информации см. Применение возможностей глубокого обучения к данным в таблицах.
AutoGluon-Табулярный
В случае AutoGluon мы не проводим настройку гиперпараметров. Это сделано специально, поскольку AutoGluon фокусируется на объединении нескольких моделей с разумным выбором гиперпараметров и их укладке в несколько слоев. В конечном итоге это более эффективно, чем обучение одной модели с идеальным выбором гиперпараметров, а также дешевле в вычислительном отношении. Подробности см. AutoGluon-Tabular: надежный и точный AutoML для структурированных данных.
Поэтому мы переключаем model_id
в autogluon-classification-ensemble
и зафиксируйте гиперпараметр метрики оценки только на желаемом значении AUC:
Вместо того, чтобы звонить tuner.fit()
, мы называем estimator.fit()
чтобы начать одну учебную работу.
Бенчмаркинг обученных моделей
После развертывания всех четырех моделей мы отправляем полный набор тестов в каждую конечную точку для прогнозирования и рассчитываем показатели точности, F1 и AUC для каждой (см. код в образец тетради). Мы представляем результаты в следующей таблице с важным отказом от ответственности: результаты и относительная производительность этих моделей будут зависеть от набора данных, который вы используете для обучения. Эти результаты являются репрезентативными, и хотя тенденция к более высокой производительности определенных алгоритмов основана на соответствующих факторах (например, AutoGluon интеллектуально объединяет прогнозы моделей LightGBM и CatBoost), баланс производительности может измениться при различных обстоятельствах. распространение данных.
. | LightGBM с автоматической настройкой модели | CatBoost с автоматической настройкой модели | TabTransformer с автоматической настройкой модели | AutoGluon-Табулярный |
точность | 0.8977 | 0.9622 | 0.9511 | 0.98 |
F1 | 0.8986 | 0.9624 | 0.9517 | 0.98 |
ППК | 0.9629 | 0.9907 | 0.989 | 0.9979 |
Заключение
В этом посте мы обучили четыре различных встроенных алгоритма SageMaker для решения проблемы прогнозирования оттока клиентов с минимальными усилиями по написанию кода. Мы использовали автоматическую настройку модели SageMaker, чтобы найти лучшие гиперпараметры для обучения этих алгоритмов, и сравнили их производительность на выбранном наборе данных для прогнозирования оттока клиентов. Вы можете использовать соответствующие образец тетради в качестве шаблона, заменяя набор данных собственным, чтобы решить желаемую задачу, основанную на табличных данных.
Обязательно опробуйте эти алгоритмы в SageMaker и ознакомьтесь с примерами блокнотов, посвященных использованию других встроенных алгоритмов, доступных на GitHub.
Об авторах
Доктор Синь Хуан — научный сотрудник Amazon SageMaker JumpStart и встроенных алгоритмов Amazon SageMaker. Он занимается разработкой масштабируемых алгоритмов машинного обучения. Его исследовательские интересы лежат в области обработки естественного языка, объяснимого глубокого обучения на табличных данных и надежного анализа непараметрической пространственно-временной кластеризации. Он опубликовал множество статей на конференциях ACL, ICDM, KDD и в журнале Royal Statistical Society: Series A.
Жоао Моура является специалистом по архитектуре решений AI/ML в Amazon Web Services. Он в основном сосредоточен на примерах использования НЛП и помогает клиентам оптимизировать обучение и развертывание модели глубокого обучения. Он также является активным сторонником решений машинного обучения с низким кодом и специализированного оборудования для машинного обучения.
- AI
- ай искусство
- генератор искусств ай
- искусственный интеллект
- Создатель мудреца Амазонки
- искусственный интеллект
- сертификация искусственного интеллекта
- искусственный интеллект в банковском деле
- робот с искусственным интеллектом
- роботы с искусственным интеллектом
- программное обеспечение искусственного интеллекта
- Машинное обучение AWS
- блокчейн
- конференция по блокчейну
- Coingenius
- разговорный искусственный интеллект
- криптоконференция ИИ
- дал-и
- глубокое обучение
- google ai
- обучение с помощью машины
- Платон
- Платон Ай
- Платон Интеллектуальные данные
- Платон игра
- ПлатонДанные
- платогейминг
- масштаб ай
- синтаксис
- зефирнет