Выбор лучших метрик для решения вашей проблемы — немного сложная задача, но если у вас есть хорошее представление обо всех метриках, вы можете легко определить, какая метрика лучше всего подходит для вашей модели машинного обучения.
Итак, давайте начнем.
В этой статье мы обсудим лучшие показатели, которые можно использовать в вашей задаче классификации.
Прежде чем перейти к типам, давайте сначала обсудим, зачем нам нужно использовать метрики.
Здесь тип проблемы — «КЛАССИФИКАЦИЯ», и есть два типа меток класса классификации (где A, B — два выхода, а 0,5 — пороговое значение), т. е. если прогноз больше 0,5, он становится классом B или классом A. В основном это можно увидеть в базовой логистической регрессии.
Теперь, если в каком-либо секторе необходимо определить вероятность, т. е. изменить это пороговое значение на 0,3 или 0,4, оно попадает под распределение вероятностей.
Итак, наша цель — увидеть проблему, а затем использовать метрики для определения эффективности нашей модели.
Типы:
- Матрица путаницы
- FPR (ошибка типа 1)
- FPN (ошибка типа 2)
- Отзыв (чувствительный к TPR)
- Точность (значение +ve pred)
- Точность
- F Бета
- Коэн Каппа
- Кривая ROC, показатель AUC
- Кривая PR
Давайте рассмотрим 3 случая в метках классов и у нас есть 1000 записей.
- Да= 500 Нет=500 здесь модель будет работать нормально.
- Да= 700 Нет=300 и здесь модель будет работать вполне нормально.
- Да = 900 Нет = 100, здесь модель будет склоняться в сторону ДА и будет давать ложные результаты.
Здесь в пунктах 1 и 2 мы можем использовать матрицу Точности, но в 3-й задаче нам придется использовать Отзыв, Точность и F Бета.
1. Матрица путаницы
Не путайтесь с этими терминами, давайте узнаем о них один за другим.
- TP (истинно положительный): это истинные(1) значения, которые точно(1) предсказываются моделью.
- FP (ложноположительный): это ложные (0) значения, которые ошибочно (1) (т. е. истинные) предсказаны моделью.
- TN (истинно-отрицательный): это ложные (0) значения, которые точно (0) предсказываются моделью.
- FN (ложноотрицательный): это истинные (1) значения, которые ошибочно (0) (т. е. ложные) предсказаны моделью.
Наша цель — максимизировать (11,00), т. е. (TP, TN), и минимизировать (10,01), т. е. (FP, FN).
Ошибка типа 1 — это не что иное, как FP, а ошибка типа 2 — FN.
Это зависит от ситуации, чтобы увидеть, какой тип ошибки больше всего мешает нашим результатам. Например.
- Мы создаем модель для прогнозирования рака у людей, в которой ошибка типа 2 будет говорить, что у человека рак, но наша модель говорит, что он в безопасности, что опасно, поэтому в этом случае мы должны минимизировать ошибку типа 2.
- Мы создаем модель, чтобы увидеть обнаружение почтового спама сейчас в этом типе 1. Ошибка важнее, т.е. свести к минимуму ошибку первого рода.
Когда есть несбалансированные данные, мы используем Recall и Precision.
Отзывать:
Из общего количества положительных фактических значений, сколько мы точно предсказали.
т. е. ошибка типа 2
Пример:
Обнаружение рака: в этом FN гораздо важнее, т. е. если у человека рак, и машина обнаруживает, что человек в безопасности, это может быть проблемой, поэтому здесь нам нужно свести к минимуму отзыв.
Точность:
Из общего числа предсказанных значений, сколько мы предсказали точно.
т. е. ошибка типа 1
Пример:
Обнаружение спама в почтеl:При обнаружении спама важен FP, т. е. почта является «не спамом», но определяется как «спам». необходимо минимизировать точность.
Иногда важны и Fase Positive, и False Negative, поэтому здесь мы используем F Beta:
Теперь давайте посмотрим, что такое F Beta.
ß= 1 (среднее гармоническое)
Оценка F1
когда важны как полнота, так и точность, мы используем ß=1
ß= 0,5оценка F0,5
когда точность важнее, чем ß= 0,5
ß= 2 оценка F2
когда припоминание важнее, чем ß > 1 (возможно, от ß1 до ß2)
Это все, ребята, надеюсь, вы используете это в своих проектах.