Обработка проблем несбалансированного класса с помощью коэффициента корреляции Мэтью

Обработка проблем несбалансированного класса с помощью коэффициента корреляции Мэтью

2 мая 2022 г.

Иногда в науке о данных и машинном обучении мы сталкиваемся с проблемами несбалансированных классов. Это проблемы, когда один класс может иметь больше экземпляров, чем другой. Это делает точность плохой метрикой. Если класс A показывает 90% в нашей выборке, а другой — 10%, то мы можем просто получить точность 90%, всегда прогнозируя класс A.


Одной из метрик, помогающих решить эту проблему, является Коэффициент корреляции Мэтью (MCC), который был введен в двоичном формате Мэтьюзом в 1975 году. Прежде чем мы покажем расчет для MCC, давайте сначала вернемся к концепции матрицы путаницы. Как вы можете видеть на изображении ниже, матрица путаницы состоит из четырех ячеек, созданных путем объединения прогнозируемых значений с реальными значениями. Две из этих ячеек представляют правильные прогнозы (истинно положительные и истинно отрицательные), а другая представляет неверные прогнозы (ложноположительные и ложноотрицательные).


матрица путаницы


Коэффициент корреляции Мэтью рассчитывается следующим образом:


коэффициент корреляции Мэтью


MCC принимает значения от -1 до 1. Оценка 1 указывает на полное соответствие. Но как MCC соотносится с другими популярными показателями несбалансированных классов?


Коэффициент корреляции Мэтью против оценки F1


F1-score – еще один очень популярный показатель для проблем с несбалансированным классом. Оценка F1 рассчитывается как:


оценка f1


Таким образом, это просто гармоническое среднее точности и полноты. Согласно статье, MCC имеет два преимущества по сравнению с F1-оценкой.


  1. F1 меняется при смене класса, а MCC остается неизменным, если положительный класс переименовывается в отрицательный, и наоборот.

  1. F1 не зависит от количества образцов, правильно классифицированных как отрицательные.

Поэтому утверждается, что MCC является полной мерой по сравнению с F1.


Коэффициент корреляции Мэтью против каппы Коэна


[Каппа Коэна] (https://thedatascientist.com/performance-measures-cohens-kappa-statistic/) – одна из моих любимых мер, о которой мы писали в этом блоге. Это отличный показатель для несбалансированных проблем класса. В этом статье сравниваются две метрики. Приводится аргумент в пользу МКЦ, но я лично считаю, что он слишком теоретический. Я обнаружил, что на практике обе метрики дают одинаковые результаты, и я использую обе во всех своих проектах.


Использование MCC в Python и R


Использовать MCC в python очень просто. Вы можете просто использовать API метрик Scikit Learn. Центр клиентов можно выполнить с помощью функции matthews_corrcoef. В R вы можете использовать функцию mcc из mltools пакет.


Ранее опубликовано [здесь] (https://thedatascientist.com/metrics-matthews-correlation-coefficient/).



Оригинал
PREVIOUS ARTICLE
NEXT ARTICLE