Допустим, у вас есть модель логистической регрессии для обнаружения спама в электронной почте, которая прогнозирует значение от 0 до 1, представляющее вероятность того, что данное электронное письмо является спамом. Прогноз 0,50 означает 50% вероятность того, что электронное письмо является спамом, прогноз 0,75 означает 75% вероятность того, что электронное письмо является спамом, и так далее.
Вы хотите развернуть эту модель в приложении электронной почты, чтобы фильтровать спам в отдельную почтовую папку. Но для этого вам необходимо преобразовать необработанный числовой результат модели (например, 0.75
) в одну из двух категорий: «спам» или «не спам».
Чтобы выполнить это преобразование, вы выбираете пороговую вероятность, называемую порогом классификации . Примеры с вероятностью выше порогового значения затем присваиваются положительному классу , классу, на который вы тестируете (здесь, spam
). Примеры с меньшей вероятностью отнесены к отрицательному классу , альтернативному классу (здесь not spam
).
Нажмите здесь, чтобы получить более подробную информацию о пороге классификации.
Вам может быть интересно: что произойдет, если прогнозируемая оценка равна порогу классификации (например, оценка 0,5, где порог классификации также равен 0,5)? Обработка этого случая зависит от конкретной реализации, выбранной для модели классификации. Например, библиотека Keras прогнозирует отрицательный класс, если оценка и порог равны, но другие инструменты/платформы могут обрабатывать этот случай по-другому.
Например, предположим, что модель оценивает одно электронное письмо как 0,99, предсказывая, что вероятность того, что электронное письмо является спамом, составляет 99%, а другое письмо имеет рейтинг 0,51, что означает, что вероятность того, что оно является спамом, составляет 51%. Если вы установите порог классификации равным 0,5, модель классифицирует оба письма как спам. Если вы установите пороговое значение 0,95, только электронное письмо с рейтингом 0,99 будет классифицировано как спам.
Хотя 0,5 может показаться интуитивным порогом, это не очень хорошая идея, если цена неправильной классификации одного типа больше, чем другого, или если классы несбалансированы. Если только 0,01% электронных писем являются спамом или если неправильная регистрация законных электронных писем хуже, чем попадание спама во входящие, маркировка всего, что модель считает спамом с вероятностью не менее 50%, поскольку спам приводит к нежелательным результатам.
Матрица путаницы
Оценка вероятности не является реальностью или основной истиной . Для каждого результата двоичного классификатора существует четыре возможных результата. В примере с классификатором спама, если вы расположите основную истину в виде столбцов, а прогноз модели — в виде строк, результатом будет следующая таблица, называемая матрицей путаницы :
Фактический позитив | Фактический отрицательный | |
---|---|---|
Прогнозируемый положительный | Истинно положительный результат (TP) : спам-сообщение правильно классифицируется как спам. Это спам-сообщения, автоматически отправляемые в папку «Спам». | Ложное срабатывание (FP) : электронное письмо, не являющееся спамом, ошибочно классифицированное как спам. Это законные электронные письма, которые попадают в папку «Спам». |
Прогнозируемый отрицательный | Ложноотрицательный результат (FN) : спам-письмо, ошибочно классифицированное как не-спам. Это спам-сообщения, которые не улавливаются спам-фильтром и попадают во входящие. | Истинно отрицательный результат (TN) : электронное письмо, не являющееся спамом, правильно классифицировано как не спам. Это законные электронные письма, которые отправляются непосредственно в почтовый ящик. |
Обратите внимание, что сумма в каждой строке дает все прогнозируемые положительные результаты (TP + FP) и все прогнозируемые отрицательные значения (FN + TN), независимо от их достоверности. Между тем, сумма в каждом столбце дает все реальные положительные значения (TP + FN) и все реальные отрицательные значения (FP + TN) независимо от классификации модели.
Если общее количество фактических положительных результатов не близко к общему количеству фактических отрицательных значений, набор данных несбалансирован . Примером несбалансированного набора данных может быть набор из тысяч фотографий облаков, где интересующий вас редкий тип облаков, скажем, спиральные облака, появляется только несколько раз.
Влияние порога на истинные и ложные положительные и отрицательные результаты
Различные пороговые значения обычно приводят к разному количеству истинных и ложноположительных результатов, а также истинных и ложноотрицательных результатов. В следующем видео объясняется, почему это так.
Попробуйте изменить порог самостоятельно.
Этот виджет включает в себя три набора данных игрушек:
- Разделенный , где положительные примеры и отрицательные примеры, как правило, хорошо дифференцированы, при этом большинство положительных примеров имеют более высокие баллы, чем отрицательные.
- Неразделенный , где многие положительные примеры имеют более низкие оценки, чем отрицательные, а многие отрицательные примеры имеют более высокие оценки, чем положительные примеры.
- Несбалансированный , содержащий лишь несколько примеров положительного класса.