Оскільки все більше організацій переходять на машинне навчання (ML), щоб отримати більш глибокі знання, двома ключовими каменями спотикання, з якими вони стикаються, є маркування та управління життєвим циклом. Позначення — це ідентифікація даних і додавання міток для надання контексту, щоб модель ML могла навчитися на них. Мітки можуть вказувати фразу в аудіофайлі, автомобіль на фотографії або орган на МРТ. Маркування даних необхідне, щоб моделі ML могли працювати з даними. Управління життєвим циклом пов’язане з процесом налаштування експерименту ML та документування набору даних, бібліотеки, версії та моделі, які використовуються для отримання результатів. Команда може провести сотні експериментів, перш ніж зупинитися на одному підході. Повернутися назад і відтворити цей підхід може бути важко без записів елементів цього експерименту.
Багато прикладів і навчальних посібників з ML починаються з набору даних, який містить цільове значення. Однак реальні дані не завжди мають таке цільове значення. Наприклад, під час аналізу настроїв людина зазвичай може зробити судження про те, чи є відгук позитивним, негативним чи змішаним. Але рецензії складаються з набору текстів, які не мають жодної оцінки. Для того щоб створити а контрольоване навчання Для вирішення цієї проблеми необхідний високоякісний маркований набір даних. Основна правда Amazon SageMaker — це повністю керована служба маркування даних, яка дозволяє легко створювати високоточні набори навчальних даних для машинного навчання.
Для організацій, які використовують Databricks як платформу даних та аналітики в AWS для виконання завдань вилучення, перетворення та завантаження (ETL), кінцевою метою часто є навчання моделі навчання під наглядом. У цій публікації ми показуємо, як Databricks інтегрується з Ground Truth і Amazon SageMaker для маркування даних і розповсюдження моделей.
Огляд рішення
Ground Truth — це повністю керована служба маркування даних, яка дозволяє легко створювати високоточні набори навчальних даних для ML. За допомогою консолі Ground Truth ми можемо створювати власні або вбудовані робочі процеси маркування даних за лічені хвилини. Ці робочі процеси підтримують різні варіанти використання, включаючи 3D-хмари точок, відео, зображення та текст. Крім того, Ground Truth пропонує автоматичне маркування даних, яке використовує модель ML для позначення наших даних.
Ми навчаємо нашу модель на загальнодоступному наборі даних Amazon Customer Reviews. На високому рівні кроки такі:
- Витягніть необроблений набір даних для позначення та перемістіть його Служба простого зберігання Amazon (Amazon S3).
- Виконайте маркування, створивши завдання маркування в SageMaker.
- Створіть і навчіть просту лінійну модель учнів Scikit-learn, щоб класифікувати настрої тексту огляду на платформі Databricks за допомогою зразка ноутбук.
- Скористайтесь MLflow компоненти для створення та виконання MLOps та збереження артефактів моделі.
- Розгорніть модель як кінцеву точку SageMaker за допомогою Бібліотека MLflow SageMaker для висновку в реальному часі.
Наступна діаграма ілюструє маркування та шлях ML за допомогою Ground Truth і MLflow.
Створіть завдання маркування в SageMaker
З набору даних Amazon Customer Reviews ми витягуємо лише текстові частини, оскільки створюємо модель аналізу настроїв. Після вилучення ми поміщаємо текст у відро S3, а потім створюємо завдання маркування Ground Truth через консоль SageMaker.
на Створення завдання маркування сторінки, заповніть усі обов’язкові поля. Як частина кроку на цій сторінці, Ground Truth дозволяє вам створити файл маніфесту завдання. Ground Truth використовує вхідний файл маніфесту, щоб визначити кількість файлів або об’єктів у завданні маркування, щоб створити потрібну кількість завдань і надіслати їх людям (або машинним) наклейкам. Файл автоматично зберігається у відро S3. Наступним кроком є визначення категорії завдання та вибір завдання. У цьому випадку ми вибираємо текст як категорія завдання, і Класифікація тексту з єдиною міткою для вибору завдання, що означає, що текст огляду матиме єдиний настрій: позитивний, негативний або нейтральний.
Нарешті, ми пишемо прості, але лаконічні інструкції для етикеток про те, як позначити текстові дані. Інструкції відображаються в інструменті маркування, і ви можете за бажанням переглянути вигляд анотатора в цей час. Нарешті, ми надсилаємо завдання та відстежуємо прогрес на консолі.
Поки виконується завдання маркування, ми також можемо переглянути позначені дані на Вихід табл. Ми можемо відстежувати кожен текст огляду та етикетку, а також те, чи була робота виконана людиною або машиною. Ми можемо вибрати 100% робіт з маркування, які будуть виконуватися людьми, або вибрати машинні анотації, що прискорює роботу та зменшує витрати на оплату праці.
Коли завдання завершено, підсумок завдання маркування містить посилання на вихідний маніфест і позначений набір даних. Ми також можемо перейти до Amazon S3 і завантажити обидва з нашої папки S3 bucket.
На наступних кроках ми використовуємо блокнот Databricks, MLflow, і набори даних, позначені Ground Truth для створення a Scikit-Learn модель.
Завантажте позначений набір даних із Amazon S3
Ми починаємо із завантаження позначеного набору даних з Amazon S3. Маніфест зберігається у форматі JSON, і ми завантажуємо його в Spark DataFrame в Databricks. Для навчання моделі аналізу настроїв нам потрібен лише текст огляду та настрої, які були анотовані завданням маркування Ground Truth. Ми використовуємо select() для вилучення цих двох функцій. Потім ми перетворюємо набір даних із PySpark DataFrame у Pandas DataFrame, оскільки алгоритм Scikit-learn вимагає формат Pandas DataFrame.
Далі ми використовуємо Scikit-learn CountVectorizer
щоб перетворити текст огляду на біграмний вектор, встановивши параметр ngram_range
максимальне значення до 2. CountVectorizer
перетворює текст у матрицю кількості маркерів. Тоді використовуємо TfidfTransformer
щоб перетворити вектор біграми у формат частотно-інверсної частоти документа (TF-IDF).
Ми порівнюємо показники точності для навчання, виконаного з біграмним вектором, і біграмом з TF-IDF. TF-IDF — це статистичний показник, який оцінює, наскільки слово є релевантним документу в колекції документів. Оскільки текст огляду, як правило, відносно короткий, ми можемо спостерігати, як TF-IDF впливає на продуктивність прогнозної моделі.
Налаштуйте експеримент MLflow
MLflow був розроблений компанією Databricks і зараз є проект з відкритим кодом. MLflow керує життєвим циклом ML, тому ви можете легко відстежувати, відтворювати й публікувати експерименти.
Для налаштування експериментів MLflow ми використовуємо mlflow.sklearn.autolog()
щоб увімкнути автоматичну реєстрацію гіперпараметрів, метрик та артефактів моделі будь-коли estimator.fit()
, estimator.fit_predict()
, та estimator.fit_transform()
називаються. Крім того, ви можете зробити це вручну, зателефонувавши mlflow.log_param()
та mlflow.log_metric()
.
Ми підігнали трансформований набір даних до лінійного класифікатора зі стохастичним градієнтним спуском (SGD). У SGD градієнт втрат оцінюється по одній вибірці за один раз, і модель оновлюється по ходу за графіком зменшення міцності.
Ці два набори даних, які ми підготували раніше, передаються до train_and_show_scores()
функція для навчання. Після навчання нам потрібно зареєструвати модель і зберегти її артефакти. Ми використовуємо mlflow.sklearn.log_model()
робити так.
Перед розгортанням ми дивимося на результати експерименту та вибираємо два експерименти (один для біграми, а інший для біграми з TF-IDF) для порівняння. У нашому випадку використання друга модель, навчена біграмним TF-IDF, працювала трохи краще, тому ми вибираємо цю модель для розгортання. Після реєстрації моделі ми розгортаємо модель, змінюючи стадію моделі на виробничу. Ми можемо досягти цього в інтерфейсі користувача MLflow або в коді за допомогою transition_model_version_stage()
.
Розгорніть і протестуйте модель як кінцеву точку SageMaker
Перш ніж розгорнути навчену модель, нам потрібно створити контейнер Docker для розміщення моделі в SageMaker. Ми робимо це, виконуючи просту команду MLflow, яка створює контейнер і переміщує до нього Реєстр контейнерів Amazon Elastic (Amazon ECR) у нашому обліковому записі AWS.
Тепер ми можемо знайти URI зображення на консолі Amazon ECR. Ми передаємо URI зображення як image_url
параметр і використання DEPLOYMENT_MODE_CREATE
для параметра режиму, якщо це нове розгортання. Якщо ви оновлюєте наявну кінцеву точку новою версією, використовуйте DEPLOYMENT_MODE_REPLACE
.
Щоб перевірити кінцеву точку SageMaker, ми створюємо функцію, яка приймає ім’я кінцевої точки та вхідні дані як свої параметри.
Висновок
У цій публікації ми показали вам, як використовувати Ground Truth для позначення необробленого набору даних, а також використовувати позначені дані для навчання простого лінійного класифікатора за допомогою Scikit-learn. У цьому прикладі ми використовуємо MLflow для відстеження гіперпараметрів і показників, реєстрації моделі виробничого рівня та розгортання навченої моделі в SageMaker як кінцевої точки. Поряд із Databricks для обробки даних ви можете автоматизувати весь цей варіант використання, щоб у міру введення нових даних їх можна було позначати та обробляти в моделі. Автоматизуючи ці конвеєри та моделі, групи з вивчення даних можуть зосередитися на нових варіантах використання та отримати більше інформації, замість того, щоб витрачати свій час на повсякденне оновлення даних.
Щоб почати, перегляньте Використовуйте Amazon SageMaker Ground Truth для маркування даних і зареєструйтеся на а 14-денна безкоштовна пробна версія Databricks на AWS. Щоб дізнатися більше про те, як Databricks інтегрується з SageMaker, а також іншими службами AWS, як-от Клей AWS та Амазонська червона змінаНа сайті Databricks на AWS.
Крім того, ознайомтеся з такими ресурсами, які використовуються в цій публікації:
Використовуйте наступне ноутбук щоб розпочати роботу.
Про авторів
Румі Олсен є архітектором рішень у партнерській програмі AWS. На поточній посаді вона спеціалізується на безсерверних і машинних рішеннях, а також має досвід роботи в технологіях обробки природної мови. Більшість свого вільного часу вона проводить зі своєю дочкою, досліджуючи природу тихоокеанського північного заходу.
Ігор Алексєєв — архітектор партнерських рішень в AWS в області даних та аналітики. Ігор працює зі стратегічними партнерами, допомагаючи їм створювати складні архітектури, оптимізовані для AWS. Перед тим як приєднатися до AWS як архітектор даних/рішень, він реалізував багато проектів у сфері великих даних, включаючи кілька озер даних в екосистемі Hadoop. Як інженер з обробки даних, він брав участь у застосуванні AI/ML для виявлення шахрайства та автоматизації офісу. Проекти Ігоря були в різних галузях, включаючи комунікації, фінанси, громадську безпеку, виробництво та охорону здоров’я. Раніше Ігор працював повним інженером/технічним керівником.
Насір Ахмед є старшим архітектором партнерських рішень у Databricks, який підтримує бізнес AWS. Naseer спеціалізується на сховищах даних, бізнес-аналітиці, розробці додатків, контейнерних, безсерверних, архітектурах машинного навчання на AWS. Він був визнаний МСП року 2021 року в Databricks і є затятим ентузіастом криптовалют.
- Coinsmart. Найкраща в Європі біржа біткойн та криптовалют.
- Платоблокчейн. Web3 Metaverse Intelligence. Розширені знання. БЕЗКОШТОВНИЙ ДОСТУП.
- CryptoHawk. Альткойн Радар. Безкоштовне випробування.
- Джерело: https://aws.amazon.com/blogs/machine-learning/build-an-mlops-sentiment-analysis-pipeline-using-amazon-sagemaker-ground-truth-and-databricks-mlflow/
- "
- 100
- 2021
- 3d
- МЕНЮ
- рахунки
- точний
- доповнення
- алгоритм
- ВСІ
- Amazon
- аналіз
- аналітика
- додаток
- Розробка додатків
- Застосування
- підхід
- аудіо
- автоматичний
- Автоматизація
- доступний
- AWS
- фон
- основа
- Великий даних
- будувати
- Створюємо
- Будує
- вбудований
- бізнес
- бізнес-аналітика
- автомобіль
- випадків
- Категорія
- Вибирати
- класифікація
- код
- збір
- зв'язку
- комплекс
- Консоль
- Контейнер
- містить
- витрати
- створений
- створення
- крипто
- Поточний
- виготовлений на замовлення
- дані
- наука про дані
- глибше
- розгортання
- розгортання
- розгортання
- Виявлення
- розвиненою
- розробка
- важкий
- розподіл
- Docker
- документація
- Ні
- управляти
- легко
- екосистема
- включіть
- Кінцева точка
- інженер
- істотний
- оцінка
- приклад
- експеримент
- риси
- Поля
- в кінці кінців
- фінансування
- відповідати
- Сфокусувати
- після
- формат
- шахрайство
- Безкоштовна
- Повний
- функція
- породжувати
- мета
- буде
- охорона здоров'я
- Високий
- дуже
- Як
- How To
- HTTPS
- людина
- Людей
- Сотні
- Ідентифікація
- ідентифікувати
- зображення
- реалізовані
- У тому числі
- промисловості
- вхід
- розуміння
- Інтелект
- залучений
- IT
- робота
- Джобс
- ключ
- маркування
- етикетки
- праця
- мова
- вести
- УЧИТЬСЯ
- вивчення
- рівень
- бібліотека
- зв'язку
- загрузка
- машина
- навчання за допомогою машини
- made
- РОБОТИ
- вдалося
- управління
- управління
- вручну
- виробництво
- Матриця
- вимір
- Метрика
- змішаний
- ML
- модель
- Моделі
- монітор
- більше
- найбільш
- рухатися
- Природний
- природа
- ноутбук
- номер
- Пропозиції
- порядок
- організації
- Інше
- Тихий океан
- партнер
- партнери
- продуктивність
- людина
- платформа
- точка
- позитивний
- Проблема
- процес
- Production
- програма
- проектів
- забезпечувати
- громадськість
- публікувати
- Сировина
- реального часу
- облік
- реєструвати
- зареєстрований
- доречний
- вимагається
- ресурси
- результати
- огляд
- Відгуки
- прогін
- біг
- Безпека
- наука
- настрій
- Без сервера
- обслуговування
- Послуги
- комплект
- установка
- Короткий
- простий
- So
- рішення
- Рішення
- ВИРІШИТИ
- спеціалізується
- Витрати
- стек
- Стажування
- старт
- почалася
- статистичний
- зберігання
- Стратегічний
- підтримка
- Підтримуючий
- Мета
- завдання
- команда
- Технології
- тест
- через
- час
- знак
- інструмент
- трек
- Навчання
- Перетворення
- суд
- навчальні посібники
- ui
- кінцевий
- розкрити
- Updates
- використання
- зазвичай
- значення
- різноманітність
- Відео
- вид
- Чи
- без
- Work
- працював
- працює
- рік