Я пробую настройку мультиклассовой классификации с 3 классами. Распределение классов искажено, большая часть данных попадает в 1 из 3 классов. (метки классов 1,2,3, при этом 67,28% данных попадают в метку класса 1, 11,99% данных в классе 2 и остаются в классе 3)
Я обучаю мультиклассовый классификатор на этом наборе данных, и я получаю следующую производительность:
Precision Recall F1-Score
Micro Average 0.731 0.731 0.731
Macro Average 0.679 0.529 0.565
Я не уверен, почему все Micro Avg. производительность одинакова, а также почему средние показатели макросъемки так низки.
multiclass-classification
evaluation
ШАШАНК ГУПТА
источник
источник
Ответы:
Микро- и макро-средние (для любой метрики) будут вычислять несколько разные вещи, и, следовательно, их интерпретация будет разной. Макро-среднее вычислит метрику независимо для каждого класса, а затем возьмет среднее (следовательно, будет обрабатывать все классы одинаково), тогда как микро-среднее будет агрегировать вклады всех классов для вычисления средней метрики. В мультиклассовой классификации предпочтение отдается микро-среднему, если вы подозреваете, что может быть дисбаланс классов (т.е. у вас может быть гораздо больше примеров одного класса, чем других классов).
Чтобы проиллюстрировать почему, возьмем, например, точность . Давайте представим, что у вас естьсистема классификации нескольких классовOne-vs-All(в каждом примере только один правильный класс) с четырьмя классами и следующими числами при тестировании:пг = тп( Тп+ Fп)
Вы можете легко видеть, что , тогда как P r B = 0,1 .прA= PрС= PрD= 0,5 прВ= 0,1
Это совершенно разные значения точности. Интуитивно понятно, что в макро-среднем «хорошая» точность (0,5) классов A, C и D способствует поддержанию «достойной» общей точности (0,4). Хотя это технически верно (для разных классов средняя точность равна 0,4), это немного вводит в заблуждение, поскольку большое количество примеров не классифицировано должным образом. Эти примеры в основном соответствуют классу B, поэтому они дают только 1/4 от среднего значения, несмотря на то, что они составляют 94,3% ваших тестовых данных. Микро-среднее адекватно улавливает этот дисбаланс класса и снизит общее среднее значение точности до 0,123 (что больше соответствует точности доминирующего класса B (0,1)).
По вычислительным причинам иногда может быть удобнее вычислять средние значения классов, а затем их усреднять на макроуровне. Если дисбаланс классов, как известно, является проблемой, есть несколько способов обойти это. Одним из них является отчет не только о среднем среднем, но и о его стандартном отклонении (для 3 или более классов). Другой способ состоит в том, чтобы вычислить взвешенное макро-среднее значение, при котором вклад каждого класса в среднее значение взвешивается по относительному числу доступных для него примеров. В приведенном выше сценарии мы получаем:
Большое стандартное отклонение (0,173) уже говорит нам о том, что среднее значение 0,4 не вытекает из одинаковой точности среди классов, но может быть просто легче вычислить взвешенное макро-среднее значение, которое по сути является еще одним способом вычисления микро-среднего значения. ,
источник
Оригинальный пост - http://rushdishams.blogspot.in/2011/08/micro-and-macro-average-of-precision.html
В методе микро-усреднения вы суммируете отдельные истинные положительные, ложные положительные и отрицательные значения системы для разных наборов и применяете их для получения статистики.
Сложно, но я нашел это очень интересным. Есть два метода, с помощью которых вы можете получить такую среднюю статистику поиска и классификации информации.
1. Микро-средний метод
В методе микро-усреднения вы суммируете отдельные истинные положительные, ложные положительные и отрицательные значения системы для разных наборов и применяете их для получения статистики. Например, для набора данных система
и для другого набора данных, система
Тогда точность (P2) и отзыв (R2) будут 68,49 и 84,75
Теперь средняя точность и отзыв системы с использованием метода микро-среднего
Микро-среднее F-Score будет просто гармоническим средним этих двух цифр.
2. Макро-средний метод
Метод прост. Просто возьмите среднее значение точности и вспомните систему на разных наборах. Например, макро-средняя точность и отзыв системы для данного примера
Макро-среднее F-Score будет просто гармоническим средним этих двух цифр.
Метод макро-усреднения пригодности можно использовать, когда вы хотите узнать, как система работает в целом по наборам данных. Вы не должны принимать какое-либо конкретное решение с этим средним.
С другой стороны, микро-среднее может быть полезной мерой, когда ваш набор данных различается по размеру.
источник
В мультиклассовой настройке микро-усредненная точность и отзыв всегда одинаковы.
Следовательно, P = R. Другими словами, каждое Ложное Предсказание будет Ложным Позитивом для класса, и каждый Единственный Негатив будет Ложным Негативом для класса. Если вы рассматриваете случай двоичной классификации как двухклассовую классификацию и вычисляете микроусредненную точность и вспоминаете, что они будут одинаковыми.
Ответ, данный Рахулом, заключается в усреднении двоичной точности и повторном наборе данных из множества наборов данных. В этом случае микро усредненная точность и отзыв отличаются.
источник
Так и должно быть. У меня был тот же результат для моего исследования. Сначала это казалось странным. Но точность и отзыв должны быть одинаковыми при микроусреднении результата многоклассового однокомпонентного классификатора. Это потому, что если вы рассмотрите ошибочную классификацию c1 = c2 (где c1 и c2 - 2 разных класса), ошибочная классификация будет ложноположительной (fp) по отношению к c2 и ложноотрицательной (fn) по отношению к c1. Если вы суммируете fn и fp для всех классов, вы получаете одно и то же число, потому что вы считаете каждую ошибочную классификацию fp для одного класса и fn для другого класса.
источник
Я думаю, что причина, по которой макро-среднее ниже, чем микро-среднее, хорошо объясняется ответом Пятистого (доминирующий класс имеет лучшие прогнозы и, следовательно, микро-среднее увеличение).
Но тот факт, что микро-среднее значение одинаково для показателей точности, повторного вызова и F1, объясняется тем, что микро-усреднение этих метрик приводит к общей точности (поскольку микро-средние считают все классы положительными). Обратите внимание, что если Точность и Повтор равны, то оценка F1 просто равна точности / отзыву.
Что касается вопроса, всегда ли «взвешенное макро-среднее» будет равно «микро-среднему»? Я провел несколько экспериментов с разными номерами. классов и различного дисбаланса классов, и оказывается, что это не обязательно верно.
Эти утверждения сделаны с предположением, что мы рассматриваем все классы одного и того же набора данных (в отличие от ответа Рахула Редди Вемиредди)
источник
Преимущество использования Macro F1 Score заключается в том, что он придает одинаковый вес всем точкам данных, например: давайте подумаем об этом, так как микро F1 берет сумму всех Recall и Presession разных меток независимо, поэтому, когда у нас есть дисбаланс классов например, T1 = 90%, T2 = 80%, T3 = 5, тогда F1 Micro дает одинаковый вес всем классам и не подвержен отклонениям в распределении журнала классов. Потеря журналов учитывает небольшие отклонения в классе.
источник