🚨 Accuracy 99% — а модель может быть мусором
Если вы хоть раз имели дело с прогнозными моделями, то точно видели этот набор из четырёх страшных слов:
accuracy, precision, recall, F1-score
И вроде бы определения читаешь, а через 5 минут в голове всё снова превращается в ✨точность модели✨
Давайте один раз разложим это по-простому 🤌🏼
Есть модель, которая ищет мошеннические банковские операции 🔎 Всего у нас 1000 транзакций 💸
Из них: ⛔️ 50 реально мошеннические ✅ 950 нормальные
Модель сказала, что подозрительные — 40 операций 👀
Из этих 40: ✅ 30 реально мошеннические 👀 10 — нормальные, но модель запаниковала При этом модель пропустила ещё 20 мошеннических операций 😅
Сначала переводим это в аналитический язык 🤓
True Positive (TP) = 30 модель сказала «мошенник» и была права
False Positive (FP) = 10 модель сказала «мошенник», но ошиблась
False Negative (FN) = 20 модель сказала «норм», но там был мошенник
True Negative (TN) = 940 модель сказала «норм», и всё ок
1️⃣Accuracy Какую долю объектов модель в целом классифицировала правильно? ✅
Это самая коварная метрика, потому что выглядит очень красиво: Accuracy = (TP + TN) / Total = (30 + 940) / 1000 = 97%
😎 Вау, 97%! Кажется, модель прекрасна.
Но нет. Потому что если мошенников мало, можно почти всегда говорить «всё нормально» — и accuracy всё равно будет высокой 🤷♂️
2️⃣ Precision aka точность Насколько можно доверять положительным срабатываниям модели? 🤨
Precision = TP / (TP + FP) = 30 / (30 + 10) = 75%
То есть если модель сказала: «Вот это мошенник!» — только в 75% случаев она права ☹
[Это важно, когда ложное обвинение дорого стоит] Например, если вы блокируете клиенту карту без причины 📱
3️⃣ Recall aka полнота Насколько хорошо модель умеет находить все реальные положительные случаи? 🫡
Recall = TP / (TP + FN) = 30 / (30 + 20) = 60%
То есть модель нашла только 60% всех мошенников, а остальные 40% продолжают красть деньги! 😱
[Recall важен, когда страшно что-то пропустить]
4️⃣ F1-score Насколько хорошо модель в целом балансирует между точностью и полнотой? ⚖️
F1 = 2 × Precision × Recall / (Precision + Recall) = 2 × 0.75 × 0.60 / (0.75 + 0.60) = 0.67
То есть F1 ≈ 67%, это показывает насколько в целом хороша модель, чем ближе значение к 100%, тем лучше.
Оставляйте реакции: 😭 — если попадались в ловушку accuracy 🥂 — если хотите теперь разбор ROC-AUC ❤️ — если пост был вам полезен
· 09.03
Спасибо за разбор!✨Интересно было бы почитать ваше мнение про ROC-AUC
ответить
коммент удалён