Начать с состава набора
Представим сто размеченных писем: девяносто пять обычных и пять нежелательных. Модель объявляет каждое письмо обычным. Она правильно отвечает в девяноста пяти случаях, поэтому доля верных ответов, accuracy, составляет 95 процентов. Однако ни одно из пяти нежелательных писем не обнаружено. Значит, число 95 описывает определённое свойство ответов на этом наборе, но не способность находить редкий класс. Сначала нужно понять распределение примеров и только затем оценивать итог.
Разложить ответы на четыре группы
Для двух классов удобно отдельно считать правильно найденный спам, пропущенный спам, обычные письма, ошибочно отмеченные как спам, и правильно сохранённые обычные письма. Такая раскладка лежит в основе матрицы ошибок. Она показывает направление ошибки, которое скрывается в одном проценте. Ошибочно задержанное важное письмо и пропущенная реклама могут иметь разные последствия. Поэтому выбор подходящей модели требует обсуждения задачи, а не только поиска наибольшего значения общей метрики.
Сравнить другой вариант
Вторая учебная модель обнаружила четыре из пяти нежелательных писем, но ошибочно отметила как спам шесть обычных. Правильно сохранены восемьдесят девять обычных писем; вместе с четырьмя найденными нежелательными это девяносто три верных ответа. Общая доля снизилась до 93 процентов. При этом полнота обнаружения спама, recall, равна четырём из пяти, или 80 процентам. Среди десяти помеченных писем действительно нежелательны четыре. Этот показатель precision равен 40 процентам. У двух метрик разные знаменатели.
Связать оценку с будущим использованием
Нельзя автоматически объявить второй вариант лучше по всем обстоятельствам: он пропускает меньше спама, но задерживает часть обычных писем. Нужно определить допустимые последствия ошибок и способ проверки спорных случаев. Оценку проводят на данных, которые не использовались для настройки конкретного решения, иначе результат может оказаться слишком оптимистичным. Даже отдельный тестовый набор должен отражать ожидаемые условия работы. Если состав писем изменится, прежние показатели могут перестать описывать реальное качество.
Попробуйте на практике
Посчитайте показатели двух вымышленных фильтров на одном наборе из двадцати писем: восемнадцать обычных и два нежелательных.
- Для первого фильтра примите правило все письма обычные. Посчитайте число правильных ответов и найденных нежелательных писем.
- Для второго фильтра задайте результат: оба нежелательных письма найдены, но три обычных ошибочно отмечены как спам.
- Разложите ответы второго фильтра на четыре группы и проверьте, что их сумма равна двадцати.
- Вычислите общую долю правильных ответов, полноту обнаружения нежелательных писем и долю настоящего спама среди отмеченных.
- Объясните различие фильтров человеку, которому важно не потерять обычное письмо. Не выбирайте победителя без обсуждения последствий ошибок.
Как проверить результат. Первый фильтр даёт 90 процентов верных ответов и нулевую полноту спама. Второй даёт 17 верных ответов из 20, то есть 85 процентов; полнота равна 100 процентам, precision составляет 2 из 5, или 40 процентов.
Частые вопросы
Accuracy бесполезна при редком классе?
Не обязательно. Она остаётся определённой метрикой, но может скрывать важные ошибки. Её полезно читать вместе с составом набора и показателями отдельных классов.
Можно ли выбрать метрику после просмотра красивого результата?
Так легко подстроить оценку под уже полученные ответы. Лучше заранее определить цель, последствия ошибок и основные показатели, а затем честно проверить выбранное решение.
Самостоятельный разбор темы. Содержание конкретной обучающей программы здесь не представлено.