Матрица ошибок

Матрица ошибок (англ. confusion matrix, также англ. error matrix)[1] — это специальное табличное представление, позволяющее визуализировать эффективность работы алгоритма, как правило, обучаемого с учителем; в случае обучения без учителя такую таблицу обычно называют матрицей соответствия (англ. matching matrix).

Каждая строка матрицы представляет объекты реального класса, а каждый столбец — объекты, отнесённые к предсказанному классу, или наоборот: оба варианта используются в литературе[2]. Диагональ матрицы содержит объекты, предсказанные верно[3]. Название отражает суть: по матрице легко обнаружить, какие классы при классификации путаются между собой (то есть, когда один класс ошибочно принимается за другой).

Это разновидность контингентной таблицы, имеющей две размерности («реальный» и «предсказанный» классы) с одинаковым набором классов в обоих измерениях.

Пример

Рассмотрим пример с 12 людьми, из которых 8 диагностированы как больные раком, а 4 — не болеют раком. Больные относятся к классу 1 (положительный результат), здоровые — к классу 0 (отрицательный результат):

Номер индивида 1 2 3 4 5 6 7 8 9 10 11 12
Реальная классификация 1 1 1 1 1 1 1 1 0 0 0 0

Предположим, что некий классификатор осуществляет автоматическое распознавание принадлежности к группам. В результате он делает 9 правильных предсказаний и ошибается в 3 случаях: двум больным ошибочно приписывает отсутствие заболевания (индивиды № 1 и 2), одному здоровому — ошибочно приписывает болезнь (индивид № 9).

Номер индивида 1 2 3 4 5 6 7 8 9 10 11 12
Реальная классификация 1 1 1 1 1 1 1 1 0 0 0 0
Предсказанная классификация 0 0 1 1 1 1 1 1 1 0 0 0

Сравнивая реальное и предсказанное значения, можно выделить четыре возможных исхода для каждого столбца:

  • Если реальная и предсказанная классификации положительные (1,1), это истинно-положительный результат (классификатор правильно определил наличие болезни).
  • Если реальная классификация положительна, а предсказанная — отрицательна (1,0), это ложно-отрицательный результат (классификатор ошибочно определил отсутствие болезни).
  • Если реальная классификация отрицательна, а предсказанная — положительна (0,1), это ложно-положительный результат (ошибочно приписано наличие болезни).
  • Если обе классификации отрицательны (0,0), это истинно-отрицательный результат (здоровый определён правильно).

В третьей таблице приведены эти результаты по каждому индивиду, корректные предсказания выделены зелёным цветом.

Номер индивида 1 2 3 4 5 6 7 8 9 10 11 12
Реальная классификация 1 1 1 1 1 1 1 1 0 0 0 0
Предсказанная классификация 0 0 1 1 1 1 1 1 1 0 0 0
Результат ЛО (ложно-отрицательный) ЛО (ложно-отрицательный) ИП (истинно-положительный) ИП (истинно-положительный) ИП (истинно-положительный) ИП (истинно-положительный) ИП (истинно-положительный) ИП (истинно-положительный) ЛП (ложно-положительный) ИО (истинно-отрицательный) ИО (истинно-отрицательный) ИО (истинно-отрицательный)

Шаблон бинарной матрицы ошибок использует перечисленные выше четыре типа результатов — истинно-положительные, ложно-отрицательные, ложно-положительные и истинно-отрицательные, а также классификации по критериям «положительно» и «отрицательно». Эти четыре исхода могут быть представлены в виде 2×2-матрицы ошибок:

Предсказанное состояние
Общее
= P + N
Положительное (ПП) Отрицательное (ПО)
Реальное состояние Положительное (П) ИП ЛО
Отрицательное (О) ЛП ИО

Цветовое оформление трёх предыдущих таблиц согласовано с данной матрицей ошибок для облегчения визуального сопоставления.

Теперь, подсчитав каждый тип результатов, можно подставить значения в шаблон и получить итоговую матрицу ошибок по исследуемому примеру:

Предсказанное состояние
Всего
8 + 4 = 12
Рак
7
Нет рака
5
Реальное состояние Рак
8
6 2
Нет рака
4
1 3

В данной матрице ошибок из 8 реально больных системой как здоровые определены 2 человека, а из 4 здоровых — одному ошибочно поставлен диагноз рак. Все верные результаты расположены на диагонали (выделены зелёным), поэтому ошибки легко видны по значениям вне диагонали.

Таблица ошибок

В прогнозной аналитике таблица ошибок (иногда также матрица ошибок) — это таблица 2×2, содержащая количество истинно-положительных, ложно-отрицательных, ложно-положительных и истинно-отрицательных случаев. Такой подход позволяет проводить более подробный анализ по сравнению с простой долей верных классификаций (точность). Последняя оказывается неинформативной при несбалансированных данных — когда количество объектов разных классов сильно различается.

