amazon sagemaker что это
Настройка среды Amazon SageMaker на локальной машине
Перевод статьи подготовлен в преддверии старта курса «Промышленный ML на больших данных»
Amazon SageMaker дает не просто возможность управлять notebook-ами в Jupyter, а предоставляет конфигурируемый сервис, который позволяет создавать, обучать, оптимизировать и разворачивать модели машинного обучения. Распространённое заблуждение особенно в начале работы с SageMaker заключается в том, что для использование этих сервисов вам нужен SageMaker Notebook Instance или SageMaker (Studio) Notebook. На самом деле вы можете запустить все сервисы непосредственно с вашего локального компьютера или даже вашей любимой IDE.
Прежде чем мы пойдем дальше, давайте разберемся как взаимодействовать с сервисами Amazon SageMaker. У вас есть два API:
SageMaker Python SDK – высокоуровневый API на Python, который абстрагирует код для построения, обучения и развертывания моделей машинного обучения. В частности, он предоставляет эстиматоров для алгоритмов первого класса или встроенных алгоритмов, а также поддерживает фреймворки, такие как TensorFlow, MXNET и т.д. В большинстве случаев вы будете использовать его для взаимодействия с интерактивными задачами машинного обучения.
AWS SDK – это низкоуровневый API, который используется для взаимодействия со всеми поддерживаемыми сервисами AWS не обязательно для SageMaker. AWS SDK доступен для большинства популярных языков, таких как Java, Javascript, Python (boto) и т.д. В большинстве случаев вы будете использовать этот API для таких вещей, как создание ресурсов для автоматизации или взаимодействия с другими сервисами AWS, которые не поддерживаются SageMaker Python SDK.
Почему локальная среда?
Стоимость – это первое, что приходит в голову, но также немаловажную роль играет гибкость использования вашей родной IDE и возможность работать в автономном режиме и запускать задачи в облаке AWS по готовности.
Как работает локальная среда
Вы пишите код для построения модели, но вместо экземпляра SageMaker Notebook или SageMaker Studio Notebook вы делаете это на своей локальной машине в Jupyter или из своей IDE. Затем, когда все готово, вы начнете обучение на экземплярах SageMaker на AWS. После обучения модель будет храниться в AWS. Затем можно запустить развертывание или пакетное преобразование с локальной машины.
Настройка среды с помощью conda
Рекомендуется настроить виртуальную среду Python. В нашем случае мы будем использовать conda для управления виртуальными средами, но вы можете воспользоваться virtualenv. Опять же Amazon SageMaker использует conda для управления средами и библиотеками. Предполагается, что у вас уже установлена conda, если нет – то вам сюда.
Создаем новую среду conda
Активируем и верифицируем среду
Устанавливаем необходимые библиотеки
Устанавливаем библиотекиAWS
Если вы впервые используете awscli, вам нужно его настроить. Здесь вы можете посмотреть, как это сделать.
По умолчанию будет установлена вторая версия SageMaker Python SDK. Обязательно проверьте наличие критических изменений во второй версии SDK.
Устанавливаем Jupyter и создаем ядро
Верифицируем среду и проверяем версии
Затем проверьте версии в notebook и убедитесь, что это именно те, которые нужны.
Создаем и обучаем
Теперь вы можете начать создавать свою модель локально и начать обучение на AWS, когда будете готовы.
Импортируем библиотеки
Создаем эстиматор
Создайте эстиматор и установите гиперпараметры как вы делаете это обычно. В приведенном ниже примере мы обучаем классификатор изображений с использованием встроенного алгоритма классификации изображений. Также вы указываете тип экземпляра Stagemaker и количество экземпляров, которые вы хотите использовать для обучения.
Каналы обучения
Укажите каналы обучения так, как вы делаете это всегда, тут тоже нет никаких изменений по сравнению с тем, как вы сделали бы это на своем экземпляре notebook.
Начинаем обучение
Начните задачу по обучению на SageMaker, вызвав метод fit, который начнет обучение на экземплярах SageMaker AWS.
Вы можете проверить статус задач обучения с помощью list-training-jobs.
Вот и все. Сегодня мы разобрались с тем, как локально настроить среду SageMaker и собрать модели машинного обучения на локальной машине с помощью Jupyter. Помимо Jupyter вы можете сделать то же самое из собственной IDE.
Удачного обучения!
Цены на Amazon SageMaker
С Amazon SageMaker есть два способа оплаты, и вы платите только за то, что используете. Оплата по факту использования взимается на посекундной основе, без минимальных платежей и долгосрочных обязательств, а тарифы SageMaker Savings Plan предлагают гибкую модель ценообразования на основе использования при условии, что клиент обязуется использовать постоянный объем ресурсов.
Калькулятор цен AWS
Посчитайте затраты на Amazon SageMaker и архитектуру в единой смете.
Создайте персонализированную смету прямо сейчас »
Начать работу с Amazon SageMaker бесплатно
Сервис Amazon SageMaker можно попробовать бесплатно. В рамках уровня бесплатного пользования AWS работу с Amazon SageMaker можно начать бесплатно. Действие уровня бесплатного пользования начинается с первого месяца, как только вы создали первый ресурс SageMaker. Подробные сведения об уровне бесплатного пользования для Amazon SageMaker приведены в таблице ниже.
Возможности Amazon SageMaker | Ежемесячное использование уровня бесплатного пользования в течение первых 2 месяцев |
---|---|
Блокноты Amazon SageMaker Studio, инстансы блокнотов по требованию | 250 часов инстанса ml.t3.medium в блокнотах Studio ИЛИ 250 часов инстанса ml.t2 medium или инстанса ml.t3.medium на инстансах блокнотов по требованию |
Amazon SageMaker Data Wrangler | 25 часов инстанса ml.m5.4xlarge |
Магазин функций Amazon Sagemaker | 10 млн единиц записи, 10 млн единиц чтения, 25 ГБ хранилища |
Обучение | 50 часов инстансов m4.xlarge или m5.xlarge |
Логические выводы | 125 часов инстансов m4.xlarge или m5.xlarge |
RStudio в SageMaker | 250 часов работы инстанса ml.t3.medium с приложением RSession И бесплатного инстанса ml.t3.medium для приложения RStudioServerPro |
Тарифы Amazon SageMaker Savings Plans
Тарифы Amazon SageMaker Savings Plan помогают снизить расходы вплоть до 64 %. Эти тарифы автоматически применяются к соответствующим инстансам SageMaker для машинного обучения (ML), включая SageMaker Studio Notebooks, SageMaker On-Demand Notebooks, SageMaker Processing, SageMaker Data Wrangler, SageMaker Training, SageMaker Real-Time Inference и SageMaker Batch Transform, независимо от семейства инстансов, размера и региона. Например, для обработки рабочих нагрузок, связанных с получением логических выводов, вместо инстанса ml.c5.xlarge, работающего в регионе Восток США (Огайо), можно в любое время перейти к использованию инстанса ml.Inf1 в регионе Запад США (Орегон) и автоматически продолжать пользоваться тарифами Savings Plan. Подробнее »
Amazon SageMaker Studio предоставляется без дополнительной платы
Вам предоставлен доступ к Amazon SageMaker Studio – первой бесплатной интегрированной среде разработки (IDE) для машинного обучения. SageMaker Studio обеспечивает полный доступ и видимость каждого шага, необходимого для создания, обучения и развертывания моделей. Сервис SageMaker Studio абсолютно бесплатный. Вы платите только за сервисы AWS, которые используете в среде Studio.
В среде SageMaker Studio для использования без дополнительной платы доступны множество сервисов, в их числе:
Вы платите только за базовые вычислительные ресурсы и ресурсы хранения, используемые в рамках SageMaker или других сервисов AWS, в зависимости от использования.
Amazon SageMaker Jumpstart и проект Amazon SageMaker – это продукты, представленные в каталоге AWS Service Catalog. Оплата в рамках AWS Service Catalog может начисляться за базовые API вызовы, которые Amazon SageMaker выполняет в AWS Service Catalog от вашего имени. Более подробная информация на странице https://aws.amazon.com/servicecatalog/pricing/.
RStudio в Amazon SageMaker
Вы можете анализировать и визуализировать данные для машинного обучения на языке R, используя гибкие вычислительные ресурсы RStudio в SageMaker, первом полностью управляемом облачном сервисе RStudio Workbench. Вы можете использовать текущие лицензии RStudio в SageMaker и управлять ими с помощью AWS License Manager без дополнительных затрат.
Amazon SageMaker Ground Truth
Узнайте больше о ценах на Amazon SageMaker Ground Truth. Это полностью управляемый сервис маркировки данных, который упрощает построение высокоточных наборов обучающих данных для машинного обучения.
Amazon SageMaker Edge Manager
Узнайте больше о ценах на Amazon SageMaker Edge Manager. Это сервис для оптимизации, выполнения и мониторинга моделей машинного обучения в группах периферийный устройств.
Используйте Amazon SageMaker, чтобы снизить совокупную стоимость владения (TCO)
Amazon SageMaker предлагает снизить совокупную стоимость владения (TCO) не менее чем на 54 % в течение трех лет, по сравнению с другими облачными самоуправляемыми сервисами. Узнайте больше о полном анализе совокупной стоимости владения (TCO) для Amazon SageMaker.
Начало работы с Amazon SageMaker
Amazon SageMaker JumpStart помогает быстро и легко начать работу с машинным обучением. Для этого в SageMaker JumpStart есть набор решений, которые могут использоваться в большинстве практических случаев и быстро развертываться всего за несколько щелчков мыши. Эти полностью настраиваемые решения демонстрируют применение шаблонов и примеров архитектуры AWS CloudFormation, чтобы вы могли ускорить процесс освоения машинного обучения. Amazon SageMaker JumpStart также поддерживает развертывание за один щелчок мыши и точное управление более чем 150-ю популярными моделями с открытым исходным кодом, такими как модели обработки естественного языка, обнаружения объектов и классификации изображений.
Примеры использования
Изучите возможности Amazon SageMaker JumpStart
Выполнение профилактических действий, таких как частичная замена и обслуживание в оптимальный период времени, чтобы при минимальных затратах увеличить срок службы оборудования и повысить операционную эффективность.
Применение автоматизации или интеллектуального дополнения к широкому спектру приложений, чтобы повысить качество и скорость работы.
Обнаружение объектов (пешеходов и транспортных средств) на дороге для ускорения темпов инновации и внедрения в реальную жизнь автономных автомобилей.
Быстрое автоматическое обнаружение подозрительных транзакций и прочего аномального поведения и своевременное оповещение клиентов для укрепления их доверия и снижения риска финансовых потерь.
Прогнозирование кредитных рисков
Прогнозирование вероятности невыплат по задолженностям с целью повышения прибыли по рискованным инвестициям.
Извлечение данных из документов и их анализ
Автоматическое извлечение, обработка и анализ данных из рукописных и электронных документов для более точного анализа и быстрого принятия решений.
Прогнозирование оттока клиентов
Прогнозирование вероятности оттока клиентов и повышение удержания клиентов путем целенаправленной работы с теми, у кого высока вероятность ухода, и применения корректирующих действий, например рекламных акций.
Более точное и быстрое прогнозирование характеристик спроса для своевременного принятия решений, чтобы выполнить ожидания клиентов и снизить затраты на перемещение и отходы.
Предоставление клиентам персонализированного и уникального взаимодействия для повышения удовлетворенности и быстрого роста бизнеса.
Ресурсы Amazon SageMaker для разработчиков
Начало работы
Amazon SageMaker за счет широкого спектра возможностей помогает специалистам по работе с данными и разработчикам быстро подготовить, обучить и развернуть высококачественные модели машинного обучения.
Знакомство с Amazon SageMaker
Узнайте, как создавать, обучать и развертывать модели с помощью Amazon SageMaker
Всего несколькими щелчками мыши выполните все административные задачи, необходимые для запуска Amazon SageMaker Studio.
В этом учебном пособии вы примените Amazon SageMaker Studio для создания, обучения, развертывания и мониторинга модели XGBoost. Мы описали в нем весь рабочий процесс машинного обучения, от выбора признаков и обучения модели до развертывания готовых моделей машинного обучения в пакетном режиме и в реальном времени.
РУКОВОДСТВО ДЛЯ РАЗРАБОТЧИКОВ
Следуйте этому пошаговому руководству, чтобы начать пользоваться всеми возможностями Amazon SageMaker Studio.
В этом техническом семинаре по требованию мы покажем, как с помощью Amazon SageMaker Studio быстро создать новые блокноты, отправить данные, обучить модели, сравнить результаты выполнения моделей и развернуть модели в рабочей среде.
Для начала работы с машинным обучением (ML) может потребоваться много времени. Amazon SageMaker JumpStart помогает быстро и легко начать работу с машинным обучением.
Научитесь предоставлять безопасные среды машинного обучения ML, глубоко изучив распространенные шаблоны и архитектуры, которые требуется применять в регулируемых отраслях.
Защищенные и соответствующие требованиям рабочие процессы машинного обучения в Amazon SageMaker
Вы когда-нибудь задумывались, как создать защищенный и соответствующий требованиям сквозной рабочий процесс машинного обучения для финансовых сервисов? Посмотрите видеопрезентацию, в которой рассказывается об общих схемах и требованиях, предъявляемых в сильно регулируемых отраслях к использованию защищенного машинного обучения.
Создание моделей машинного обучения
РУКОВОДСТВО ДЛЯ РАЗРАБОТЧИКОВ
Научитесь создавать модели машинного обучения с помощью инструкций и ресурсов, которые приведены в этом руководстве.
Получите доступ к репозиторию разнообразных блокнотов SageMaker на GitHub.
Используйте возможности встроенных алгоритмов Amazon SageMaker, которые работают быстрее и обходятся экономичнее популярных аналогов.
В Amazon SageMaker встроено много алгоритмов, которые оптимизированы по скорости, масштабированию и точности. Научитесь выбирать подходящие алгоритмы в зависимости от проблемы, которую нужно решить с помощью машинного обучения.
Язык R популярен среди специалистов по работе с данными и специалистов-практиков по ML. Узнайте из этого видео, как использовать R и запускать безопасное имитационное моделирование в любых масштабах с помощью Amazon SageMaker.
Узнайте, как настраивать контейнеры с помощью сервисов AWS с легкостью и в любых масштабах. Это видео даст вам понимание того, как обеспечить единообразие и переносимость в среде разработки ML.
Обучение и тонкая настройка моделей машинного обучения
Используйте модуль Train, чтобы создавать обучающие среды одним щелчком мыши и оптимизировать созданные модели с помощью автоматической настройки
Узнайте, как использовать Amazon SageMaker Studio для обучения и настройки модели глубокого обучения TensorFlow.
РУКОВОДСТВО ДЛЯ РАЗРАБОТЧИКОВ
Прочитайте этот обзор, посвященный обучению моделей машинного обучения с помощью Amazon SageMaker.
Эффективно организовывайте и отслеживайте учебные итерации с помощью Amazon SageMaker Experiments. Обучение ML‑модели обычно включает в себя множество итераций, чтобы выделить и измерить влияние различных изменений наборов данных, версий алгоритма и параметров модели. Сервис SageMaker Experiments помогает управлять этими итерациями, автоматически фиксируя входные параметры, конфигурации и результаты, и определять наиболее продуктивный эксперимент.
Обучение модели машинного обучения обычно включает в себя множество итераций, в ходе которых изолируются разные переменные и оценивается их влияние. В этом видеообзоре вы узнаете, как Amazon SageMaker Experiments может помочь вам в отслеживании этих итераций с помощью визуального интерфейса SageMaker Studio.
Испытайте эти примеры настройки гиперпараметров на различных алгоритмах и платформах глубокого обучения.
Узнайте, как сэкономить до 90 % на стоимости обучения, используя спотовые инстансы Amazon EC2 с управляемым спотовым обучением. Спотовые инстансы представляют собой ресурсы вычисления пространства, и после появления свободного пространства учебные задания запускаются автоматически. Учебные запуски получают защиту от перебоев, вызванных изменениями в объеме доступных ресурсов. Это позволяет снижать затраты, поскольку дает возможность выбирать, когда выполнять учебные задания.
В этом вебинаре Tech Talk по требованию вы узнаете, как использовать Amazon SageMaker Experiments и как отладчик Amazon SageMaker Debugger улучшает качество модели путем более эффективного обучения и настройки. Вы увидите, как можно управлять итерациями с помощью автоматического захвата входных параметров, конфигураций и результатов, а также автоматического сбора метрик в режиме реального времени во время обучения, такого как обучение с проверкой и матрицы путаницы.
Процесс обучения в машинном обучении очень сложно наблюдать. Узнайте, как Amazon SageMaker Debugger делает этот процесс более прозрачным, автоматически собирая метрики, анализируя учебные запуски и выявляя проблемы.
Создание, обучение и развертывание моделей машинного обучения
с помощью Amazon SageMaker
Из этого руководства вы узнаете, как использовать Amazon SageMaker для создания, обучения и развертывания модели машинного обучения. Для этого упражнения мы воспользуемся популярным алгоритмом машинного обучения XGBoost. Amazon SageMaker – это полностью управляемый модульный сервис машинного обучения, который помогает разработчикам и специалистам по работе с данными создавать, обучать и развертывать модели машинного обучения в любом масштабе.
Процесс создания моделей машинного обучения от составления концепции до внедрения в рабочую среду обычно сложен и занимает много времени. Необходимо управлять большими объемами данных для обучения модели, выбрать оптимальный алгоритм, контролировать вычислительные ресурсы во время обучения, а затем развернуть модель в рабочей среде. Amazon SageMaker снижает сложность, значительно упрощая создание и развертывание моделей машинного обучения. После выбора подходящих алгоритмов и платформ из широкого ассортимента этот сервис управляет всей базовой инфраструктурой, чтобы обучить модель с помощью нескольких петабайтов данных и развернуть ее в рабочей среде.
В этом примере вы берете на себя обязанности разработчика решений машинного обучения, который работает на банк. Вам была поручена разработка модели машинного обучения, которая прогнозирует, будет ли клиент регистрироваться для получения депозитного сертификата (CD). Модель будет обучена по набору маркетинговых данных, содержащему демографическую информацию о клиентах, отзывы о маркетинговых мероприятиях и сведения о внешних факторах.
Данные маркированы для вашего удобства, а в отдельном столбце набора данных указывается, зарегистрирован ли клиент для получения банковского продукта. Версия этого набора данных находится в открытом доступе в репозитории машинного обучения, курируемом Калифорнийским университетом в Ирвайне. В этом руководстве описывается реализация контролируемой модели машинного обучения, так как данные маркированы. (Неконтролируемое обучение выполняется, если наборы данных не маркированы.)
В этом руководстве рассматриваются следующие темы: