Основы ИИ

Что такое Матрица Запутывания?

mm
Добавьте Unite.AI в избранные источники в Google

Одним из самых мощных аналитических инструментов в машинном обучении и 데이터-науке является матрица запутывания. Матрица запутывания способна предоставить исследователям подробную информацию о том, как классификатор машинного обучения выполнил свою работу в отношении целевых классов в наборе данных. Матрица запутывания демонстрирует примеры, которые были правильно классифицированы, а также примеры, которые были неправильно классифицированы. Давайте более подробно рассмотрим, как устроена матрица запутывания и как ее можно интерпретировать.

Что такое Матрица Запутывания?

Начнем с простого определения матрицы запутывания. Матрица запутывания – это инструмент предиктивной аналитики. Конкретно, это таблица, которая отображает и сравнивает фактические значения с прогнозируемыми значениями модели. В контексте машинного обучения матрица запутывания используется как метрика для анализа того, как классификатор машинного обучения выполнил свою работу на наборе данных. Матрица запутывания генерирует визуализацию метрик, таких как точность, точность, специфичность и полнота.

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

Давайте определим различные метрики, которые представляет матрица запутывания.

Полнота в Матрице Запутывания

Полнота – это количество真正 положительных примеров, разделенное на количество ложных отрицаний и общее количество положительных примеров. Другими словами, полнота представляет собой долю истинных положительных примеров, которые классификатор машинного обучения правильно классифицировал. Полнота выражается в процентах от общего количества положительных примеров в наборе данных. Это значение также может называться “коэффициентом попаданий”, и связанное с ним значение – “чувствительность“, которое описывает вероятность полноты или скорость истинных положительных прогнозов.

Точность в Матрице Запутывания

Как и полнота, точность – это значение, которое отслеживает производительность модели в отношении классификации положительных примеров. Однако, в отличие от полноты, точность занимается вопросом, сколько из примеров, которые модель пометила как положительные, были действительно положительными. Для расчета этого значения количество истинных положительных примеров делится на количество ложных положительных примеров плюс истинные положительные.

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

Специфичность в Матрице Запутывания

Хотя полнота и точность – это значения, которые отслеживают положительные примеры и истинную положительную скорость, специфичность количественно оценивает истинную отрицательную скорость или количество примеров, которые модель определила как отрицательные и которые были действительно отрицательными. Это рассчитывается путем деления количества примеров, классифицированных как отрицательные, на количество ложных положительных примеров, объединенных с истинными отрицательными примерами.

Понимание Матрицы Запутывания

Фото: Jackverr via Wikimedia Commons, (https://commons.wikimedia.org/wiki/File:ConfusionMatrix.png), CC BY SA 3.0

Пример Матрицы Запутывания

После определения необходимых терминов, таких как точность, полнота, чувствительность и специфичность, мы можем рассмотреть, как эти различные значения представлены внутри матрицы запутывания. Матрица запутывания генерируется в случаях классификации, применимой, когда есть два или более класса. Матрица запутывания, которая генерируется, может быть такой же высокой и широкой, как необходимо, содержащей любое желаемое количество классов, но для простоты мы рассмотрим матрицу запутывания 2х2 для бинарной классификационной задачи.

Например, предположим, что классификатор используется для определения того, болен ли пациент или нет. Функции будут введены в классификатор, и классификатор вернет одно из двух различных классификаций – либо пациент не болен, либо он болен.

Давайте начнем с левой стороны матрицы. Левая сторона матрицы запутывания представляет прогнозы, которые классификатор сделал для отдельных классов. Бинарная классификационная задача будет иметь два ряда здесь. Что касается верхней части матрицы, она отслеживает истинные значения, фактические метки классов, экземпляров данных.

Интерпретация матрицы запутывания может быть выполнена путем проверки пересечения строк и столбцов. Сравните прогнозы модели с истинными метками модели. В этом случае значение истинных положительных, количество правильных положительных прогнозов, находится в верхнем левом углу. Ложные положительные находятся в верхнем правом углу, где примеры на самом деле отрицательны, но классификатор пометил их как положительные.

Нижний левый угол сетки отображает экземпляры, которые классификатор пометил как отрицательные, но которые были действительно положительными. Наконец, нижний правый угол матрицы запутывания – это место, где находятся истинные отрицательные значения, или где находятся действительно ложные примеры.

Когда набор данных содержит более двух классов, матрица растет до того же количества классов. Например, если есть три класса, матрица будет 3х3 матрицей. Независимо от размера матрицы запутывания, метод их интерпретации остается точно таким же. Левая сторона содержит прогнозируемые значения, а фактические метки классов проходят через верхнюю часть. Экземпляры, которые классификатор правильно прогнозировал, проходят по диагонали от верхнего левого до нижнего правого. Посмотрев на матрицу, можно определить четыре прогнозируемые метрики, упомянутые выше.

Например, можно рассчитать полноту, взяв истинные положительные и ложные отрицания, сложив их вместе и разделив на количество истинных положительных примеров. Тем временем, точность можно рассчитать, объединив ложные положительные с истинными положительными, затем разделив значение на общее количество истинных положительных.

Хотя можно потратить время на ручной расчет метрик, таких как точность, полнота и специфичность, эти метрики используются так часто, что большинство библиотек машинного обучения имеют методы их отображения. Например, Scikit-learn для Python имеет функцию, которая генерирует матрицу запутывания.

Блогер и программист с специализацией в Machine Learning и Deep Learning темах. Daniel надеется помочь другим использовать силу ИИ для социального блага.