Amazon SageMaker надає набір з вбудовані алгоритми, попередньо навчені моделі та попередньо створені шаблони рішень щоб допомогти фахівцям з обробки даних і машинам навчання (ML) швидко розпочати навчання та розгортати моделі ML. Ви можете використовувати ці алгоритми та моделі як для навчання під контролем, так і для навчання без контролю. Вони можуть обробляти різні типи вхідних даних, включаючи табличні, графічні та текстові.
Ця публікація є третьою в серії про нові вбудовані алгоритми в SageMaker. В перший пост, ми показали, як SageMaker надає вбудований алгоритм для класифікації зображень. В друга посада, ми показали, як SageMaker надає вбудований алгоритм для виявлення об’єктів. Сьогодні ми повідомляємо, що SageMaker надає новий вбудований алгоритм для класифікації тексту за допомогою TensorFlow. Цей контрольований алгоритм навчання підтримує перенесення навчання для багатьох попередньо навчених моделей, доступних у Концентратор TensorFlow. Він приймає фрагмент тексту як вхідні дані та виводить ймовірність для кожної з міток класу. Ви можете налаштувати ці попередньо навчені моделі за допомогою навчання передачі, навіть якщо великий корпус тексту недоступний. Він доступний через SageMaker вбудовані алгоритми, а також через Інтерфейс SageMaker JumpStart in Студія Amazon SageMaker. Для отримання додаткової інформації див Класифікація тексту і зразок зошита Вступ до JumpStart – Класифікація тексту.
Класифікація тексту за допомогою TensorFlow у SageMaker забезпечує перенесення навчання на багатьох попередньо навчених моделях, доступних у TensorFlow Hub. Відповідно до кількості міток класів у навчальних даних рівень класифікації додається до попередньо навченої моделі концентратора TensorFlow. Рівень класифікації складається з шару відсіву та щільного шару, повністю зв’язаного шару, з регуляризатором 2 норм, який ініціалізується випадковими вагами. Навчання моделі має гіперпараметри для швидкості випадання шару випадання та коефіцієнт регуляризації L2 для щільного шару. Тоді або всю мережу, включаючи попередньо навчену модель, або лише верхній класифікаційний рівень можна точно налаштувати на нових навчальних даних. У цьому режимі навчання передачі навчання можна досягти навіть із меншим набором даних.
Як використовувати новий алгоритм класифікації тексту TensorFlow
У цьому розділі описано, як використовувати алгоритм класифікації тексту TensorFlow із SageMaker Python SDK. Інформацію про те, як використовувати його з інтерфейсу користувача Studio, див SageMaker JumpStart.
Алгоритм підтримує перенесення навчання для попередньо підготовлених моделей, перелічених у Моделі Tensorflow. Кожна модель має унікальний ідентифікатор model_id
. У наведеному нижче коді показано, як точно налаштувати базову модель BERT, ідентифіковану model_id
tensorflow-tc-bert-en-uncased-L-12-H-768-A-12-2
на спеціальному навчальному наборі даних. Для кожного model_id
, щоб запустити навчальне завдання SageMaker через Оцінювач класу SDK SageMaker Python, ви повинні отримати URI зображення Docker, URI навчального сценарію та URI попередньо навченої моделі за допомогою службових функцій, наданих у SageMaker. URI сценарію навчання містить увесь необхідний код для обробки даних, завантаження попередньо навченої моделі, навчання моделі та збереження навченої моделі для висновку. URI попередньо підготовленої моделі містить визначення архітектури попередньо підготовленої моделі та параметри моделі. Попередньо підготовлений 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
, то всі параметри моделі будуть точно налаштовані. Перегляньте наступний код:
Ми надаємо SST2 як стандартний набір даних для точного налаштування моделей. Набір даних містить позитивні та негативні відгуки про фільми. Його було завантажено з TensorFlow при Ліцензія Apache 2.0. Наступний код надає набір навчальних даних за умовчанням, розміщений у сегментах S3.
Нарешті, щоб запустити навчальне завдання SageMaker для точного налаштування моделі, викличте .fit на об’єкті класу Estimator, передаючи розташування Amazon S3 набору навчальних даних:
Щоб отримати додаткові відомості про те, як використовувати новий алгоритм класифікації тексту SageMaker TensorFlow для передачі навчання на спеціальному наборі даних, розгортання точно налаштованої моделі, виконання висновків на розгорнутій моделі та розгортання попередньо навченої моделі без попереднього тонкого налаштування у спеціальному наборі даних див. такий приклад блокнота: Вступ до JumpStart – Класифікація тексту.
Інтерфейс введення/виведення для алгоритму класифікації тексту TensorFlow
Ви можете точно налаштувати кожну з попередньо навчених моделей, перелічених у Моделі TensorFlow до будь-якого набору даних, що складається з текстових речень із будь-якою кількістю класів. Попередньо навчена модель приєднує рівень класифікації до моделі вбудовування тексту та ініціалізує параметри шару до випадкових значень. Вихідний розмір шару класифікації визначається на основі кількості класів, виявлених у вхідних даних. Метою є мінімізація помилок класифікації вхідних даних. Модель, отриману за допомогою тонкого налаштування, може бути використана для логічного висновку.
У наведених нижче інструкціях описано, як мають бути відформатовані навчальні дані для введення в модель:
- Вхідні дані – каталог, що містить файл data.csv. Кожен рядок першого стовпця має містити цілочисельні мітки класів від 0 до кількості класів. Кожен рядок другого стовпця повинен мати відповідні текстові дані.
- Вихідні дані – точно налаштована модель, яку можна розгорнути для висновків або додатково навчити за допомогою поступового навчання. Файл зіставлення індексів класів з мітками класів зберігається разом із моделями.
Нижче наведено приклад вхідного файлу CSV. Зауважте, що файл не повинен мати заголовка. Файл має бути розміщено у сегменті S3 із таким шляхом: s3://bucket_name/input_directory/
. Зауважте, що в кінці /
не потрібно.
Висновок за допомогою алгоритму класифікації тексту TensorFlow
Згенеровані моделі можна розмістити для висновків і допоміжного тексту як application/x-text
тип вмісту. Вихідні дані містять значення ймовірності, мітки класів для всіх класів і прогнозовану мітку, що відповідає індексу класу з найвищою ймовірністю, закодованому у форматі JSON. Модель обробляє один рядок на запит і виводить лише один рядок. Нижче наведено приклад відповіді у форматі JSON:
If accept
встановлений в application/json
, тоді модель виводить лише ймовірності. Щоб отримати докладніші відомості про навчання та висновки, перегляньте зразок зошита Introduction to Вступ до JumpStart – Класифікація тексту.
Використовуйте вбудовані алгоритми SageMaker через інтерфейс користувача JumpStart
Ви також можете використовувати класифікацію тексту SageMaker TensorFlow та будь-які інші вбудовані алгоритми кількома клацаннями миші через інтерфейс користувача JumpStart. JumpStart — це функція SageMaker, яка дозволяє навчати та розгортати вбудовані алгоритми та попередньо навчені моделі з різних фреймворків ML і концентраторів моделей через графічний інтерфейс. Крім того, це дозволяє розгортати повноцінні рішення ML, які об’єднують моделі ML та різні інші служби AWS для вирішення цільового сценарію використання.
Нижче наведено два відео, які показують, як ви можете відтворити той самий процес тонкого налаштування та розгортання, який ми щойно пройшли, за допомогою кількох клацань за допомогою інтерфейсу користувача JumpStart.
Налаштуйте попередньо підготовлену модель
Ось процес тонкого налаштування попередньо навченої моделі класифікації тексту.
Розгорніть налаштовану модель
Після завершення навчання моделі ви можете одним клацанням миші безпосередньо розгорнути модель на постійній кінцевій точці в реальному часі.
Висновок
У цій публікації ми оголосили про запуск вбудованого алгоритму класифікації тексту SageMaker TensorFlow. Ми надали приклад коду для того, як перенести навчання на спеціальному наборі даних за допомогою попередньо навченої моделі з центру TensorFlow за допомогою цього алгоритму.
Для отримання додаткової інформації перегляньте документація і зразок зошита Вступ до JumpStart – Класифікація тексту.
Про авторів
Доктор Вівек Мадан є прикладним науковцем з Команда Amazon SageMaker JumpStart. Він отримав ступінь доктора філософії в Університеті Іллінойсу в Урбана-Шампейн і був науковим співробітником у технічному університеті Джорджії. Він є активним дослідником машинного навчання та розробки алгоритмів і публікував статті на конференціях EMNLP, ICLR, COLT, FOCS і SODA.
Жоао Моура є архітектором спеціалістів із штучного інтелекту та ML в Amazon Web Services. Він здебільшого зосереджений на сценаріях використання НЛП і допомагає клієнтам оптимізувати навчання та розгортання моделі глибокого навчання. Він також є активним прихильником рішень ML з низьким кодом і апаратного забезпечення, спеціалізованого на ML.
Доктор Ашиш Хетан є старшим вченим-прикладником с Вбудовані алгоритми Amazon SageMaker і допомагає розробляти алгоритми машинного навчання. Він отримав ступінь доктора філософії в Університеті Іллінойсу Урбана Шампейн. Він активно досліджує машинне навчання та статистичні висновки та опублікував багато статей на конференціях NeurIPS, ICML, ICLR, JMLR, ACL та EMNLP.
- AI
- ai мистецтво
- AI арт генератор
- ai робот
- Amazon SageMaker
- Amazon SageMaker JumpStart
- штучний інтелект
- сертифікація штучного інтелекту
- штучний інтелект у банківській справі
- робот зі штучним інтелектом
- роботи зі штучним інтелектом
- програмне забезпечення для штучного інтелекту
- AWS Машинне навчання
- blockchain
- блокчейн конференція AI
- coingenius
- розмовний штучний інтелект
- крипто конференція ai
- dall's
- глибоке навчання
- Основні (100)
- у вас є гугл
- навчання за допомогою машини
- plato
- платон ai
- Інформація про дані Платона
- Гра Платон
- PlatoData
- platogaming
- масштаб ai
- синтаксис
- зефірнет