Словник для ML Experiment Tracking і MLOps

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

Праця в інженерії машинного навчання означає життя у світі швидких експериментів, контролю версій даних і моделей, а також складних конвеєрів розгортання. Якщо ви співпрацюєте з англомовними командами або читаєте документацію з таких інструментів, як MLflow, Weights & Biases або DVC, то точність словникового запасу не є обов’ язковою — вона є обов’ язковою. Цей посібник містить основні англійські терміни, що використовуються у відстеженні експериментів з ML і MLOps, а також реалістичні приклади того, як професіонали використовують їх у розмовах, перегляді коду і проектуванні документів.

Що таке мовлення і чому воно важливе?

MLOps (Machine Learning Operations) відноситься до набору практик, які поєднують машинне навчання, DevOps і інженерію даних для розгортання і підтримки систем ML надійно у виробництві. Поле має свій власний щільний словник, який поєднує традиційні терміни програмного забезпечення з термінологією статистики і науки про дані.

Коли член команди каже «ми повинні інструментувати цей запуск», вони не говорять про музичні інструменти — вони мають на увазі додавання коду відстеження до тренувального сценарію. Знання цих термінів допоможе вам безпечно брати участь у перегляді проектів, дискусіях і обговореннях архітектури.

Основні наукові праці: Методика аналізу

Експерименти і дослідження

У більшості систем відстеження ** експеримент ** є названою колекцією ** запусків **. ** Run ** — це одиничне виконання тренувального скрипту з певним набором параметрів.

“Я запустив три запуски сьогодні вранці з різними темпами навчання. Перевірте панель експерименту і порівняйте криві втрат підтвердження

** Run ID ** унікальним чином ідентифікує кожне виконання, роблячи його відтворюваним. Коли хтось запитує: « Чи можете ви поділитись ідентифікатором виконання для цієї бази даних? », вони хочуть мати змогу відтворити ваше точне середовище тренування.

Параметри, метрики та артефакти

Ці три концепції утворюють основу відстеження експериментів:

  • ** Параметри ** (або ** гіперпараметри **) — це вхідні дані для тренувального запуску — швидкість навчання, розмір партії, кількість епох.
  • ** Метрики ** — це результати, які ви вимірюєте під час тренування — точність, оцінка F1, захопленість, оцінка BLEU.
  • ** Артефакти ** — це файли, створені під час виконання — контрольні точки моделі, діаграми оцінки, матриці збою, експортовані файли ONNX.

«Записувати точність і відновлення як метрику, і завантажувати серіалізовану модель як артефакт в кінці кожної епохи»

Реєстр моделей

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

Серед типових стадій є Staging, Production і Archived. Команди ** підвищують ** модель з одного етапу до наступного після перевірки.

“Команда контролю якості підписала контракт на модель Challenger. Я підвищу його до Production в реєстрі і знищу поточного чемпіона»

Терміни чампион і challenger описують поточну розгорнуту модель проти кандидата на заміну - широко використовуваний шаблон в A / B тестуванні для моделей ML.

Ключовий словник: дані і версії трубопроводу

Контроль версій даних

** DVC ** (Data Version Control) і подібні інструменти поводяться з наборами даних як з кодом — кожна версія відстежується і відтворюється. Ключові фрази:

  • ** dvc push / pull ** — синхронізація даних з віддаленим сховищем
  • ** конвеєр даних ** — послідовність перетворень, які буде застосовано до необроблених даних перед їх тренуванням
  • ** feature store ** — централізоване сховище обчислюваних властивостей, які спільно використовуються моделями

“Перед тим, як почати тренування, завантажте останню версію набору даних з DVC. Ми оновили конвейер інженерних функцій минулого тижня і схема змінилася»

Провідні іноземні та вітчизняні видання

** Походження даних ** описує, звідки походять дані і як їх було перетворено. ** Провідність даних ** — це документована історія походження набору даних і кроків обробки. Ці терміни часто виникають в дискусіях про відповідність і відтворюваність.

“Команда аудиторів просить нас продемонструвати дані про походження для моделі виявлення шахрайства. Нам потрібно відстежити кожне перетворення від сирих журналів транзакцій до фінальної матриці функцій. “

Основні напрямки діяльності: розробка та впровадження програмного забезпечення

Модель послуг і висновків

Доступ до розгорнутої моделі здійснюється через сервер кінцевої точки обслуговування або сервер висновків. Ключовий словник включає:

  • ** онлайнове виведення ** (також ** виведення у реальному часі **) — передбачення, зроблені на окремих запитах з низькою затримкою
  • ** пакетне виведення ** — передбачення виконуються на великому наборі даних за запланованими інтервалами
  • ** затримка моделі ** — час між запитом і відповіддю на прогноз
  • ** пропускна здатність ** — кількість передбачень за секунду, які система може обробляти

«Команда продукту хоче суб-100 мс затримки для рекомендацій API. Нам може знадобитися квантувати модель або перейти на легшу архітектуру»

Виявлення дрейфу

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

“Ми бачимо дрейф характеристик на вхідному розподілі віку. Продукція, що випускається, молодша за наш тренувальний комплект. Ми повинні відновити перенавчання»

** Погіршення моделі ** — це зниження продуктивності моделі, яке виникає, коли дрейф не виправлено.

Ключовий словник: CI/CD для ML