Например, если в наборе 95 больных и только 5 здоровых, классификатор, причисляющий всех к больным, обеспечит общую точность 95 %, но детальный разбор покажет 100%-ную чувствительность к классу «рак» и 0 % — к «здоровым». F1-мера ещё менее надёжна, показывая здесь более 97,4 %, тогда как метрика информированности (informedness) устраняет этот перекос и даст 0 для любого угадывания (например, если всегда выбирать «рак»).

По мнению Давиде Кикко и Джузеппе Джурмана, наиболее информативной метрикой для оценки матрицы ошибок является коэффициент корреляции Мэттьюса (MCC)[4].

Также могут использоваться и другие метрики, каждая из которых имеет свой смысл и область применения.

Некоторые исследователи отмечают, что матрица ошибок и производные от неё метрики не вполне отражают «знание» модели. В частности, матрица не показывает, были ли верные предсказания достигнуты в результате корректных рассуждений или просто случайны (проблема эпистемической удачи). Также она не учитывает случаи, когда использованные для предсказания факты впоследствии оказываются ложными или изменяются (дефеасиблие). Поэтому матрица ошибок — полезный инструмент оценки качества классификации, но она не даёт полного представления о надёжности модели[5].

undefined

Матрцы ошибок для нескольких классов

Матрица ошибок применяется не только в бинарных, но и в многоклассовых задачах классификации. Всё вышесказанное относилось к случаям, когда различают только два состояния — «положительное» и «отрицательное». Например, следующая таблица суммирует результаты коммуникации на свистовом языке между двумя носителями (нулевые значения не указаны для облегчения чтения):[6]

Гласная
произнесена / Воспринимаемая
гласная
i e a o u
i 15 1
e 1 1
a 79 5
o 4 15 3
u 2 2
undefined

Матрицы ошибок для многометочных и «мягких» меток

Матрицы ошибок применимы и к задачам многометочной классификации (multi-label), когда возможно предсказать принадлежность объекта сразу к нескольким классам, и к случаям «мягких» меток, где принадлежность выражена не бинарно, а частично.

Одно из подобных обобщений — транспортная матрица ошибок (англ. Transport-based Confusion Matrix, TCM)[7], которая базируется на теории оптимального транспорта и принципе максимального энтропии. TCM применима как для single-label, так и для multi-label и soft-label задач и сохраняет привычную квадратную структуру (размер по числу классов), где диагональные элементы отвечают верной классификации, а внедиагональные — конфузии (перепутыванию классов). В случае одиночной метки TCM совпадает со стандартной матрицей ошибок.

Принцип построения TCM тот же: если класс A переоценён (его предсказанное значение больше истинного), а B — недооценён (значение предсказано ниже), считается, что A перепутан с B, и элемент (B,A) увеличивается. Если класс предсказан правильно, по диагонали (A,A) увеличивается его счётчик. Степень обновления этих значений вычисляется с использованием оптимального транспорта и максимальной энтропии[7].

TCM позволяет проводить сравнение предсказаний и меток даже в сложных задачах, сохраняя при этом единую матричную форму[7].

Примечания

  1. Stehman, Stephen V. (1997). “Selecting and interpreting measures of thematic classification accuracy”. Remote Sensing of Environment [англ.]. 62 (1): 77—89. DOI:10.1016/S0034-4257(97)00083-7.
  2. Powers, David M. W. (2011). “Evaluation: From Precision, Recall and F-Measure to ROC, Informedness, Markedness & Correlation”. Journal of Machine Learning Technologies [англ.]. 2 (1): 37—63. Архивировано из оригинала 2024-03-30. Дата обращения 2024-06-30.
  3. Opitz, Juri (2024). “A Closer Look at Classification Evaluation Metrics and a Critical Reflection of Common Evaluation Practice”. Transactions of the Association for Computational Linguistics [англ.]. 12: 820—836. DOI:10.1162/tacl_a_00675. Дата обращения 2024-06-30.
  4. Chicco D, Jurman G (январь 2020). “The advantages of the Matthews correlation coefficient (MCC) over F1 score and accuracy in binary classification evaluation”. BMC Genomics [англ.]. 21 (1): 6-1–6-13. DOI:10.1186/s12864-019-6413-7. PMC 6941312. PMID 31898477. Проверьте дату в |date= (справка на английском)
  5. van der Linde, Ian (2025). “Why the confusion matrix fails as a model of knowledge”. AI & Society [англ.]. DOI:10.1007/s00146-025-02456-x.
  6. Rialland, Annie (август 2005). “Phonological and phonetic aspects of whistled languages”. Phonology [англ.]. 22 (2): 237—271. DOI:10.1017/S0952675705000552. S2CID 18615779. Проверьте дату в |date= (справка на английском)
  7. 1 2 3 Erbani, Johan; Portier, Pierre-Édouard; Egyed-Zsigmond, Előd; Nurbakova, Diana (2024). “Confusion Matrices: A Unified Theory”. IEEE Access [англ.]. IEEE. 12: 181372—181419. DOI:10.1109/ACCESS.2024.3507199. ISSN 2169-3536.