Анализ расходов на Amazon SageMaker и определение возможностей оптимизации расходов на основе использования, Часть 4: Вакансии по обучению | Веб-сервисы Амазонки

Анализ расходов на Amazon SageMaker и определение возможностей оптимизации расходов на основе использования, Часть 4: Вакансии по обучению | Веб-сервисы Амазонки

В 2021 году мы запустили Проактивные сервисы поддержки AWS в качестве части Поддержка предприятий AWS план. С момента его появления мы помогли сотням клиентов оптимизировать их рабочие нагрузки, установить ограничения и улучшить видимость затрат и использования их рабочих нагрузок машинного обучения (ML).

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

Вакансии для обучения SageMaker

Задания обучения SageMaker — это асинхронные пакетные процессы со встроенными функциями для обучения и оптимизации моделей машинного обучения.

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

Стоимость задания обучения зависит от используемых вами ресурсов (экземпляров и хранилища) в течение времени (в секундах) работы этих экземпляров. Сюда входит время, необходимое для обучения, и, если вы используете функция теплого бассейна, период поддержания активности, который вы настроили. В Часть 1, мы показали, как начать использовать Анализ затрат AWS определить возможности оптимизации затрат в SageMaker. Вы можете фильтровать затраты на обучение, применив фильтр по типу использования. Названия этих типов использования следующие:

  • REGION-Train:instanceType (например, USE1-Train:ml.m5.large)
  • REGION-Train:VolumeUsage.gp2 (например, USE1-Train:VolumeUsage.gp2)

Чтобы просмотреть разбивку затрат на обучение в Cost Explorer, вы можете ввести train: как префикс для Тип использования. Если вы отфильтруете только использованные часы (см. следующий снимок экрана), Cost Explorer создаст два графика: затраты и использование. Это представление поможет вам расставить приоритеты в возможностях оптимизации и определить, какие экземпляры являются долгосрочными и дорогостоящими.

Анализ расходов на Amazon SageMaker и определение возможностей оптимизации затрат на основе использования. Часть 4. Учебные задания | Веб-сервисы Amazon PlatoBlockchain Data Intelligence. Вертикальный поиск. Ай.

Прежде чем оптимизировать существующую работу по обучению, мы рекомендуем следовать передовым практикам, изложенным в разделе Оптимизация затрат на машинное обучение с помощью Amazon SageMaker: проверьте свой код локально и используйте локальный режим для тестирования по возможности используйте предварительно обученные модели и рассмотрите управляемая точечная тренировка (что позволяет оптимизировать затраты до 90 % по сравнению с инстансами по требованию).

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

Анализ расходов на Amazon SageMaker и определение возможностей оптимизации затрат на основе использования. Часть 4. Учебные задания | Веб-сервисы Amazon PlatoBlockchain Data Intelligence. Вертикальный поиск. Ай.

С точки зрения ценообразования с вас взимается плата за этапы загрузки, обучения и загрузки.

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

Этап загрузки

В предыдущем примере этап загрузки занял менее минуты. Однако если загрузка данных является важной частью затрат на обучение, вам следует учитывать используемый источник данных и методы доступа. Задания обучения SageMaker изначально поддерживают три источника данных: Эластичная файловая система Amazon (Амазон ЭФС), Простой сервис хранения Amazon (Амазон S3) и Amazon FSx для блеска. Для Amazon S3 SageMaker предлагает три управляемых способа доступа вашего алгоритма к обучению: файловый режим (когда данные загружаются в блочное хранилище экземпляра), конвейерный режим (данные передаются в экземпляр в потоковом режиме, тем самым устраняя продолжительность фазы загрузки). и режим Fast File (сочетает в себе простоту использования существующего режима File с производительностью режима Pipe). Подробные инструкции по выбору правильного источника данных и методов доступа см. Выберите лучший источник данных для своей учебной работы по Amazon SageMaker.

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

Важно отметить, что хотя учебные задания SageMaker поддерживают упомянутые нами источники данных, они не являются обязательными. В своем обучающем коде вы можете реализовать любой метод загрузки обучающих данных из любого источника (при условии, что обучающий экземпляр имеет к ним доступ). Существуют дополнительные способы ускорить загрузку, например использование API Boto3 с многопроцессорной обработкой для одновременной загрузки файлов или использование сторонних библиотек, таких как WebDataset или s5cmd, для более быстрой загрузки с Amazon S3. Для получения дополнительной информации см. Распараллеливание рабочих нагрузок S3 с помощью s5cmd.

Этап обучения

Оптимизация стоимости этапа обучения состоит из оптимизации двух векторов: выбора подходящей инфраструктуры (семейства и размера инстансов) и оптимизации самого обучения. Мы можем грубо разделить экземпляры обучения на две категории: ускоренные на основе графического процессора, в основном для моделей глубокого обучения, и на основе ЦП для распространенных платформ машинного обучения. Рекомендации по выбору правильного семейства экземпляров для обучения см. Обеспечение эффективных вычислительных ресурсов в Amazon SageMaker. Если для вашего обучения требуются экземпляры графических процессоров, мы рекомендуем обратиться к видео Как выбрать экземпляры графического процессора Amazon EC2 для глубокого обучения.

