Автопілот Amazon SageMaker у вісім разів швидший завдяки новому режиму групового тренування на базі AutoGluon PlatoBlockchain Data Intelligence. Вертикальний пошук. Ai.

Автопілот Amazon SageMaker працює у вісім разів швидше завдяки новому режиму навчання в ансамблі на основі AutoGluon

Автопілот Amazon SageMaker додав новий режим навчання, який підтримує ансамблювання моделей на основі Автоглюон. Режим ансамблевого навчання в Autopilot навчає кілька базових моделей і комбінує їхні прогнози за допомогою стекування моделей. Для наборів даних менше 100 МБ режим ансамблевого навчання швидко створює моделі машинного навчання (ML) з високою точністю — до восьми разів швидше, ніж режим навчання оптимізації гіперпараметрів (HPO) з 250 пробами, і до 5.8 разів швидше, ніж режим навчання HPO з 100 випробувань. Він підтримує широкий спектр алгоритмів, включаючи LightGBM, CatBoost, XGBoost, Random Forest, Extra Trees, лінійні моделі та нейронні мережі на основі PyTorch і FastAI.

Як AutoGluon будує ансамблеві моделі

Автоглюонно-табличний (AGT) — популярна платформа AutoML з відкритим кодом, яка тренує високоточні моделі ML на табличних наборах даних. На відміну від існуючих фреймворків AutoML, які в першу чергу зосереджуються на виборі моделі та гіперпараметрів, AGT досягає успіху, об’єднуючи кілька моделей і об’єднуючи їх у кілька шарів. Поведінку AGT за замовчуванням можна підсумувати таким чином: маючи набір даних, AGT навчає різні базові моделі, починаючи від стандартних розширених дерев і закінчуючи спеціальними нейронними мережами на наборі даних. Прогнози з базових моделей використовуються як функції для створення моделі стекування, яка вивчає відповідну вагу кожної базової моделі. З цими вивченими вагами модель накопичення потім об’єднує прогнози базової моделі та повертає об’єднані прогнози як остаточний набір прогнозів.

Як працює режим тренування в ансамблі автопілота

Різні набори даних мають характеристики, які підходять для різних алгоритмів. Маючи набір даних із невідомими характеристиками, важко знати заздалегідь, які алгоритми найкраще працюватимуть із набором даних. Пам’ятаючи про це, дослідники обробки даних, які використовують AGT, часто створюють кілька користувацьких конфігурацій із підмножиною алгоритмів і параметрів. Вони запускають ці конфігурації на заданому наборі даних, щоб знайти найкращу конфігурацію з точки зору продуктивності та затримки висновку.

Autopilot — це продукт ML з низьким кодом, який автоматично створює найкращі моделі ML для ваших даних. У новому режимі ансамблевого тренування автопілот вибирає оптимальний набір конфігурацій AGT і проводить кілька випробувань, щоб отримати найкращу модель. Ці випробування проводяться паралельно, щоб оцінити, чи можна ще більше покращити продуктивність AGT з точки зору об’єктивних показників або затримки висновку.

Результати, отримані за допомогою тестів OpenML

Щоб оцінити покращення продуктивності, ми використали набори даних OpenML тесту розміром від 0.5 до 100 МБ і провели 10 випробувань AGT із різними комбінаціями алгоритмів і конфігурацій гіперпараметрів. Тести порівнювали режим ансамблевого тренування з режимом HPO з 250 спробами та режимом HPO зі 100 спробами. У наведеній нижче таблиці порівнюється загальний час виконання експерименту Autopilot (у хвилинах) між двома режимами навчання для різних розмірів набору даних.

Розмір набору даних Режим HPO (250 спроб) Режим HPO (100 спроб) Режим ансамблю (10 спроб) Покращення часу роботи з HPO 250 Покращення часу роботи з HPO 100
< 1 МБ 121.5 хвилин 88.0 хвилин 15.0 хвилин 8.1x 5.9x
1–10 МБ 136.1 хвилин 76.5 хвилин 25.8 хвилин 5.3x 3.0x
10–100 МБ 152.7 хвилин 103.1 хвилин 60.9 хвилин 2.5x 1.7x

Для порівняння продуктивності задач багатокласової класифікації ми використовуємо точність, для задач бінарної класифікації ми використовуємо оцінку F1, а для задач регресії ми використовуємо R2. Зростання об’єктивних показників показано в наступних таблицях. Ми спостерігали, що режим тренування в ансамблі був кращим, ніж режим тренування HPO (як 100, так і 250 випробувань).

