В декабре 2020, AWS объявила об общедоступности of Amazon SageMaker JumpStart, способность Создатель мудреца Амазонки который поможет вам быстро и легко начать работу с машинным обучением (ML). JumpStart обеспечивает тонкую настройку одним щелчком мыши и развертывание широкого спектра предварительно обученных моделей для популярных задач машинного обучения, а также набор комплексных решений, решающих типичные бизнес-задачи. Эти функции избавляют от тяжелой работы на каждом этапе процесса машинного обучения, упрощая разработку высококачественных моделей и сокращая время развертывания.
Раньше весь контент JumpStart был доступен только через Студия Amazon SageMaker, который обеспечивает удобный графический интерфейс для взаимодействия с функцией. Сегодня мы рады объявить о запуске простого в использовании API-интерфейсы JumpStart как расширение SageMaker Python SDK. Эти API-интерфейсы позволяют программно развертывать и настраивать широкий выбор предварительно обученных моделей, поддерживаемых JumpStart, в ваших собственных наборах данных. Этот запуск открывает доступ к возможностям JumpStart в ваших рабочих процессах кода, конвейерах MLOps и везде, где вы взаимодействуете с SageMaker через SDK.
В этом посте мы представляем обновленную информацию о текущем состоянии возможностей JumpStart и рассказываем о процессе использования API JumpStart с примером использования.
Обзор JumpStart
JumpStart — это многогранный продукт, включающий различные возможности, которые помогут вам быстро приступить к работе с машинным обучением в SageMaker. На момент написания JumpStart позволял вам делать следующее:
- Развертывание предварительно обученных моделей для распространенных задач машинного обучения – JumpStart позволяет решать распространенные задачи машинного обучения без усилий по разработке, обеспечивая простое развертывание моделей, предварительно обученных на общедоступных больших наборах данных. Исследовательское сообщество машинного обучения приложило немало усилий, чтобы сделать большинство недавно разработанных моделей общедоступными для использования. JumpStart содержит коллекцию из более чем 300 моделей, охватывающих 15 самых популярных задач машинного обучения, таких как обнаружение объектов, классификация текста и генерация текста, что упрощает их использование новичками. Эти модели взяты из популярных концентраторов моделей, таких как TensorFlow, PyTorch, Hugging Face и MXNet Hub.
- Точная настройка предварительно обученных моделей – JumpStart позволяет точно настраивать предварительно обученные модели без необходимости написания собственного алгоритма обучения. В ML способность передавать знания, полученные в одной области, в другую область называется трансферное обучение. Вы можете использовать трансферное обучение для создания точных моделей на небольших наборах данных с гораздо меньшими затратами на обучение, чем при обучении исходной модели с нуля. JumpStart также включает в себя популярные алгоритмы обучения на основе LightGBM, CatBoost, XGBoost и Scikit-learn, которые можно обучать с нуля для регрессии и классификации табличных данных.
- Используйте готовые решения – JumpStart предоставляет набор 17 готовых решений для распространенных вариантов использования машинного обучения, таких как прогнозирование спроса, а также для промышленных и финансовых приложений, которые можно развернуть всего несколькими щелчками мыши. Решения представляют собой комплексные приложения машинного обучения, которые объединяют различные сервисы AWS для решения конкретных бизнес-задач. Они используют AWS CloudFormation шаблоны и эталонные архитектуры для быстрого развертывания, что означает, что они полностью настраиваемые.
- Используйте примеры записных книжек для алгоритмов SageMaker – SageMaker предоставляет набор встроенные алгоритмы чтобы помочь специалистам по данным и специалистам по машинному обучению быстро приступить к обучению и развертыванию моделей машинного обучения. JumpStart предоставляет образцы блокнотов, которые можно использовать для быстрого использования этих алгоритмов.
- Воспользуйтесь обучающими видео и блогами – JumpStart также предоставляет множество сообщений в блогах и видео, которые учат вас, как использовать различные функции в SageMaker.
JumpStart принимает пользовательские настройки VPC и ключи шифрования KMS, чтобы вы могли безопасно использовать доступные модели и решения в своей корпоративной среде. Вы можете передать свои настройки безопасности в JumpStart в SageMaker Studio или с помощью SageMaker Python SDK.
Задачи машинного обучения, поддерживаемые JumpStart, и примеры API Ноутбуки
В настоящее время JumpStart поддерживает 15 самых популярных задач машинного обучения; 13 из них — задачи на зрение и НЛП, из которых 8 поддерживают тонкую настройку без кода. Он также поддерживает четыре популярных алгоритма моделирования табличных данных. Задачи и ссылки на их образцы записных книжек сведены в следующую таблицу.
Сложность задачи | Вывод с предварительно обученными моделями | Обучение работе с пользовательским набором данных | Поддерживаемые платформы | Примеры записных книжек |
Классификация изображений | Да | Да | ПиТорч, ТензорФлоу | Введение в JumpStart — классификация изображений |
Обнаружение объекта | Да | Да | PyTorch, TensorFlow, MXNet | Введение в JumpStart — Обнаружение объектов |
Семантическая сегментация | Да | Да | MXNet | Введение в JumpStart — Семантическая сегментация |
Сегментация экземпляра | Да | нет | MXNet | Введение в JumpStart — сегментация экземпляров |
Встраивание изображений | Да | нет | ТензорФлоу, MXNet | Введение в JumpStart — встраивание изображений |
Классификация текста | Да | Да | TensorFlow | Введение в JumpStart — Классификация текста |
Классификация пар предложений | Да | Да | TensorFlow, обнимающее лицо | Введение в JumpStart — классификация пар предложений |
Ответ на вопрос | Да | Да | PyTorch | Введение в JumpStart — ответы на вопросы |
Признание названного лица | Да | нет | Обнимая лицо | Введение в JumpStart — распознавание именованных объектов |
Обобщение текста | Да | нет | Обнимая лицо | Введение в JumpStart — суммирование текста |
Генерация текста | Да | нет | Обнимая лицо | Введение в JumpStart — Генерация текста |
Машинный перевод | Да | нет | Обнимая лицо | Введение в JumpStart — машинный перевод |
Встраивание текста | Да | нет | ТензорФлоу, MXNet | Введение в JumpStart — встраивание текста |
Табличная классификация | Да | Да | LightGBM, CatBoost, XGBoost, линейное обучение | Введение в JumpStart — табличная классификация — LightGBM, CatBoost Введение в JumpStart — Табличная классификация — XGBoost, Linear Learner |
Табличная регрессия | Да | Да | LightGBM, CatBoost, XGBoost, линейное обучение | Введение в JumpStart — табличная регрессия — LightGBM, CatBoost Введение в JumpStart — табличная регрессия — XGBoost, Linear Learner |
В зависимости от задачи примеры записных книжек, ссылки на которые приведены в предыдущей таблице, помогут вам выполнить все или некоторые из следующих процессов:
- Выберите предварительно обученную модель, поддерживаемую JumpStart, для конкретной задачи.
- Размещайте предварительно обученную модель, получайте от нее прогнозы в режиме реального времени и адекватно отображайте результаты.
- Настройте предварительно обученную модель с помощью собственного выбора гиперпараметров и разверните ее для логического вывода.
Точная настройка и развертывание модели обнаружения объектов с помощью API JumpStart
В следующих разделах мы пошагово описываем, как использовать новые API JumpStart для типичной задачи обнаружения объектов. Мы покажем, как использовать предварительно обученную модель обнаружения объектов для идентификации объектов из предопределенного набора классов на изображении с ограничивающими рамками. Наконец, мы покажем, как точно настроить предварительно обученную модель на вашем собственном наборе данных, чтобы обнаруживать объекты на изображениях, которые соответствуют потребностям вашего бизнеса, просто вводя свои собственные данные. Мы предоставляем сопроводительный блокнот для этого пошагового руководства.
Мы проходим следующие этапы высокого уровня:
- Запустите вывод на предварительно обученной модели.
- Получите артефакты JumpStart и разверните конечную точку.
- Запросите конечную точку, проанализируйте ответ и отобразите прогнозы модели.
- Настройте предварительно обученную модель на собственном наборе данных.
- Получить тренировочные артефакты.
- Проведите обучение.
Запустите вывод на предварительно обученной модели
В этом разделе мы выбираем подходящую предварительно обученную модель в JumpStart, развертываем эту модель на конечной точке SageMaker и показываем, как выполнять вывод на развернутой конечной точке. Все этапы доступны в сопроводительная записная книжка Jupyter.
Получите артефакты JumpStart и разверните конечную точку
SageMaker — это платформа, основанная на контейнерах Docker. JumpStart использует доступный фреймворк Контейнеры глубокого обучения SageMaker (DLC). Мы получаем любые дополнительные пакеты, а также скрипты для обучения и логического вывода для выбранной задачи. Наконец, предварительно обученные артефакты модели извлекаются отдельно с помощью model_uris
, что обеспечивает гибкость платформы. Вы можете использовать любое количество моделей, предварительно обученных для одной и той же задачи, с помощью одного сценария обучения или логического вывода. См. следующий код:
Далее мы загружаем ресурсы в Модель SageMaker экземпляр и разверните конечную точку:
Развертывание конечной точки может занять несколько минут.
Запросите конечную точку, проанализируйте ответ и отобразите прогнозы.
Чтобы получить выводы из развернутой модели, входное изображение должно быть предоставлено в двоичном формате вместе с типом принятия. В JumpStart вы можете определить количество возвращаемых ограничивающих рамок. В следующем фрагменте кода мы предсказываем десять ограничительных рамок для каждого изображения, добавляя ;n_predictions=10
в Accept
. Чтобы предсказать xx ящиков, вы можете изменить его на ;n_predictions=xx
, или получить все предсказанные поля, опуская ;n_predictions=xx
полностью.
Следующий фрагмент кода дает представление о том, как выглядит обнаружение объектов. Вероятность, предсказанная для каждого класса объектов, визуализируется вместе с ограничивающей рамкой. Мы используем parse_response
и display_predictions
вспомогательные функции, которые определены в сопроводительном ноутбук.
На следующем снимке экрана показан вывод изображения с прогнозируемыми метками и ограничивающими рамками.
Точная настройка предварительно обученной модели на собственном наборе данных
Существующие модели обнаружения объектов в JumpStart предварительно обучены либо на наборах данных COCO, либо на наборах данных VOC. Однако если вам нужно идентифицировать классы объектов, которых нет в исходном наборе данных для предварительной подготовки, вам необходимо точно настроить модель на новом наборе данных, который включает эти новые типы объектов. Например, если вам нужно идентифицировать кухонную утварь и выполнить вывод на развернутой предварительно обученной модели SSD, модель не распознает никаких характеристик новых типов изображений, и поэтому выходные данные будут неверными.
В этом разделе мы покажем, как легко настроить предварительно обученную модель для обнаружения новых классов объектов с помощью API JumpStart. Полный пример кода с более подробной информацией доступен в сопроводительная записная книжка.
Получить тренировочные артефакты
Артефакты обучения аналогичны артефактам логического вывода, рассмотренным в предыдущем разделе. Для обучения требуется базовый контейнер Docker, а именно контейнер MXNet в следующем примере кода. Любые дополнительные пакеты, необходимые для обучения, включены в обучающие сценарии в train_sourcer_uri
. Предварительно обученная модель и ее параметры упаковываются отдельно.
Запустить тренировку
Для запуска обучения мы просто передаем необходимые артефакты вместе с некоторыми дополнительными параметрами в Оценщик SageMaker и позвонить .fit
функция:
Пока алгоритм обучается, вы можете следить за его ходом либо в блокноте SageMaker, где вы запускаете сам код, либо на Amazon CloudWatch. Когда обучение завершено, артефакты точной настройки модели загружаются в Простой сервис хранения Amazon (Amazon S3) выходное местоположение, указанное в конфигурации обучения. Теперь вы можете развернуть модель так же, как предварительно обученную модель. Вы можете следить за остальным процессом в сопроводительная записная книжка.
Заключение
В этом посте мы описали ценность недавно выпущенных API JumpStart и способы их использования. Мы предоставили ссылки на 17 примеров блокнотов для различных задач машинного обучения, поддерживаемых в JumpStart, и познакомили вас с блокнотом для обнаружения объектов.
Мы с нетерпением ждем ответа от вас, когда вы экспериментируете с JumpStart.
Об авторах
Доктор Вивек Мадан — ученый-прикладник в команде Amazon SageMaker JumpStart. Он получил докторскую степень в Университете Иллинойса в Урбана-Шампейн и был постдокторским исследователем в Технологическом институте Джорджии. Он является активным исследователем в области машинного обучения и разработки алгоритмов и публиковал статьи на конференциях EMNLP, ICLR, COLT, FOCS и SODA.
Жоао Моура является специалистом по архитектуре решений AI/ML в Amazon Web Services. Он в основном сосредоточен на примерах использования НЛП и помогает клиентам оптимизировать обучение и развертывание модели глубокого обучения.
Доктор Ашиш Хетан является старшим научным сотрудником с Amazon SageMaker JumpStart и Встроенные алгоритмы Amazon SageMaker и помогает разрабатывать алгоритмы машинного обучения. Он является активным исследователем в области машинного обучения и статистических выводов и опубликовал множество статей на конференциях NeurIPS, ICML, ICLR, JMLR и ACL.
- Коинсмарт. Лучшая в Европе биржа биткойнов и криптовалют.
- Платоблокчейн. Интеллект метавселенной Web3. Расширение знаний. БЕСПЛАТНЫЙ ДОСТУП.
- КриптоХок. Альткоин Радар. Бесплатная пробная версия.
- Источник: https://aws.amazon.com/blogs/machine-learning/amazon-sagemaker-jumpstart-models-and-algorithms-now-available-via-api/
- "
- 100
- 2020
- точный
- через
- активный
- дополнительный
- плюс
- алгоритм
- алгоритмы
- Все
- Amazon
- Amazon Web Services
- количество
- анонсировать
- объявило
- Другой
- откуда угодно
- API
- API
- Приложения
- доступен
- AWS
- не являетесь
- Блог
- Сообщения в блоге
- Коробка
- встроенный
- бизнес
- призывают
- возможности
- случаев
- изменение
- классификация
- код
- лыжных шлемов
- Общий
- сообщество
- конференции
- Конфигурация
- Container
- Контейнеры
- содержит
- содержание
- Расходы
- Текущий
- Текущее состояние
- Клиенты
- данным
- обработка данных
- Спрос
- развертывание
- развертывание
- развертывание
- Проект
- обнаружение
- развивать
- развитый
- Развитие
- различный
- Дисплей
- Docker
- не
- домен
- легко
- шифрование
- Конечная точка
- Предприятие
- Окружающая среда
- пример
- эксперимент
- Face
- Особенность
- Особенности
- в заключение
- финансовый
- Трансформируемость
- поток
- внимание
- следовать
- после
- формат
- вперед
- полный
- функция
- Общие
- поколение
- ГРУЗИИ
- инструкция
- Управляемость
- помощь
- помогает
- Как
- How To
- HTTPS
- определения
- Иллинойс
- изображение
- включены
- В том числе
- промышленность
- вовлеченный
- IT
- саму трезвость
- работа
- ключи
- знания
- Этикетки
- большой
- запуск
- узнали
- изучение
- связи
- расположение
- машина
- обучение с помощью машины
- Большинство
- Создание
- ML
- модель
- Модели
- самых
- Самые популярные
- а именно
- ноутбук
- номер
- многочисленный
- Платформа
- Популярное
- Блог
- прогноз
- Predictions
- представить
- проблемам
- процесс
- Процессы
- производит
- Продукт
- обеспечивать
- приводит
- вопрос
- быстро
- реального времени
- признавать
- снижение
- обязательный
- исследованиям
- Полезные ресурсы
- ответ
- ОТДЫХ
- Итоги
- Run
- Бег
- Ученый
- Ученые
- SDK
- безопасно
- безопасность
- выбранный
- Услуги
- набор
- аналогичный
- просто
- So
- Решения
- РЕШАТЬ
- и политические лидеры
- Область
- статистический
- диск
- студия
- поддержка
- Поддержанный
- Поддержка
- задачи
- команда
- технологии
- Через
- время
- сегодня
- вместе
- Обучение
- поезда
- Университет
- отпирает
- Обновление ПО
- использование
- случаи использования
- ценностное
- Видео
- видение
- Web
- веб-сервисы
- Что
- в
- письмо