Зображення статті
## Чому accuracy — найгірша метрика для більшості задач
Перше, що запитує бізнес: "Яка точність моделі?" Це природне питання, але accuracy (відсоток правильних відповідей) може дуже сильно вводити в оману. Класичний приклад: модель виявлення шахрайства, де лише 1% транзакцій — шахрайські. Якщо модель класифікує ВСІ транзакції як "нормальні" — її accuracy складе 99%. Але вона виявляє рівно 0% шахрайства. Така модель абсолютно марна.
Щоб зрозуміти, що насправді відбувається, потрібно подивитись на деталізовані метрики.
## Confusion Matrix як основа
Матриця помилок (Confusion Matrix) — фундамент розуміння якості класифікатора. Для бінарної задачі вона містить чотири значення: True Positive (TP) — правильно виявлені позитивні випадки; True Negative (TN) — правильно відхилені негативні; False Positive (FP) — помилкова тривога (сказали "так", насправді "ні"); False Negative (FN) — пропущений випадок (сказали "ні", насправді "так").
Для моделі виявлення шахрайства FN (пропущене шахрайство) набагато дорожче за FP (зайвий дзвінок клієнту). Для медичного скринінгу рака FN (пропущений рак) катастрофічніший за FP (зайве обстеження). Важливість метрик завжди залежить від бізнес-контексту.
## Precision і Recall: дві сторони якості
Precision (точність) відповідає на питання: "Коли модель каже 'так' — наскільки їй вірити?" Формула: TP / (TP + FP). Якщо модель блокує транзакцію — наскільки часто це справжнє шахрайство, а не помилка? Висока Precision означає мало помилкових тривог.
Recall (повнота) відповідає на питання: "Яку частку реальних позитивних випадків знаходить модель?" Формула: TP / (TP + FN). З усіх шахрайських транзакцій — скільки модель знайшла? Висока Recall означає мало пропусків.
Між Precision і Recall існує фундаментальний компроміс. Підвищуючи поріг рішення (модель каже "шахрайство" тільки при 95% впевненості) — отримуємо вищу Precision, але нижчу Recall. Знижуючи поріг — навпаки. Оптимальний баланс визначається бізнес-пріоритетами.
## F1-score та збалансовані задачі
F1-score — гармонічне середнє між Precision і Recall: 2 * (Precision * Recall) / (Precision + Recall). Ця метрика корисна, коли обидва показники важливі і немає явного пріоритету між ними.
Для незбалансованих класів (наприклад, 1% шахрайства) доцільно також розглядати macro/weighted F1 або F-beta з beta, що відображає відносну важливість Recall над Precision.
## ROC-AUC: оцінка незалежно від порогу
ROC-AUC (Area Under the ROC Curve) вимірює здатність моделі розрізняти класи незалежно від конкретного порогу рішення. Значення 0.5 означає модель на рівні випадкового вгадування, 1.0 — ідеальна модель. Значення 0.85-0.90 є хорошим результатом для більшості бізнес-задач.
ROC-AUC корисний для порівняння різних моделей або алгоритмів. Але для фінального вибору порогу та операційного рішення все одно потрібно дивитись на конкретні Precision і Recall при обраному порозі.
## Метрики для регресії
Для задач прогнозування числових значень (попит, ціна, час) ключові метрики інші. MAE (Mean Absolute Error) — середня абсолютна похибка, зрозуміла нетехнічній аудиторії. RMSE (Root Mean Squared Error) — штрафує за великі помилки сильніше, ніж за маленькі. MAPE (Mean Absolute Percentage Error) — відносна похибка у відсотках, зручна для порівняння прогнозів різних масштабів. Для прогнозування попиту MAPE 10-15% вважається хорошим результатом.
## Головні підводні камені
Data leakage — інформація з майбутнього потрапила у навчальні дані. Метрики на тесті чудові, але у production модель деградує. Перевіряйте хронологічне розбиття для часових рядів.
Overfitting — модель вивчила тренувальні дані напам'ять, але не узагальнила. Метрики на train значно кращі, ніж на validation/test.
Невідповідний тест-сет — тестові дані не відображають реальний розподіл у production. Модель, натренована на даних 2023 року, тестується на 2023 і показує 92% — але у production на даних 2026 деградує до 78%.
Завжди перевіряйте модель на даних, максимально близьких до реального виробничого середовища, і встановлюйте бізнесові критерії якості до початку навчання, а не після.
Стаття в розробці. Підпишіться щоб отримати сповіщення.
Написати нам →#метрики#accuracy#precision#recall#ROC-AUC#F1
КC
Команда CodeNest
Команда CodeNest
Практикуючий ML-інженер. Спеціалізується на побудові виробничих AI-систем для бізнесу.
🤖
Готові автоматизувати ваш бізнес?
Обговоримо ваш проєкт і запропонуємо оптимальне рішення. Безкоштовна консультація без зобов'язань.