Amazon SageMaker надає набір з вбудовані алгоритми, попередньо навчені моделі та попередньо створені шаблони рішень щоб допомогти науковцям з даних і практикам машинного навчання (ML) розпочати навчання та швидко розгорнути моделі машинного навчання. Ви можете використовувати ці алгоритми та моделі як для навчання з наглядом, так і для навчання без нагляду. Вони можуть обробляти різні типи вхідних даних, включаючи табличні, графічні та текстові.
Ця публікація є другою в серії про нові вбудовані алгоритми в SageMaker. В перший пост, ми показали, як SageMaker надає вбудований алгоритм для класифікації зображень. Сьогодні ми повідомляємо, що SageMaker надає новий вбудований алгоритм для виявлення об’єктів за допомогою TensorFlow. Цей контрольований алгоритм навчання підтримує перенесення навчання для багатьох попередньо навчених моделей, доступних у TensorFlow. Він приймає зображення як вхідні дані та виводить об’єкти, присутні на зображенні разом із обмежувальними рамками. Ви можете точно налаштувати ці попередньо навчені моделі за допомогою передавання навчання, навіть якщо велика кількість навчальних зображень недоступна. Він доступний через SageMaker вбудовані алгоритми а також через Інтерфейс SageMaker JumpStart in Студія Amazon SageMaker. Для отримання додаткової інформації див Виявлення об'єктів Tensorflow і зразок зошита Вступ до SageMaker Tensorflow – виявлення об’єктів.
Виявлення об’єктів за допомогою TensorFlow у SageMaker забезпечує перенесення навчання на багатьох попередньо навчених моделях, доступних у TensorFlow Hub. Відповідно до кількості міток класів у навчальних даних нова довільно ініціалізована головка виявлення об’єктів замінює існуючу головку моделі TensorFlow. Або всю мережу, включаючи попередньо навчену модель, або лише верхній рівень (голову виявлення об’єктів) можна точно налаштувати на нових даних навчання. У цьому режимі навчання передачі ви можете досягти навчання навіть із меншим набором даних.
Як використовувати новий алгоритм виявлення об’єктів TensorFlow
У цьому розділі описано, як використовувати алгоритм виявлення об’єктів TensorFlow із SageMaker Python SDK. Інформацію про те, як використовувати його з інтерфейсу користувача Studio, див SageMaker JumpStart.
Алгоритм підтримує перенесення навчання для попередньо підготовлених моделей, перелічених у Моделі TensorFlow. Кожна модель має унікальний ідентифікатор model_id
. У наведеному нижче коді показано, як точно налаштувати модель ResNet50 V1 FPN, ідентифіковану за model_id
tensorflow-od1-ssd-resnet50-v1-fpn-640x640-coco17-tpu-8
на спеціальному навчальному наборі даних. Для кожного model_id
, щоб запустити навчальне завдання SageMaker через Оцінювач класу SDK SageMaker Python, вам потрібно отримати URI зображення Docker, URI навчального сценарію та URI попередньо навченої моделі за допомогою службових функцій, наданих у SageMaker. URI сценарію навчання містить увесь необхідний код для обробки даних, завантаження попередньо навченої моделі, навчання моделі та збереження навченої моделі для висновку. URI попередньо підготовленої моделі містить визначення архітектури попередньо підготовленої моделі та параметри моделі. Зверніть увагу, що URI зображення Docker і URI сценарію навчання однакові для всіх моделей виявлення об’єктів TensorFlow. Попередньо підготовлений URI моделі є специфічним для конкретної моделі. Попередньо навчені архівні файли моделей попередньо завантажено з TensorFlow і збережено з відповідним підписом моделі в Служба простого зберігання Amazon (Amazon S3), так що навчання виконується в ізоляції мережі. Перегляньте наступний код:
За допомогою цих специфічних для моделі навчальних артефактів ви можете побудувати об’єкт Оцінювач клас:
Далі, щоб передати навчання на вашому спеціальному наборі даних, вам може знадобитися змінити значення за замовчуванням гіперпараметрів навчання, які перелічені в Гіперпараметри. Ви можете отримати словник Python цих гіперпараметрів із значеннями за замовчуванням за допомогою виклику hyperparameters.retrieve_default
, оновіть їх за потреби, а потім передайте їх класу Estimator. Зауважте, що значення за замовчуванням деяких гіперпараметрів відрізняються для різних моделей. Для великих моделей розмір партії за замовчуванням менший і train_only_top_layer
гіперпараметр має значення True
. Гіперпараметр train_only_top_layer
визначає, які параметри моделі змінюються під час процесу тонкого налаштування. Якщо train_only_top_layer
is True
, параметри шарів класифікації змінюються, а решта параметрів залишаються незмінними під час процесу тонкого налаштування. З іншого боку, якщо train_only_top_layer
is False
, всі параметри моделі налаштовані. Перегляньте наступний код:
Ми надаємо Набір даних PennFudanPed як стандартний набір даних для точного налаштування моделей. Набір даних містить зображення пішоходів. Наступний код надає стандартний набір навчальних даних, розміщений у сегментах S3:
Нарешті, щоб запустити навчальне завдання SageMaker для точного налаштування моделі, телефонуйте .fit
на об’єкті класу Estimator, під час передачі розташування S3 навчального набору даних:
Щоб отримати додаткові відомості про те, як використовувати новий алгоритм виявлення об’єктів SageMaker TensorFlow для передачі навчання на спеціальному наборі даних, розгортання точно налаштованої моделі, виконання висновків на розгорнутій моделі та розгортання попередньо навченої моделі без попереднього тонкого налаштування на настроюваному наборі даних див. такий приклад блокнота: Вступ до SageMaker TensorFlow – виявлення об’єктів.
Інтерфейс введення/виведення для алгоритму виявлення об’єктів TensorFlow
Ви можете точно налаштувати кожну з попередньо навчених моделей, перелічених у Моделі TensorFlow до будь-якого набору даних, що містить зображення, що належать до будь-якої кількості класів. Мета полягає в тому, щоб мінімізувати помилку передбачення вхідних даних. Модель, отриману за допомогою тонкого налаштування, може бути використана для логічного висновку. Нижче наведено вказівки щодо форматування навчальних даних для введення в модель:
- вхід – Каталог із підкаталогами images і файлом
annotations.json
. - Вихід – Є два виходи. По-перше, це точно налаштована модель, яку можна розгорнути для висновків або додатково навчити за допомогою поступового навчання. По-друге, це файл, який зіставляє індекси класів з мітками класів; це зберігається разом із моделлю.
Вхідний каталог має виглядати так, як показано нижче:
Команда annotations.json
файл повинен містити інформацію для bounding_boxes
та їхні мітки класів. Він повинен мати словник з ключами "images"
та "annotations"
. Значення для "images"
ключ має бути списком записів, по одному для кожного зображення форми {"file_name": image_name, "height": height, "width": width, "id": image_id}
. Значення "annotations"
ключ має бути списком записів, по одному для кожної обмежувальної рамки форми {"image_id": image_id, "bbox": [xmin, ymin, xmax, ymax], "category_id": bbox_label}
.
Висновок за допомогою алгоритму виявлення об’єктів TensorFlow
Згенеровані моделі можна розміщувати для висновків і підтримувати закодовані формати зображень .jpg, .jpeg і .png як application/x-image
тип вмісту. Розмір вхідного зображення змінюється автоматично. Вихідні дані містять коробки, передбачені класи та бали для кожного передбачення. Модель виявлення об’єктів TensorFlow обробляє одне зображення на запит і виводить лише один рядок у JSON. Нижче наведено приклад відповіді в JSON:
If accept
встановлений в application/json
, тоді модель виводить лише передбачені блоки, класи та бали. Щоб отримати докладнішу інформацію про навчання та висновки, перегляньте зразок зошита Вступ до SageMaker TensorFlow – виявлення об’єктів.
Використовуйте вбудовані алгоритми SageMaker через інтерфейс користувача JumpStart
Ви також можете використовувати виявлення об’єктів SageMaker TensorFlow та будь-які інші вбудовані алгоритми кількома клацаннями миші через інтерфейс користувача JumpStart. JumpStart — це функція SageMaker, яка дозволяє навчати та розгортати вбудовані алгоритми та попередньо навчені моделі з різних фреймворків ML і концентраторів моделей через графічний інтерфейс. Це також дозволяє розгортати повноцінні рішення ML, які об’єднують моделі ML та різні інші служби AWS для вирішення цільового сценарію використання.
Нижче наведено два відео, які показують, як ви можете відтворити той самий процес тонкого налаштування та розгортання, який ми щойно пройшли, за допомогою кількох клацань за допомогою інтерфейсу користувача JumpStart.
Налаштуйте попередньо підготовлену модель
Ось процес тонкого налаштування попередньо навченої моделі виявлення об’єктів.
Розгорніть налаштовану модель
Після завершення навчання моделі ви можете одним клацанням миші безпосередньо розгорнути модель на постійній кінцевій точці в реальному часі.
Висновок
У цій публікації ми оголосили про запуск вбудованого алгоритму виявлення об’єктів SageMaker TensorFlow. Ми надали приклад коду того, як передавати навчання на спеціальному наборі даних за допомогою попередньо навченої моделі від TensorFlow за допомогою цього алгоритму.
Для отримання додаткової інформації ознайомтесь із інформацією документація і приклад блокнота.
Про авторів
Доктор Вівек Мадан є прикладним науковцем з Команда Amazon SageMaker JumpStart. Він отримав ступінь доктора філософії в Університеті Іллінойсу в Урбана-Шампейн і був науковим співробітником у технічному університеті Джорджії. Він є активним дослідником машинного навчання та розробки алгоритмів і публікував статті на конференціях EMNLP, ICLR, COLT, FOCS і SODA.
Жоао Моура є архітектором-спеціалістом з рішень AI/ML у Amazon Web Services. Він переважно зосереджений на прикладах використання НЛП і допомагає клієнтам оптимізувати навчання та розгортання моделі глибокого навчання. Він також є активним прихильником рішень ML з низьким кодом і спеціалізованого обладнання для ML.
Доктор Ашиш Хетан є старшим вченим-прикладником с Вбудовані алгоритми Amazon SageMaker і допомагає розробляти алгоритми машинного навчання. Він отримав ступінь доктора філософії в Університеті Іллінойсу Урбана Шампейн. Він активно досліджує машинне навчання та статистичні висновки та опублікував багато статей на конференціях NeurIPS, ICML, ICLR, JMLR, ACL та EMNLP.
- AI
- ai мистецтво
- AI арт генератор
- ai робот
- Amazon SageMaker
- штучний інтелект
- сертифікація штучного інтелекту
- штучний інтелект у банківській справі
- робот зі штучним інтелектом
- роботи зі штучним інтелектом
- програмне забезпечення для штучного інтелекту
- AWS Машинне навчання
- blockchain
- блокчейн конференція AI
- coingenius
- розмовний штучний інтелект
- крипто конференція ai
- dall's
- глибоке навчання
- Основні (100)
- у вас є гугл
- навчання за допомогою машини
- plato
- платон ai
- Інформація про дані Платона
- Гра Платон
- PlatoData
- platogaming
- масштаб ai
- синтаксис
- зефірнет