Предположим, я хочу узнать классификатор, который предсказывает, является ли электронная почта спамом. И предположим, что только 1% писем являются спамом.
Проще всего было бы изучить тривиальный классификатор, который говорит, что ни одно из писем не является спамом. Этот классификатор дал бы нам точность 99%, но он не выучил бы ничего интересного и имел бы 100% ложных негативов.
Чтобы решить эту проблему, люди сказали мне «уменьшить выборку» или изучить подмножество данных, где 50% примеров - это спам, а 50% - не спам.
Но меня беспокоит такой подход, поскольку, как только мы построим этот классификатор и начнем использовать его в реальном объеме электронных писем (в отличие от набора тестов 50/50), он может предсказать, что многие электронные письма являются спамом, когда они ' действительно нет. Просто потому, что он привык видеть гораздо больше спама, чем на самом деле в наборе данных.
Итак, как мы можем решить эту проблему?
(«Повышение частоты дискретизации» или повторение примеров положительного обучения несколько раз, так что 50% данных - это положительные примеры обучения, похоже, страдает от подобных проблем.)