Зауважте, що режим ансамблю демонструє стабільне покращення порівняно з режимом HPO з 250 випробуваннями незалежно від розміру набору даних і типів проблем.

У наведеній нижче таблиці порівнюється точність задач класифікації з кількома класами (чим вище, тим краще).

Розмір набору даних Режим HPO (250 спроб) Режим HPO (100 спроб) Режим ансамблю (10 спроб) Відсоткове покращення порівняно з HPO 250
< 1 МБ 0.759 0.761 0.771 1.46%
1–5 МБ 0.941 0.935 0.957 1.64%
5–10 МБ 0.639 0.633 0.671 4.92%
10–50 МБ 0.998 0.999 0.999 0.11%
51–100 МБ 0.853 0.852 0.875 2.56%

У наведеній нижче таблиці порівнюються показники F1 для задач двійкової класифікації (чим вище, тим краще).

Розмір набору даних Режим HPO (250 спроб) Режим HPO (100 спроб) Режим ансамблю (10 спроб) Відсоткове покращення порівняно з HPO 250
< 1 МБ 0.801 0.807 0.826 3.14%
1–5 МБ 0.59 0.587 0.629 6.60%
5–10 МБ 0.886 0.889 0.898 1.32%
10–50 МБ 0.731 0.736 0.754 3.12%
51–100 МБ 0.503 0.493 0.541 7.58%

У наведеній нижче таблиці порівнюється R2 для задач регресії (чим вище, тим краще).

Розмір набору даних Режим HPO (250 спроб) Режим HPO (100 спроб) Режим ансамблю (10 спроб) Відсоткове покращення порівняно з HPO 250
< 1 МБ 0.717 0.718 0.716 0%
1–5 МБ 0.803 0.803 0.817 2%
5–10 МБ 0.590 0.586 0.614 4%
10–50 МБ 0.686 0.688 0.684 0%
51–100 МБ 0.623 0.626 0.631 1%

У наступних розділах ми покажемо, як використовувати новий режим навчання ансамблю в Autopilot для аналізу наборів даних і легкого створення високоякісних моделей ML.

Огляд набору даних

Ми використовуємо Набір даних Титаніка передбачити, чи вижив даний пасажир чи ні. Це проблема бінарної класифікації. Ми зосереджуємося на створенні експерименту на автопілоті з використанням нового режиму тренування в ансамблі та порівнюємо результати оцінки F1 і загальний час виконання з експериментом на автопілоті з використанням режиму навчання HPO (100 випробувань).

Назва стовпця Опис
Passengerid Ідентифікаційний номер
Вижили Виживання
Pclass Клас квитка
ІМ'Я Ім'я пасажира
секс секс
вік Вік у роках
Sibsp Кількість братів і сестер або подружжя на борту Титаніка
Персик Кількість батьків або дітей на борту Титаніка
Квиток Номер квитка
робити Вартість проїзду пасажира
кабіна Номер кабіни
Вступив Порт посадки

Набір даних містить 890 рядків і 12 стовпців. Він містить демографічну інформацію про пасажирів (вік, стать, клас квитка тощо) і цільовий стовпець «Вижили» (так/ні).

Передумови

Виконайте такі необхідні кроки:

  1. Переконайтеся, що у вас є обліковий запис AWS, безпечний доступ для входу в обліковий запис через Консоль управління AWS та Управління ідентифікацією та доступом AWS (IAM) дозволи на використання Amazon SageMaker та Служба простого зберігання Amazon (Amazon S3).
  2. Завантажити Набір даних Титаніка та завантажте його у відро S3 у вашому обліковому записі.
  3. Підключення до домену SageMaker і доступ Студія Amazon SageMaker використовувати автопілот. Для отримання інструкцій див На борту до домену Amazon SageMaker. Якщо ви використовуєте наявну Studio, оновіть до Остання версія Studio використовувати новий ансамблевий режим навчання.

Створіть експеримент з автопілотом із режимом тренування в ансамблі

Коли набір даних буде готовий, ви можете ініціалізувати експеримент Autopilot у Studio. Повні інструкції див Створіть експеримент Amazon SageMaker Autopilot. Створіть експеримент автопілота, вказавши назву експерименту, вхідні дані та вказавши цільові дані для прогнозування в Деталі експерименту та даних розділ. За бажанням ви можете вказати коефіцієнт розливу даних і автоматичне створення вихідного розташування Amazon S3.

