Валидация ML: утечки данных, группы, время и кросс-валидация

Модель показывает хорошую ошибку, но проверяли ли мы её на действительно новых данных? Здесь собраны ситуации, где обычное разбиение строк недостаточно: одно устройство встречается в разных частях, целевая переменная приходит с задержкой, а test незаметно участвует в выборе модели.

Начать практику: Утечка через test: выбор модели по тестовой выборке.

Вопросы с выбором ответа. Проверка доступна без регистрации.

Как проходить

Начните с роли test и пересечения объектов. Затем разберите одинаковые фолды для сравнения моделей, refit в GridSearchCV и момент доступности целевой переменной. Завершите калибровкой, трансформацией новых данных и выбором сплиттера. Обучать модели для прохождения вопросов не нужно.

На что обратить внимание

Спросите, какую будущую ситуацию имитирует проверка: новое устройство, новый момент времени или новую строку знакомого объекта. Затем проверьте, какие данные были доступны в этот момент и какие решения уже приняли по validation.

Задания

  1. Утечка через test: выбор модели по тестовой выборке — вопрос.
  2. Утечка групп при разбиении ML-данных — вопрос.
  3. Сравнение ML-моделей на разных фолдах — вопрос.
  4. GridSearchCV refit=True: на каких данных обучен best_estimator — вопрос.
  5. Временная валидация ML: когда целевая переменная доступна — вопрос.
  6. CalibratedClassifierCV: как сохранить групповой сплит — вопрос.
  7. StandardScaler: transform на новых данных — вопрос.
  8. KFold или StratifiedKFold: регрессия и классификация — вопрос.

Продолжить обучение

Разберите тему по порядку в курсе Классическое машинное обучение: алгоритмы и практика на Python.

Связанная практика: Задачи scikit-learn: обучение модели и проверка ошибок.

Валидация ML: утечки данных, группы, время и кросс-валидация