В качестве общего руководства: если для вашей рабочей нагрузки требуется графический процессор NVIDIA, мы обнаружили, что клиенты получают значительную экономию средств, используя два Эластичное вычислительное облако Amazon Типы экземпляров (Amazon EC2): мл.g4dn и мл.g5. ml.g4dn оснащен NVIDIA T4 и предлагает особенно низкую стоимость памяти. Экземпляр ml.g5 оснащен тензорным ядром NVIDIA A10g и имеет самую низкую стоимость флопа за CUDA (fp32).

AWS предлагает специальные функции экономии средств для обучения глубокому обучению:

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

Анализ расходов на Amazon SageMaker и определение возможностей оптимизации затрат на основе использования. Часть 4. Учебные задания | Веб-сервисы Amazon PlatoBlockchain Data Intelligence. Вертикальный поиск. Ай.

Эти показатели могут указывать на узкие места или избыточное выделение ресурсов. Например, если вы наблюдаете высокую загрузку ЦП при низкой загрузке графического процессора, вы можете решить проблему, используя гетерогенные кластеры. Другим примером может быть постоянное низкое использование ЦП на протяжении всего задания — это может привести к уменьшению размера экземпляра.

Если вы используете распределенное обучение, вам следует протестировать различные методы распространения (башня, Ring-AllReduce, зеркалирование и т. д.), чтобы проверить максимальное использование и соответствующим образом настроить параметры вашей платформы (пример см. Рекомендации по ускоренному обучению TensorFlow 1.x на Amazon SageMaker). Важно подчеркнуть, что вы можете использовать API распространения SageMaker и такие библиотеки, как Параллельное использование распределенных данных SageMaker, Параллельная модель SageMakerи Параллельное разделение данных SageMaker, которые оптимизированы для инфраструктуры AWS и помогают снизить затраты на обучение.

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

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

Наконец, оптимизация параметров, специфичных для платформы, может оказать существенное влияние на оптимизацию процесса обучения. SageMaker автоматическая настройка модели находит гиперпараметры, которые работают лучше всего по выбранной вами объективной метрике. Установка времени обучения в качестве объективной метрики и конфигурации платформы в виде гиперпараметров может помочь устранить узкие места и сократить общее время обучения. Пример оптимизации настроек TensorFlow по умолчанию и устранения узкого места ЦП см. Aerobotics повышает скорость обучения в 24 раза на выборку с помощью Amazon SageMaker и TensorFlow.

Еще одна возможность оптимизировать время загрузки и обработки — рассмотреть возможность обучения на подмножестве ваших данных. Если ваши данные состоят из нескольких повторяющихся записей или функций с низким приростом информации, вы можете провести обучение на подмножестве данных и сократить время загрузки и обучения, а также использовать меньший экземпляр и Магазин эластичных блоков Amazon (Amazon EBS). Для примера см. Используйте подход, ориентированный на данные, чтобы свести к минимуму объем данных, необходимых для обучения моделей Amazon SageMaker.. Кроме того, Обработчик данных Amazon SageMaker может упростить анализ и создание обучающих выборок. Для получения дополнительной информации см. Создавайте случайные и стратифицированные выборки данных с помощью Amazon SageMaker Data Wrangler..

Отладчик SageMaker

Чтобы обеспечить эффективное обучение и использование ресурсов, SageMaker может профилировать вашу работу по обучению, используя Amazon SageMaker Отладчик. Предложения отладчика встроенные правила для оповещений о распространенных проблемах, влияющих на ваше обучение, таких как узкое место ЦП, увеличение памяти графического процессора или узкое место ввода-вывода, или вы можете создать свои собственные правила. Вы можете получить доступ и проанализировать созданный отчет в Студия Amazon SageMaker. Для получения дополнительной информации см. Пользовательский интерфейс отладчика Amazon SageMaker в экспериментах Amazon SageMaker Studio. На следующем снимке экрана показано представление отладчика в Studio.

Анализ расходов на Amazon SageMaker и определение возможностей оптимизации затрат на основе использования. Часть 4. Учебные задания | Веб-сервисы Amazon PlatoBlockchain Data Intelligence. Вертикальный поиск. Ай.

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

Заключение

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


Об авторах

Анализ расходов на Amazon SageMaker и определение возможностей оптимизации затрат на основе использования. Часть 4. Учебные задания | Веб-сервисы Amazon PlatoBlockchain Data Intelligence. Вертикальный поиск. Ай.Дипали Раджале является старшим специалистом по AI/ML в AWS. Она работает с корпоративными клиентами, предоставляя технические рекомендации с рекомендациями по развертыванию и обслуживанию решений AI/ML в экосистеме AWS. Она работала с широким кругом организаций над различными вариантами использования глубокого обучения, включающими НЛП и компьютерное зрение. Она увлечена тем, чтобы дать организациям возможность использовать генеративный ИИ для улучшения их опыта использования. В свободное время любит кино, музыку и литературу.

Анализ расходов на Amazon SageMaker и определение возможностей оптимизации затрат на основе использования. Часть 4. Учебные задания | Веб-сервисы Amazon PlatoBlockchain Data Intelligence. Вертикальный поиск. Ай.Ури Розенберг — технический менеджер по искусственному интеллекту и машинному обучению в Европе, на Ближнем Востоке и в Африке. Базируясь в Израиле, Ури работает над тем, чтобы дать корпоративным клиентам возможность проектировать, создавать и эксплуатировать все, что связано с машинным обучением, в больших масштабах. В свободное время он любит кататься на велосипеде, ходить в походы и увеличивать энтропию.

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

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