Для нашого випадку використання ми надаємо назву експерименту, вводимо розташування Amazon S3 і вибираємо Вижили як ціль. Ми зберігаємо ввімкненим автоматичний розподіл і замінюємо вихідне розташування Amazon S3 за умовчанням.

Автопілот Amazon SageMaker у вісім разів швидший завдяки новому режиму групового тренування на базі AutoGluon PlatoBlockchain Data Intelligence. Вертикальний пошук. Ai.

Далі ми вказуємо метод навчання в Метод тренування розділ. Ви можете дозволити автопілоту автоматично вибирати режим навчання за допомогою Авто на основі розміру набору даних або виберіть режим навчання вручну для ансамблю або HPO. Подробиці кожного варіанта наведені нижче.

  • Авто – Автопілот автоматично вибирає або режим ансамблю, або режим HPO на основі розміру вашого набору даних. Якщо ваш набір даних перевищує 100 МБ, Autopilot вибирає HPO, інакше він обирає ансамбль.
  • Ансамблювання – Використовує автопілот АвтоглюонТехніка ансамблювання для навчання кількох базових моделей і поєднання їхніх прогнозів за допомогою стекування моделей у оптимальну прогностичну модель.
  • Оптимізація гіперпараметрів – Autopilot знаходить найкращу версію моделі, налаштовуючи гіперпараметри за допомогою техніки байєсівської оптимізації та запускаючи навчальні завдання на вашому наборі даних. HPO вибирає алгоритми, які найбільше відповідають вашому набору даних, і вибирає найкращий діапазон гіперпараметрів для налаштування моделей.

Для нашого випадку використання ми вибираємо Ансамблювання як наш тренувальний режим.

Автопілот Amazon SageMaker у вісім разів швидший завдяки новому режиму групового тренування на базі AutoGluon PlatoBlockchain Data Intelligence. Вертикальний пошук. Ai.

Після цього переходимо до Розгортання та додаткові налаштування розділ. Тут ми знімаємо вибір Автоматичне розгортання варіант Під додаткові настройки, ви можете вказати тип проблеми ML, яку ви хочете вирішити. Якщо нічого не надано, Autopilot автоматично визначає модель на основі наданих вами даних. Оскільки наша проблема бінарної класифікації, ми вибираємо Двійкова класифікація як наш тип проблеми і F1 як наш об’єктивний показник.

Автопілот Amazon SageMaker у вісім разів швидший завдяки новому режиму групового тренування на базі AutoGluon PlatoBlockchain Data Intelligence. Вертикальний пошук. Ai.

Нарешті ми переглядаємо наш вибір і вибираємо Створіть експеримент.

Автопілот Amazon SageMaker у вісім разів швидший завдяки новому режиму групового тренування на базі AutoGluon PlatoBlockchain Data Intelligence. Вертикальний пошук. Ai.

На цьому етапі можна безпечно залишити Studio та повернутися пізніше, щоб перевірити результат, який ви можете знайти на Досліди меню.

На наступному скріншоті показано остаточні результати тренувального режиму роботи на автопілоті в ансамблі titanic-ens.

Автопілот Amazon SageMaker у вісім разів швидший завдяки новому режиму групового тренування на базі AutoGluon PlatoBlockchain Data Intelligence. Вертикальний пошук. Ai.

Ви можете побачити кілька випробувань, які спробував виконати автопілот у режимі тренування в ансамблі. Кожне випробування повертає найкращу модель із пулу індивідуальних прогонів моделей і прогонів комплексних моделей.

Щоб пояснити це трохи далі, припустімо, що під час випробування 1 розглянуто всі вісім підтримуваних алгоритмів і використано рівень стекування 2. Він внутрішньо створить індивідуальні моделі для кожного алгоритму, а також моделі зваженого ансамблю з рівнем стеку 0, рівнем 1 і рівнем 2. Проте результатом випробування 1 буде найкраща модель із пулу створених моделей.

Подібним чином, давайте розглянемо, що пробна версія 2 підібрала лише алгоритми посилення на основі дерева. У цьому випадку Trial 2 внутрішньо створить три окремі моделі для кожного з трьох алгоритмів, а також моделі зваженого ансамблю та поверне найкращу модель із свого циклу.

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

