Сэмплирование и разделение: проверьте свое понимание

Для следующих вопросов щелкните нужную стрелку, чтобы проверить свой ответ:

Представьте, что у вас есть набор данных с соотношением положительных и отрицательных значений 1:1000. К сожалению, ваша модель всегда предсказывает класс большинства. Какая техника лучше всего поможет вам справиться с этой проблемой? Обратите внимание, что вы хотите, чтобы модель сообщала о калиброванной вероятности.
Просто уменьшите количество отрицательных примеров.
Это хорошее начало, но вы измените базовую скорость модели, чтобы она больше не калибровалась.
Уменьшите число отрицательных примеров (класс большинства). Затем увеличьте вес класса с пониженной выборкой на тот же коэффициент.
Это эффективный способ справиться с несбалансированными данными и при этом получить реальное распределение меток. Обратите внимание, что имеет значение, заботитесь ли вы о том, сообщает ли модель калиброванную вероятность или нет. Если его не нужно калибровать, вам не нужно беспокоиться об изменении базовой скорости.
Какие методы теряют данные из хвоста набора данных? Проверить все, что относится.
Фильтрация персональных данных
Фильтрация PII из ваших данных может удалить информацию из хвоста, исказив ваше распределение.
Взвешивание
Взвешивание примеров изменяет важность различных примеров, но не теряет информацию. На самом деле, добавление веса к примерам с хвостом может помочь вашей модели изучить поведение с хвостом.
Понижающая дискретизация
Хвост распределения признаков потеряет информацию при субдискретизации. Однако, поскольку мы обычно уменьшаем выборку мажоритарного класса, эта потеря обычно не является большой проблемой.
Нормализация
Нормализация работает с отдельными примерами, поэтому она не вызывает смещения выборки.
Вы работаете над задачей классификации и случайным образом разбиваете данные на наборы для обучения, оценки и тестирования. Ваш классификатор работает отлично! Но в производстве классификатор — это полный провал. Позже вы обнаружите, что проблема была вызвана случайным разделением. Какие типы данных подвержены этой проблеме?
Данные временного ряда
Случайное разделение разделяет каждый кластер на разделение тестов/обучения, предоставляя «предварительный просмотр» модели, которая не будет доступна в рабочей среде.
Данные, которые не сильно меняются со временем
Если ваши данные не сильно меняются со временем, у вас будет больше шансов на случайное разделение. Например, вы можете определить породу собаки на фотографиях или предсказать пациентов с риском развития порока сердца на основе прошлых данных биометрии. В обоих случаях данные обычно не меняются со временем, поэтому случайное разбиение не должно вызывать проблем.
Группы данных
Тестовый набор всегда будет слишком похож на обучающий набор, потому что кластеры похожих данных есть в обоих наборах. Модель будет иметь лучшую предсказательную силу, чем она есть на самом деле.
Пакетные данные (данные, поступающие прерывистыми пакетами, а не непрерывным потоком)
Кластеры похожих данных (всплески) будут отображаться как при обучении, так и при тестировании. Модель будет делать лучшие прогнозы при тестировании, чем с новыми данными.