MLOps адаптує традиційні ** CI/ CD ** (Continuous Integration / Continuous Deployment) для потоків роботи машинного навчання:

  • ** CT ** (Continuous Training) — автоматичне перенавчання моделей, коли надходять нові дані або продуктивність падає нижче порогу
  • ** ворота оцінки моделі ** — автоматизована перевірка, яку нова модель має пройти перед тим, як її можна буде перевести у виробничу версію
  • ** режим тіньового виконання ** — запуск нової моделі паралельно з виробничою моделлю, записування її прогнозів у журнал, але без їх показу користувачам

“Ми створили ворота для оцінки моделей в трубопроводі. Якщо AUC нової моделі впаде більше ніж на два відсоткові пункти нижче базисної лінії, розгортання буде автоматично заблоковано

Практичні фрази для зустрічей MLOps

Використовуйте ці фрази під час щоденних зустрічей, переглядів спринтів і обговорень проекту:

  • Експеримент відстежується в MLflow під експериментом fraud-detection-v2
  • «Ми повинні прикріпити версію набору даних, перш ніж ми розрізаємо гілку випуску.»
  • «Модель пройшла оцінку, але я хочу перегляд людьми, перш ніж ми підвищимо її до виробництва»
  • «Ми бачимо значний концептуальний дрейф — точність моделі щодо нових шахрайств з рахунками впала з 0,91 до 0,78 за останні два тижні»
  • «Давайте створимо перенавчання тригер на основі рухомого PSI балу на прибуткову функцію.»

** PSI ** (Індекс стабільності населення) є статистичною мірою того, наскільки розподіл змінився — звичайна метрика дрейфу у фінансовому ML.

Summary

Освоєння словника MLOps означає більше, ніж запам’ ятовування слів. Це означає розуміння ментальних моделей за ними: що моделі є версійним програмним забезпеченням, що дані мають походження, і що виробничі системи ML вимагають такої ж операційної строгості, як і будь-яка інша розподілена служба. Мова, якою користуються професіонали, відображає ці ідеї, і її використання точно сигналізує, що ви думаєте про машинне навчання правильно.

Наприклад, слово «навигація» означає «пересування по мережі»

Будьмо чесні, технічний жаргон може здатися непроникним, особливо коли ви новий в такій галузі, як операції машинного навчання (MLOps). Крім простого знання * того, що * щось є - як «гіперпараметричний набір» або «функціональний дрейф» - важливо розуміти * як * ефективно спілкуватися про це. Це місце, де нюансована фраза стає необхідною, особливо для не-рідних англомовних носіїв, які хочуть впевнено брати участь у професійних дискусіях і документації. Метою є не тільки передати інформацію; це для створення консенсусу, полегшення співпраці і забезпечення того, щоб всі були на одній сторінці - критичний елемент при роботі зі складними експериментами і розгортаннями.

Часто, виклик полягає не в самих технічних термінах, а в тому, як вони використовуються в контексті. Розгляньте це повідомлення Slack під час перегляду коду: « Ця PR вводить значну зміну в конвеєр даних; я хвилююся про потенційні каскадні ефекти, якщо ми не ретельно перевіримо нову функцію на відповідність існуючим метрикам ». Зауважте ретельну формулювання — « значна зміна », « потенційні каскадні ефекти » — це не просто говорить « це щось змінює ». Це визнання * ризику * і спонукання до подальшого дослідження. Аналогічно, опис PR може звучати так: «Вреалізована A / B-тестування для потоку користувача. Моніторинг ключових показників залучення (частота переходів, час до першої дії) для оцінки впливу. » Знову ж таки, акцент робиться на моніторингу * і оцінці *, а не тільки на впровадженні рамок.

Поширена проблема виникає при обговоренні невдач експериментів — легко впасти в мовлення звинувачень. Замість того, щоб сказати «Модель зазнала невдачі через погані дані», більш конструктивний підхід буде таким: «Експеримент показав високу дисперсію під час тренування, що свідчить про потенційні проблеми з розподілом вхідних даних. Додаткове дослідження якості даних є заслугою.” Це фокусується на * спостереження * і * рекомендація *, уникаючи потенційно обвинувачувальних фраз. Ключовим моментом є обговорення вимірюваних результатів і реальних кроків, а не приписування вини.

Нарешті, при документуванні експериментів, точність в термінології має величезне значення. Наприклад, замість того, щоб сказати «модель працювала погано», кращим описом було б: «Модель досягла F1-оцінки 0,65 на підтверджуючий набір, що вказує на субоптимальну роботу відносно нашої мети 0,8». Цей рівень деталізації є критичним для відтворюваності і дозволяє іншим зрозуміти контекст результатів.

Ось приклад, який показує, як використовувати mlflow для запису метрики у журнал:

import mlflow

mlflow.log_metric("f1_score", 0.65)

Ця проста команда показує, наскільки легко можна записувати кількісні дані, які потім стають частиною документованої історії експерименту — чогось, що потребує чіткої і точної мови, щоб повністю пояснити.

Поширені запитання

Про що ця стаття "Словник для ML Experiment Tracking і MLOps"?

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

Чи безкоштовна ця стаття?

Так. Усі статті на CoderSlingo, включно з цією, доступні безкоштовно без реєстрації.

Скільки часу займає читання "Словник для ML Experiment Tracking і MLOps"?

Приблизно 8 min.