У попередньому прикладі нашою найкращою моделлю була модель з найвищим показником F1 (наша цільова метрика). Також показано кілька інших корисних показників, зокрема точність, збалансовану точність, точність і запам’ятовування. У нашому середовищі наскрізний час роботи для цього експерименту автопілота становив 10 хвилин.

Створіть експеримент з автопілотом із режимом навчання HPO

Тепер давайте виконаємо всі вищезазначені кроки, щоб створити другий експеримент автопілота за допомогою методу навчання HPO (за замовчуванням 100 випробувань). Окрім вибору методики навчання, яка є зараз Оптимізація гіперпараметрів, все інше залишається без змін. У режимі HPO ви можете вказати кількість спроб шляхом налаштування Максимум кандидатів при додаткові настройки та цінності Час виконання, але ми рекомендуємо залишити це за замовчуванням. Не надаючи жодної цінності Максимум кандидатів проведе 100 випробувань HPO. У нашому середовищі наскрізний час роботи для цього експерименту автопілота становив 2 години.

Автопілот Amazon SageMaker у вісім разів швидший завдяки новому режиму групового тренування на базі AutoGluon PlatoBlockchain Data Intelligence. Вертикальний пошук. Ai.

Порівняння показників часу роботи та продуктивності

Ми бачимо, що для нашого набору даних (менше 1 МБ) режим тренування в ансамблі не тільки працював у 12 разів швидше, ніж режим тренування HPO (від 120 хвилин до 10 хвилин), але також покращив результати F1 та інші показники ефективності.

Режим тренування Оцінка F1 Точність Збалансована точність AUC Точність Згадувати Журнал втрати Час виконання
Режим ансамблю - Зважений ансамбль 0.844 0.878 0.865 0.89 0.912 0.785 0.394 10 хвилин
Режим HPO – XGBoost 0.784 0.843 0.824 0.867 0.831 0.743 0.428 120 хвилин

Висновок

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

Підсумки

Ви можете запускати експерименти на автопілоті швидше без будь-якого впливу на продуктивність за допомогою нового режиму навчання ансамблю для наборів даних менше 100 МБ. Щоб почати, створити експеримент SageMaker Autopilot на консолі Studio та виберіть Ансамблювання як ваш тренувальний режим, або дозвольте автопілоту автоматично визначити режим тренування на основі розміру набору даних. Ви можете звернутися до Довідковий посібник API CreateAutoMLJob для оновлень API та оновлення до Остання версія Studio використовувати новий ансамблевий режим навчання. Додаткову інформацію про цю функцію див Підтримка моделей, показники та перевірка за допомогою Amazon SageMaker Autopilot і щоб дізнатися більше про автопілот, відвідайте Сторінка продукту.


Про авторів

Автопілот Amazon SageMaker у вісім разів швидший завдяки новому режиму групового тренування на базі AutoGluon PlatoBlockchain Data Intelligence. Вертикальний пошук. Ai.Яніша Ананд є старшим менеджером із продуктів у команді SageMaker Low/No Code ML, яка включає SageMaker Autopilot. Вона любить каву, залишаючись активною та проводячи час із сім’єю.

Автопілот Amazon SageMaker у вісім разів швидший завдяки новому режиму групового тренування на базі AutoGluon PlatoBlockchain Data Intelligence. Вертикальний пошук. Ai.Сакет Сате є старшим прикладним науковим співробітником команди SageMaker Autopilot. Він захоплений створенням нового покоління алгоритмів і систем машинного навчання. Крім роботи, він любить читати, готувати, хльбати рамен і грати в бадмінтон.

Автопілот Amazon SageMaker у вісім разів швидший завдяки новому режиму групового тренування на базі AutoGluon PlatoBlockchain Data Intelligence. Вертикальний пошук. Ai.Абхішек Сінгх є інженером-програмістом команди Autopilot в AWS. Він має понад 8 років досвіду розробника програмного забезпечення та захоплений створенням масштабованих програмних рішень, які вирішують проблеми клієнтів. У вільний час Абгішек любить залишатися активним, вирушаючи в походи або беручи участь у футбольних матчах.

Автопілот Amazon SageMaker у вісім разів швидший завдяки новому режиму групового тренування на базі AutoGluon PlatoBlockchain Data Intelligence. Вертикальний пошук. Ai.Вадим Омельченко є старшим архітектором рішень AI/ML, який захоплено допомагає клієнтам AWS впроваджувати інновації в хмарі. Його попередній досвід в ІТ був переважно на місцях.

Часова мітка:

Більше від AWS Машинне навчання