Матрица ошибок
Матрица ошибок (англ. 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].
Матрцы ошибок для нескольких классов
Матрица ошибок применяется не только в бинарных, но и в многоклассовых задачах классификации. Всё вышесказанное относилось к случаям, когда различают только два состояния — «положительное» и «отрицательное». Например, следующая таблица суммирует результаты коммуникации на свистовом языке между двумя носителями (нулевые значения не указаны для облегчения чтения):[6]
| Гласная произнесена / Воспринимаемая гласная |
i | e | a | o | u |
|---|---|---|---|---|---|
| i | 15 | 1 | |||
| e | 1 | 1 | |||
| a | 79 | 5 | |||
| o | 4 | 15 | 3 | ||
| u | 2 | 2 |
Матрицы ошибок для многометочных и «мягких» меток
Матрицы ошибок применимы и к задачам многометочной классификации (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].
Примечания
- ↑ 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.
- ↑ 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.
- ↑ 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.
- ↑ 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=(справка на английском) - ↑ van der Linde, Ian (2025). “Why the confusion matrix fails as a model of knowledge”. AI & Society [англ.]. DOI:10.1007/s00146-025-02456-x.
- ↑ Rialland, Annie (август 2005). “Phonological and phonetic aspects of whistled languages”. Phonology [англ.]. 22 (2): 237—271. DOI:10.1017/S0952675705000552. S2CID 18615779. Проверьте дату в
|date=(справка на английском) - ↑ 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.