Прибуток:
- Здатність вибирати та інтерпретувати показники класифікації та регресії (матриця плутанини, точність/запам’ятовування/F1, MAE/RMSE/R²) відповідно до мети роботи
- Здатність виявити перенавчання шляхом порівняння результатів навчання та тестів і отримати надійну продуктивність за допомогою перехресної перевірки
- Можливість оцінити, чи кожна модель додає реальну цінність, порівнюючи її з базовою лінією
Легко налаштувати модель; Важко чесно оцінити, чи це дійсно працює. Предметом цього розділу є найважливіша навичка спеціаліста з обробки даних: оцінка моделі за допомогою правильних показників, досягнення надійних прогнозних показників і вловлювання найпідступнішої пастки: надмірного навчання (запам’ятовування). AI обчислює, інтерпретує та порівнює показники; але людина сама вирішує, який показник підходить для вашого бізнесу та чи є модель «достатньо хорошою». Команда, яка розглядає неправильну метрику, може помилково вважати погану модель місяцями «успіхом».
Чому недостатньо точності: матриця плутанини
Перший показник, який спадає на думку при класифікації, це точність (точність — загальне співвідношення правильних прогнозів). Але, як ми побачили в розділі 6, точність вводить в оману незбалансованими даними. Кращим початком є матриця плутанини — таблиця, яка розділяє прогнози на чотири бункери:
- Справжній позитивний результат (TP): ми назвали підробкою те, що насправді є підробкою. (добре)
- Істинно негативно (TN): Ми сказали, що справді чисто. (добре)
- Помилковий результат (FP): ми помилково сказали, що чистий був підробкою. (помилкова тривога)
- Помилково негативний (FN): Ми пропустили підробку та назвали її чистою. (Пропущена загроза)
Два ключові показники випливають із цих чотирьох блоків. Точність: «Скільки того, що я називаю підробкою, насправді є підробкою?» — важливо, якщо витрати на помилкову тривогу високі. Делікатність (пригадування англійською): «Скільки справжніх підробок я спіймав?» — важливо, коли пропуск загрози коштує дорого. Ці два часто суперечать одне одному: якщо ви знижуєте поріг і частіше говорите «фальшивка», пригадування збільшується, але точність зменшується. Оцінка F1 є збалансованим середнім (гармонійним середнім) цих двох.
Увага: відповідь на питання «Яка метрика важлива» є бізнес-рішенням, а не технічним. Пропущення випадку (низька пам’ятність) під час скринінгу раку є катастрофічним; Надсилати важливий електронний лист до спаму (низька точність) у фільтрі спаму неприємно. Вартість визначає показник.
Регресійні показники
Якщо результатом є числа, використовуються інші показники. MAE (середня абсолютна похибка): наскільки оцінки відхиляються від фактичного середнього значення в тій самій одиниці (наприклад, «ми помиляємося в середньому на 4200 TL»). RMSE (середньоквадратична помилка): більш суворо карає великі помилки та чутливий до викидів. R² (R-квадрат — коефіцієнт детермінації): яку частину мінливості цілі пояснює модель (близько до 1 — це добре, 0 — це так само погано, як і прогнозування середнього, негатив — ще гірше).
Найпідступніша пастка: перенавчання
Переобладнання — коли модель запам’ятовує навчальні дані, але зазнає збою на нових даних — є найпоширенішою помилкою в науці про дані. Симптом очевидний: модель чудова на навчальному наборі (98%), погана на тестовому наборі (72%). Модель запам’ятала шум цього конкретного зразка, а не фактичний шаблон у даних. Існує й протилежне: недостатнє пристосування — модель погана як для навчання, так і для тестування, оскільки її занадто просто зафіксувати.
Способи боротьби з перенавчанням: спрощення моделі, більше даних, регулярізація — математичний гальмо, який не дає моделі стати надто складною — і, що найважливіше, перехресна перевірка.
Перехресна перевірка: не довіряйте одній панелі
Одна тренувальна/тестова капсула може пощастити чи не пощастити; Ви можете отримати високі оцінки за набір тестів лише тому, що цей зразок легкий. Перехресна перевірка (скорочено CV) вирішує це. Найпоширенішою формою є k-кратне CV: дані поділені на k частин (наприклад, 5); У кожному раунді одна частина тестова, а решта тренувальна; це випадає 5 разів, і 5 балів усереднюються. Тож ви побачите, що продуктивність базується на середньому значенні кількох розподілів, а не на одному щасливому розподілі. Розподіл балів також інформативний: дуже мінливі бали (85% на одному поверсі, 62% на іншому) вказують на те, що модель нестабільна.
Нормальна k-кратність не використовується в часових рядах (витікає майбутнє); Замість цього ви виконуєте «передовий ланцюжок» (поділ часових рядів): завжди тренуєтеся з минулим і перевіряєте майбутнє.
метрика
Тип проблеми
Коли це має значення?
Точність
Класифікація
Якщо класи збалансовані
Точність
Класифікація
Помилкова тривога коштує дорого
Чутливість (відкликання)
Класифікація
Якщо дорого пропустити
F1
Класифікація
Якщо потрібен баланс
MAE
регресія
Інтерпретована помилка
RMSE
регресія
Якщо великі помилки критичні
R²
регресія
пояснювальна сила
три міні-чохла
Випадок 1 — Ілюзія високої точності. Одна модель шахрайства показала 99,2% точності, і команда відсвяткувала це. Дивлячись на матрицю плутанини, реальний: рівень підробок у даних становив 0,8%; модель майже не ловила підробок, просто говорила «все ясно». Відкликання склало 6%. Урок: дивіться на показники, а не на точність.
Випадок 2 — приховане перенавчання. Одна команда доставила та збільшила XGBoost до 97% під час навчального набору. Тестовий набір був 69%, але ніхто не дивився. Модель розвалилася у виробництві. Якби була проведена перехресна перевірка, велика різниця між складками (перенавчання) була б помітна з самого початку. Урок: довіряйте CV і тестовим результатам, а не освітнім балам.
Випадок 3 — Лаки спліт. Один аналітик був у захваті, отримавши 88% за один розподіл. Коли його колега робив 5-кратне резюме, результати були 88%, 71%, 83%, 64%, 79% — середній показник 77%, але він дуже мінливий. Модель була нестійкою; Єдине відділення ввело в оману. Урок: дивіться на середнє значення CV і розподіл, а не на окремий бак.
Чотири шаблони, які можна копіювати
1) Повний класифікаційний звіт:
У мене є навчена модель і тестовий набір. Створіть: матрицю плутанини, точність, відкликання, F1 (для кожного класу) і кількість підтримки. Я роблю висновок, але це залежить від мене: я скажу вам, який показник важливий. Зауважте, що незбалансовані дані можуть вводити в оману точність.
2) Контроль наднавчання:
Роздрукувати результати моєї моделі в наборах НАВЧАННЯ та ТЕСТУ поруч. Обчисліть різницю між ними та попередьте, оскільки велика різниця є ознакою надмірного навчання. Якщо різниця велика, запропонуйте регулярізацію або спрощення.
3) Перехресна перевірка:
Виконайте 5-кратну перехресну перевірку (для стратифікації, класифікації). Надрукуйте бал, середнє значення та стандартне відхилення кожного згину. Якщо показники дуже мінливі (високий std), це означає, що модель нестабільна. Використовуйте конвеєри, щоб трансформації вивчалися лише з навчальної частини на кожному шарі.
4) Базове порівняння:
Поставте метрику моєї моделі поруч із базовою лінією DummyClassifier. Модель значно перевищує базову лінію? Якщо він не проходить, дайте зрозуміти, що модель не додає реальної цінності.
Слабка підказка / Сильна підказка
Слабка підказка:
Чи хороша моя модель?
«Добре» не визначено; Незрозуміло, яка метрика, який поріг, яка базова лінія. ШІ може дати єдине число точності та ввести в оману.
Потужна підказка:
Ваша роль: асистент оцінювання. Класифікація, незбалансовані дані (12% позитивних). Пріоритет: відкликання (не пропускаючи позитиву). Завдання: (1) матриця плутанини, (2) точність/запам’ятовування/F1, (3) 5-кратне стратифіковане середнє CV та стандартне значення, (4) базове порівняння DummyClassifier. Зосередьтеся на запам’ятовуванні та базовій різниці, а не на точності. Коментуйте, але я приймаю остаточне рішення.
Тут пріоритет метрики, CV і базова умова чіткі.
Поширені помилки
- Довіра до точності незбалансованих даних. 99% точність може взагалі не охоплювати клас меншості; Подивіться на матрицю плутанини.
- Просто дивлячись на ваш рівень освіти. Висока освіта, низький бал на тесті - це перенавчання; Завжди порівнюйте два бали.
- Покладаючись на одне відділення. Щасливий розподіл вводить в оману; Подивіться на середнє значення та розподіл із перехресною перевіркою.
- Не порівняти з вихідним рівнем. Не можна сказати «добре», не знаючи, чи перевершує модель дурного провісника.
- Використання нормального k-кратного часових рядів. Це пропускає майбутнє; необхідне поділ часових рядів.
Порада: напишіть три цифри біля кожної моделі: оцінка навчання, середня оцінка перехресної перевірки та базова оцінка. Це тріо з першого погляду виявляє перенавчання (навчання >> CV) і недооцінку (CV ≈ базовий рівень).
Підсумовуючи
Побудувати модель легко, але чесно оцінити її важко. У класифікації матриця плутанини, точність і запам’ятовування набагато інформативніші, ніж точність; Вартість роботи визначає, яка з них є важливою. MAE, RMSE і R² використовуються в регресії. Найпідступніша пастка — це перенавчання: завжди порівнюйте навчання та результати тестування. Покладайтеся на середнє значення та розподіл перехресної перевірки, а не на одиничний розподіл; Порівняйте все з базовою лінією. ШІ обчислює все це, але людині вирішувати, який показник використовувати.
Аплікаційне завдання
Витягти матрицю плутанини, точність, відкликання та F1 для моделі класифікації; Потім виконайте 5-кратну перехресну перевірку та подивіться на розподіл балів між складками. Нарешті, запишіть бал тренування, середнє CV і базовий бал поруч. Прокоментуйте одним реченням, чи ваша модель перенавчається та чи проходить базовий рівень.
контрольний список
- [ ] Чи я дивився на фактичну метрику роботи (точність/відкликання/F1 тощо) замість точності?
- [ ] Чи перевірив я матрицю плутанини?
- [ ] Чи порівнював я результат тренувань і тестів і перевіряв наявність перенавчання?
- [ ] Я дивився на середнє значення та розподіл із перехресною перевіркою?
- [ ] Чи порівнював я модель із базовою лінією?