Словарь ИИ
Что такое матрица ошибок
Коротко
Матрица ошибок это таблица, в которой ответы модели сопоставлены с правильными ответами, и по ней видно, сколько раз и в какую сторону модель ошиблась.
Машинное обучение · confusion matrix
Михаил МозгПроверено: 1 минута чтения
Ребенку
Ты сортируешь фрукты: яблоки в одну корзину, груши в другую. Потом мама проверяет и рисует табличку. В одной клетке яблоки, которые попали к яблокам, в другой груши, которые попали к грушам. Еще две клетки для перепутанных: яблоки среди груш и груши среди яблок. Сразу видно, где ты чаще путаешься. Компьютер проверяют такой же табличкой.
Простыми словами
Возьмем фильтр спама. Каждое письмо попадает в одну из четырех клеток. Спам, который фильтр поймал. Спам, который он пропустил во входящие. Нормальное письмо, которое он по ошибке убрал в спам. И нормальное письмо, которое осталось на месте. Таблица из этих четырех чисел показывает не только общую долю правильных ответов, но и характер промахов: что модель делает чаще, пропускает нужное или поднимает ложную тревогу. Если вариантов ответа больше двух, таблица растет: строк и столбцов столько, сколько классов, и видно, какие классы модель путает между собой.
Для бизнеса
Одна цифра качества скрывает главное, а эта таблица его показывает: какие ошибки модель делает и сколько их. Руководителю удобно приписать каждой клетке цену. Пропущенная претензия стоит штрафа, ложная тревога стоит часа работы сотрудника. Умножив число ошибок на цену, вы получаете стоимость промахов в рублях и можете сравнить ее с текущим процессом. Для рубрикатора обращений таблица покажет, например, что вопросы о возврате часто уходят в отдел доставки, и станет понятно, что дообучать. Попросите подрядчика построить ее на ваших реальных данных, а не на демонстрационных, и отдельно разобрать редкие, но дорогие классы. Так же проверяют и автоматическую обработку заявок перед запуском.
Для специалиста
Матрица ошибок (confusion matrix) это квадратная таблица C размером K×K для K классов, где элемент C[i, j] равен числу объектов истинного класса i, отнесенных моделью к классу j. В scikit-learn строки соответствуют истинным меткам, столбцы предсказанным; в бинарном случае C[0,0] это истинно отрицательные (TN), C[0,1] ложноположительные (FP, ошибка первого рода), C[1,0] ложноотрицательные (FN, ошибка второго рода), C[1,1] истинно положительные (TP). В части литературы и в других инструментах оси переставлены, поэтому подписи всегда проверяют. Из клеток выводятся почти все пороговые метрики: доля верных ответов (accuracy), точность, полнота, специфичность (specificity), F1-мера, коэффициент корреляции Мэтьюса (MCC). Параметр normalize делит счетчики на сумму строк ('true'), и тогда на диагонали видна полнота каждого класса, на сумму столбцов ('pred'), и тогда видна точность, или на сумму всей таблицы ('all'). Таблицу считают при фиксированном пороге; меняя порог, получают семейство таблиц, по которому строят ROC-кривую. Для многометочных задач берут отдельную таблицу 2×2 на каждую метку.
Пример
Модель разбирает обращения в поддержку по пяти темам. Матрица ошибок показывает, что четверть вопросов об оплате она относит к возвратам. Команда добавляет в обучение примеры, где эти темы легко спутать, и путаница заметно уменьшается.
Связанные термины
Вопросы и ответы
Как читать матрицу ошибок?
Что такое ложноположительный и ложноотрицательный результат?
Источники
Где это применяют в компании
Не уверены, нужно ли это вашей компании?
Карта ИИ-решений