Зміст[Сховати][Показати]
- 1. Що ви маєте на увазі під MLOps?
- 2. Чим відрізняються один від одного спеціалісти з обробки даних, інженери з обробки даних та інженери з машинного навчання?
- 3. Що відрізняє MLOps від ModelOps і AIOps?
- 4. Чи можете ви розповісти мені про деякі переваги MLOps?
- 5. Чи можете ви сказати мені компоненти MLOps?
- 6. Які ризики пов’язані з використанням даних?
- 7. Чи можете ви пояснити, що таке дрейф моделі?
- 8. Скільки різних способів можна застосовувати MLO, на вашу думку?
- 9. Що відрізняє статичне розгортання від динамічного?
- 10. Які методи виробничого тестування вам відомі?
- 11. Чим потокова обробка відрізняється від пакетної?
- 12. Що ви маєте на увазі під тренуванням перекосу подачі?
- 13. Що ви маєте на увазі під реєстром моделей?
- 14. Чи можете ви детальніше розповісти про переваги модельного реєстру?
- 15. Чи можете ви пояснити, як працює техніка Чемпіон-Челленджер?
- 16. Опишіть прикладні програми на рівні підприємства життєвого циклу MLOps?
- Висновок
Компанії все частіше використовують такі новітні технології, як штучний інтелект (AI) і машинне навчання (ML), щоб збільшити доступ громадськості до інформації та послуг.
Ці технології все частіше використовуються в різних секторах, включаючи банківську справу, фінанси, роздрібну торгівлю, виробництво та навіть охорону здоров’я.
Вчені з обробки даних, інженери з машинного навчання та інженери зі штучного інтелекту користуються попитом у все більшій кількості компаній.
Знання можливого навчання за допомогою машини Питання для співбесіди, які можуть поставити вам менеджери з найму та рекрутери, важливі, якщо ви хочете працювати в сферах ML або MLOps.
Ви можете дізнатися, як відповідати на деякі питання співбесіди MLOps у цій публікації, коли ви працюєте над отриманням роботи своєї мрії.
1. Що ви маєте на увазі під MLOps?
Тема введення в дію моделей машинного навчання знаходиться в центрі уваги MLOps, також відомих як операції машинного навчання, галузі, що розвивається в більш масштабній арені AI/DS/ML.
Основна мета підходу та культури програмної інженерії, відомої як MLOps, полягає в інтеграції створення моделей машинного навчання/науки про дані та їх подальшої операційної діяльності (Ops).
Звичайні DevOps і MLO мають певну схожість, однак MLO також значно відрізняються від традиційних DevOps.
MLOps додає новий рівень складності, зосереджуючись на даних, тоді як DevOps головним чином зосереджується на введенні в дію коду та випусків програмного забезпечення, які не можуть мати статус.
Поєднання ML, Data і Ops дає загальну назву MLOps (машинне навчання, інженерія даних і DevOps).
2. Чим відрізняються один від одного спеціалісти з обробки даних, інженери з обробки даних та інженери з машинного навчання?
На мій погляд, це залежить від фірми. Середовище для транспортування та перетворення даних, а також їх зберігання створюється інженерами даних.
Науковці даних є експертами у використанні наукових і статистичних методів для аналізу даних і висновків, зокрема прогнозування майбутньої поведінки на основі поточних тенденцій.
Кілька років тому інженери-програмісти вивчали операції та управління інфраструктурою розгортання. Команди операцій, з іншого боку, вивчали розробку, використовуючи інфраструктуру як код. Позиція DevOps була створена цими двома потоками.
MLOps належить до тієї ж категорії, що й Вчений з даних і інженер даних. Інженери даних отримують знання про інфраструктуру, необхідну для підтримки життєвих циклів моделі та створення конвеєрів для постійного навчання.
Фахівці з обробки даних прагнуть розвинути свої можливості розгортання моделей і підрахунку балів.
Конвеєр даних виробничого рівня створюють інженери ML з використанням інфраструктури, яка перетворює необроблені дані на вхідні дані, необхідні для наукової моделі даних, розміщує та запускає модель, а також виводить оцінений набір даних у наступні системи.
І інженери з даних, і науковці з обробки даних можуть стати інженерами ML.
3. Що відрізняє MLOps від ModelOps і AIOps?
При побудові впритул алгоритми машинного навчання, MLOps — це програма DevOps, яка включає збір даних, попередню обробку даних, створення моделі, розгортання моделі у виробництві, моніторинг моделі у виробництві та періодичне оновлення моделі.
Використання DevOps для обробки всієї реалізації будь-яких алгоритмів, таких як моделі на основі правил, відоме як ModelOps.
AI Ops використовує принципи DevOps для створення програм ШІ з нуля.
4. Чи можете ви розповісти мені про деякі переваги MLOps?
- Науковці даних і розробники MLOps можуть швидко повторити випробування, щоб переконатися, що моделі навчені та оцінені належним чином, оскільки MLOps допомагає автоматизувати всі або більшість завдань/кроків у MDLC (життєвому циклі розробки моделі). Додатково дозволи версії даних і моделей.
- Втілення ідей MLOps на практиці дає інженерам з обробки даних і науковцям з даних необмежений доступ до культивованих і підготовлених наборів даних, що експоненціально прискорює розробку моделей.
- Фахівці з даних зможуть повернутися до моделі, яка працювала краще, якщо поточна ітерація не виправдає очікувань, завдяки можливості версії моделей і наборів даних, що значно покращить аудиторський слід моделі.
- Оскільки методи MLOps значною мірою покладаються на DevOps, вони також включають низку концепцій CI/CD, що покращує якість і надійність коду.
5. Чи можете ви сказати мені компоненти MLOps?
дизайн: MLO значною мірою включає дизайнерське мислення. Починаючи з характеру проблеми, перевірки гіпотез, архітектури та розгортання
Будівництво моделі: Тестування та валідація моделі є частиною цього кроку разом із конвеєрами обробки даних та експериментами для створення найкращих систем машинного навчання.
операції: модель має бути реалізована як частина операцій і постійно перевірятися та оцінюватися. Потім процеси CI/CD відстежуються та запускаються за допомогою інструменту оркестровки.
6. Які ризики пов’язані з використанням даних?
- Важко розширити модель на всю компанію.
- Без попередження модель вимикається і перестає функціонувати.
- Здебільшого точність моделей з часом погіршується.
- Модель робить неточні прогнози на основі конкретного спостереження, яке не може бути досліджено далі.
- Науковці даних також повинні підтримувати моделі, але вони дорогі.
- MLO можна використовувати для зменшення цих ризиків.
7. Чи можете ви пояснити, що таке дрейф моделі?
Коли продуктивність фази висновку моделі (з використанням даних реального світу) погіршується порівняно з продуктивністю фази навчання, це називається дрейфом моделі, також відомим як дрейф ідеї (з використанням історичних, позначених даних).
Продуктивність моделі спотворена порівняно з фазами навчання та обслуговування, звідси й назва «навчання/подача».
Багато факторів, зокрема:
- Фундаментальний спосіб поширення даних змінився.
- Навчання було зосереджено на невеликій кількості категорій, однак екологічні зміни, які щойно відбулися, додали ще одну сферу.
- У складнощах НЛП дані реального світу містять непропорційно більшу кількість жетонів, ніж навчальні дані.
- Неочікувані випадки, як-от прогнозується, що модель, побудована на даних до COVID-19, буде значно гірше працювати на даних, зібраних під час епідемії COVID-XNUMX.
Для виявлення дрейфу моделі завжди потрібен постійний моніторинг продуктивності моделі.
Майже завжди потрібне перепідготовка моделі як засіб виправлення, коли спостерігається постійне зниження продуктивності моделі; необхідно визначити причину зниження та застосувати відповідні процедури лікування.
8. Скільки різних способів можна застосовувати MLO, на вашу думку?
Є три способи застосування MLO на практиці:
MLOps рівень 0 (ручний процес): на цьому рівні всі кроки, включаючи підготовку даних, аналіз і навчання, виконуються вручну. Кожен етап необхідно виконувати вручну, як і перехід від одного до наступного.
Основна передумова полягає в тому, що ваша команда з обробки даних керує лише невеликою кількістю моделей, які не оновлюються часто.
Як наслідок, не існує безперервної інтеграції (CI) або безперервного розгортання (CD), і тестування коду зазвичай інтегровано у виконання сценарію чи блокнота, причому розгортання відбувається в мікросервісі з REST API.
MLOps рівень 1 (автоматизація конвеєра ML): шляхом автоматизації процесу машинного навчання метою є безперервне навчання моделі (CT). Таким чином ви можете забезпечити безперервне надання послуг прогнозування моделі.
Наше розгортання цілого конвеєра навчання гарантує, що модель автоматично навчається у виробництві з використанням нових даних на основі активних тригерів конвеєра.
MLOps рівень 2 (автоматизація конвеєра CI/CD): це на один крок вище рівня MLOps. Потужна автоматизована система CI/CD потрібна, якщо ви хочете швидко й надійно оновлювати конвеєри у виробництві:
- Ви створюєте вихідний код і виконуєте численні тести на етапі CI. Пакунки, виконувані файли та артефакти є результатами етапу, які будуть розгорнуті пізніше.
- Артефакти, створені етапом CI, розгортаються в цільовому середовищі під час кроку CD. Розгорнутий конвеєр із переглянутою реалізацією моделі є результатом етапу.
- Перед тим, як конвеєр розпочне нову ітерацію експерименту, спеціалісти з обробки даних ще мають виконати етап аналізу даних і моделі вручну.
9. Що відрізняє статичне розгортання від динамічного?
Модель навчена офлайн Статичне розгортання. Іншими словами, ми тренуємо модель точно один раз, а потім використовуємо її певний час. Після локального навчання модель зберігається та надсилається на сервер для використання для створення прогнозів у реальному часі.
Потім модель розповсюджується як програмне забезпечення, яке можна встановити. програма, яка дозволяє групову оцінку запитів, як ілюстрація.
Модель проходить онлайн навчання Динамічне розгортання. Тобто нові дані постійно додаються до системи, а модель постійно оновлюється для їх урахування.
У результаті ви можете робити прогнози за допомогою сервера на вимогу. Після цього модель вводиться в експлуатацію, надаючи її як кінцеву точку API, яка реагує на запити користувачів за допомогою веб-фреймворку, наприклад Flask або FastAPI.
10. Які методи виробничого тестування вам відомі?
Пакетне тестування: Проводячи тестування в умовах, відмінних від середовища навчання, він перевіряє модель. Використовуючи вибрані показники, такі як точність, RMSE тощо, пакетне тестування виконується на групі зразків даних для перевірки висновку моделі.
Пакетне тестування можна проводити на різних обчислювальних платформах, таких як тестовий сервер, віддалений сервер або хмара. Як правило, модель надається як серіалізований файл, який завантажується як об’єкт і виводиться з тестових даних.
A / B тестування: часто використовується для аналізу маркетингових кампаній, а також для розробки сервісів (веб-сайтів, мобільних додатків тощо).
Залежно від компанії чи операцій статистичні підходи використовуються для аналізу результатів A/B-тестування, щоб вирішити, яка модель працюватиме краще у виробництві. Зазвичай A/B-тестування проводиться таким чином:
- Дані в реальному часі або в режимі реального часу поділяються або сегментуються на два набори, набір A і набір B.
- Дані набору A надсилаються до застарілої моделі, тоді як дані набору B надсилаються до оновленої моделі.
- Залежно від бізнес-випадку або процесів можна використовувати кілька статистичних підходів для оцінки ефективності моделі (наприклад, точність, точність тощо), щоб визначити, чи нова модель (модель B) перевершує стару модель (модель A).
- Потім ми перевіряємо статистичну гіпотезу: нульова гіпотеза говорить, що нова модель не впливає на середнє значення бізнес-індикаторів, які відстежуються. Відповідно до альтернативної гіпотези, нова модель збільшує середнє значення показників моніторингу бізнесу.
- Нарешті, ми оцінюємо, чи нова модель призводить до значного покращення певних бізнес-KPI.
Тіньовий або сценічний тест: модель оцінюється в дублікаті виробничого середовища перед використанням у виробничому середовищі (постановне середовище).
Це має вирішальне значення для визначення продуктивності моделі з даними в реальному часі та перевірки стійкості моделі. виконується шляхом отримання тих самих даних, що й конвеєр виробництва, і доставки розробленої гілки або моделі для тестування на проміжний сервер.
Єдиним недоліком є те, що жодні бізнес-вибори не будуть зроблені на проміжному сервері або видимі для кінцевих користувачів у результаті гілки розробки.
Стійкість і продуктивність моделі буде оцінено статистично за результатами проміжного середовища з використанням відповідних показників.
11. Чим потокова обробка відрізняється від пакетної?
Ми можемо маніпулювати характеристиками, які ми використовуємо для створення наших прогнозів у реальному часі, використовуючи два методи обробки: пакетний і потік.
Пакетний процес характеристики з попереднього моменту часу для конкретного об’єкта, який потім використовується для створення прогнозів у реальному часі.
- Тут ми можемо виконувати інтенсивні обчислення функцій в автономному режимі та підготувати дані для швидкого висновку.
- Особливості, однак, вік, оскільки вони були визначені в минулому. Це може бути серйозним недоліком, якщо ваш прогноз базується на нещодавніх подіях. (Наприклад, виявлення шахрайських транзакцій якнайшвидше.)
З функціями потокової передачі майже в реальному часі для конкретного об’єкта висновок виконується в потоковій обробці на заданому наборі вхідних даних.
- Тут, надаючи моделі функції потокового передавання в режимі реального часу, ми можемо отримати точніші прогнози.
- Однак для обробки потоків і підтримки потоків даних потрібна додаткова інфраструктура (Kafka, Kinesis тощо). (Apache Flink, Beam тощо)
12. Що ви маєте на увазі під тренуванням перекосу подачі?
Розбіжність між продуктивністю під час подачі та продуктивністю під час тренування відома як перекіс тренування-подачі. Цей перекіс може бути викликаний наступними факторами:
- Різниця в тому, як ви обробляєте дані між конвеєрами для обслуговування та навчання.
- Перенесення даних від вашого навчання до ваших послуг.
- Канал зворотного зв’язку між вашим алгоритмом і моделлю.
13. Що ви маєте на увазі під реєстром моделей?
Реєстр моделей — це центральне сховище, де творці моделей можуть публікувати моделі, придатні для використання у виробництві.
Розробники можуть співпрацювати з іншими командами та зацікавленими сторонами, щоб керувати терміном служби всіх моделей усередині підприємства за допомогою реєстру. Спеціаліст з даних може завантажити навчені моделі в реєстр моделей.
Моделі готуються до тестування, перевірки та розгортання у виробництві після того, як вони будуть у реєстрі. Крім того, навчені моделі зберігаються в реєстрах моделей для швидкого доступу будь-якої інтегрованої програми чи служби.
Щоб перевірити, оцінити та розгорнути модель у виробництві, розробники програмного забезпечення а рецензенти можуть швидко розпізнати та вибрати лише найкращу версію навчених моделей (на основі критеріїв оцінки).
14. Чи можете ви детальніше розповісти про переваги модельного реєстру?
Нижче наведено кілька способів, за допомогою яких реєстр моделі оптимізує керування життєвим циклом моделі:
- Щоб спростити розгортання, збережіть вимоги до середовища виконання та метадані для навчених моделей.
- Ваші навчені, розгорнуті та виведені з експлуатації моделі слід реєструвати, відстежувати та створювати версії в централізованому репозиторії з можливістю пошуку.
- Створюйте автоматизовані конвеєри, які забезпечують безперервну доставку, навчання та інтеграцію вашої виробничої моделі.
- Порівняйте нещодавно навчені моделі (або моделі-претенденти) у середовищі демонстрації з моделями, які зараз працюють у виробництві (моделі-переможці).
15. Чи можете ви пояснити, як працює техніка Чемпіон-Челленджер?
За допомогою техніки Champion Challenger можна тестувати різні робочі рішення у виробництві. Ви, мабуть, чули про A/B тестування в контексті маркетингу.
Наприклад, ви можете написати два окремі рядки теми та розподілити їх випадковим чином серед вашої цільової демографічної групи, щоб максимізувати відсоток відкритих для кампанії електронної пошти.
Система реєструє продуктивність електронної пошти (тобто дію відкриття електронної пошти) щодо її теми, дозволяючи вам порівняти швидкість відкриття кожної теми, щоб визначити, яка з них є найефективнішою.
У цьому плані Champion-Challenger можна порівняти з тестуванням A/B. Ви можете використовувати логіку прийняття рішень, щоб оцінити кожен результат і вибрати найефективніший, експериментуючи з різними методами, щоб зробити вибір.
Найуспішніша модель співвідноситься з чемпіоном. Перший претендент і відповідний список претендентів — це все, що присутнє на першій фазі виконання замість чемпіона.
Чемпіон вибирається системою для подальшого виконання кроку завдання.
Претенденти протиставлені один одному. Потім нового чемпіона визначає претендент, який показує найкращі результати.
Завдання, пов’язані з процесом порівняння чемпіона та претендента, перераховані нижче більш детально:
- Оцінка кожної з моделей-конкурентів.
- Оцінювання підсумкових балів.
- Порівняння результатів оцінювання для визначення переможного претендента.
- Додавання свіжого чемпіона в архів
16. Опишіть прикладні програми на рівні підприємства життєвого циклу MLOps?
Нам потрібно припинити розглядати машинне навчання лише як ітеративний експеримент, щоб моделі машинного навчання почали працювати. MLOps — це поєднання розробки програмного забезпечення з машинним навчанням.
Готовий результат слід уявити таким. Тому код для технологічного продукту має бути перевіреним, функціональним і модульним.
MLOps має тривалість життя, яку можна порівняти зі звичайним процесом машинного навчання, за винятком того, що модель зберігається в процесі до виробництва.
Потім інженери MLOps стежать за цим, щоб переконатися, що якість моделі у виробництві відповідає запланованому.
Ось кілька варіантів використання кількох технологій MLOps:
- Модельні реєстри: це те, що здається. Більші групи зберігають і відстежують моделі версій у реєстрах моделей. Є можливість навіть повернутися до попередньої версії.
- Сховище функцій: коли ви маєте справу з більшими наборами даних, можуть існувати різні версії аналітичних наборів даних і підмножин для конкретних завдань. Сховище функцій — це передовий, зручний спосіб використовувати роботу з підготовки даних із попередніх запусків або інших команд.
- Зберігання метаданих. Для успішного використання неструктурованих даних, таких як зображення та текстові дані, дуже важливо правильно відстежувати метадані протягом усього виробництва.
Висновок
Важливо мати на увазі, що в більшості випадків інтерв’юер шукає систему, тоді як кандидат шукає рішення.
Перше залежить від ваших технічних навичок, тоді як друге стосується методу, який ви використовуєте, щоб продемонструвати свою компетентність.
Відповідаючи на запитання співбесіди MLOps, вам слід виконати кілька процедур, щоб допомогти інтерв’юеру краще зрозуміти, як ви збираєтеся оцінювати та вирішувати наявну проблему.
Їх концентрація більше на неправильній реакції, ніж на правильній. Рішення розповідає історію, а ваша система є найкращою ілюстрацією ваших знань і здатності до спілкування.
залишити коментар