← Вернуться к неделе 9
Умное саммари · Урок 9 · Ловушки анализа и обучение без учителя

Как не обмануть себя
данными и метрикой

Девятая неделя — это история не только о модели, но и о честном эксперименте. Сначала учимся правильно выбирать модель и держать финальный test под замком. Затем разбираем две типовые ловушки — data leakage и data snooping, смотрим на парадокс Симпсона и делаем мост к unsupervised learning.

TRAIN учит
CV выбирает
→
TEST проверяет
и молчит до финала
→
Leakage
ответы протекли
→
Snooping
мы слишком много смотрели
→
Simpson + clusters
группы меняют смысл
1Сравниваем кандидатов по CV
2Открываем TEST только после выбора
3Ловим leakage и snooping
4Проверяем, не смешали ли группы
5Если target исчез, ищем структуру

Главная формула недели

TRAIN учит. CV выбирает. TEST проверяет. Эти роли нельзя смешивать.

Коротко про ловушки

Leakage — запрещённая информация попала в обучение. Snooping — мы принимали решения, оглядываясь на один и тот же test.

Новый поворот

В unsupervised learning готового target нет. Мы не угадываем ответ, а ищем скрытую структуру данных.

Сильная метрика сама по себе ничего не доказывает. Нужно ещё спросить: как именно был построен эксперимент, кто на кого посмотрел и не замешались ли важные группы в одну среднюю картину.
TEST — не консультант. Если вы начали спрашивать его мнение после каждого шага, он уже не экзаменатор, а уставший член команды. 😄

Фразы урока: «Высокая метрика ничего не стоит, если эксперимент нечестный» · «Данные не соврали. Мы задали им слишком грубый вопрос».

Лист 1 · маршрут недели
Честная проверка модели

Сначала выбираем.
Потом проверяем.

TRAIN
учим кандидатов
Cross-Validation
честное сравнение
Выбор модели
фиксируем решение
TEST
финальный экзамен
CV — это серия честных мини-экзаменов внутри TRAIN. TEST даже не заходит в аудиторию до финала.

CV отвечает

Какой кандидат выглядит лучше внутри TRAIN, если сравнивать всех по одинаковым правилам.

TEST отвечает

Насколько хорошо уже выбранное решение работает на независимых новых данных.

Когда TEST портится?

Как только результат на test повлиял на следующий выбор модели, метрики, признаков или параметров, этот test перестал быть независимым.

Правильный вопрос

Не «кто показал лучший score хоть где-нибудь», а «какое решение мы выбрали честно и как оно ведёт себя на новом наборе».

Идея selection vs final evaluation — центральная. CV помогает выбирать кандидата. TEST нужен, чтобы не врать себе о качестве уже выбранного решения.

Мини-итог: если перепутать роли TRAIN/CV/TEST, все остальные метрики становятся подозрительными.

Лист 2 · train, CV, test
Leakage и snooping

Две ловушки, которые часто
маскируются под успех

Data leakage

Информация протекла. В признаки, в preprocessing или в обучение попало то, чего модель не должна знать в момент реального прогноза.

scaling до splitimputation по всему датасетуfeature selection с testпризнак из будущего

Data snooping

Мы подглядывали. Аналитик много раз смотрел на одни и те же данные проверки и менял решения после каждого взгляда.

10 попыток на одном testлучший результат победилтонкая настройка по test

Разница в одной фразе

Leakage — в модель просочилась лишняя информация. Snooping — лишнюю информацию получил уже сам аналитик и использовал её для выбора решения.

Одинаковый эффект

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

Подготовка данных тоже должна быть честной. Split делит не только модели. Он делит весь процесс: scaling, imputation, отбор признаков и оценку.
1. SplitСначала делим данные, а не наоборот.
2. PreprocessЛюбые параметры preprocessing учим только на train-части.
3. CVСравниваем варианты внутри TRAIN.
4. FreezeФиксируем модель, признаки, threshold и идеи.
5. Final TESTОткрываем независимый test один раз для честной проверки.
Если вы «только один разочек» посмотрели на final test и после этого поменяли threshold, congratulations: test уже работал бесплатно консультантом. 🙃

Что делать, если test испорчен? Нужен новый независимый test. В продвинутом варианте помогает nested CV.

Лист 3 · leakage vs snooping
Парадокс Симпсона

Средняя картинка может
рассказать не ту историю

Общая таблица

Группа A
Группа B

На общей сумме кажется, что B лучше A.

А если разделить по подгруппам?

Подгруппа 1: A
Подгруппа 1: B
Подгруппа 2: A
Подгруппа 2: B

Внутри групп картина может развернуться.

Что происходит?

Мы смешали в одну таблицу разные процессы: клиники, уровни сложности, возрастные группы, каналы продаж или что-то ещё.

Правильная реакция

Не кричать «данные ошиблись», а спросить: какие группы могли быть смешаны, насколько они разные и нужно ли сравнивать их отдельно.

Ключевая фраза

Данные не соврали. Мы задали им слишком грубый вопрос и потеряли важную структуру внутри.

Где искать?

В медицине, образовании, маркетинге, A/B-тестах и везде, где группы отличаются по составу.

Три вопроса

Что агрегировано? Какая скрытая переменная влияет? Что видно внутри подгрупп?

Зачем это аналитикам?

Потому что красивый общий график может подтолкнуть к неправильному решению бизнеса или науки.

Мини-итог: Simpson’s paradox напоминает: перед выводом о связи полезно проверить структуру групп.

Лист 4 · Simpson’s paradox
Unsupervised learning

Когда target исчезает,
аналитик начинает искать структуру

Supervised learningЕсть готовый target. Учимся предсказывать известный ответ: spam / not spam, price, churn, disease risk.
Unsupervised learningГотового ответа нет. Мы ищем группы, похожести, выбросы, представления и скрытую структуру.
Покупатели
сегменты клиентов
Пациенты
похожие профили
Новости
темы и жанры
Изображения
поиск похожих картинок
Цвета
сжатие палитры
Аномалии
кто не похож ни на кого

Что такое кластер?

Группа объектов, похожих друг на друга по выбранным признакам.

Почему нет одной истины?

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

Главный смысл

Кластер — не приговор и не доказанная истина, а гипотеза о структуре данных, которую нужно интерпретировать.

Кластеризация отвечает на вопрос, который вы зашили в признаки. Если выбраны плохие признаки или масштабы, можно получить технически аккуратные, но бессмысленные группы.
Кластеризация не говорит: «Я нашла истину». Она говорит: «Псс... кажется, здесь есть интересная структура, посмотри внимательнее». 👀

Мост к следующим темам: дальше важны расстояния, масштабирование и разные алгоритмы — K-means, иерархическая кластеризация, DBSCAN.

Лист 5 · unsupervised learning
Финальная карта недели 9

Честный аналитик делает не только модель,
но и правильный эксперимент

K-means

🎯

Ищет центры групп и тянет объекты к ближайшему центру. Хорош для компактных облаков, но нужно заранее задать число кластеров.

Иерархическая

🌳

Строит дерево похожести: можно смотреть на данные на разных уровнях детализации и видеть, кто к кому присоединился.

DBSCAN

🧲

Собирает плотные области и умеет выделять шум. Полезен, когда группы неровные и есть выбросы.

1. Что отличает leakage от snooping?

Leakage — лишняя информация протекла в модель или preprocessing. Snooping — аналитик менял решения, слишком часто оглядываясь на один и тот же test.

2. Что делать, если final test уже повлиял на решение?

Признать, что независимость потеряна, и использовать новый независимый test. Для продвинутого сценария помогает nested CV.

3. Что спрашивать при Simpson’s paradox?

Какие подгруппы были смешаны? Что видно внутри них? Не меняется ли вывод после разделения по важному признаку?

4. Что меняется в unsupervised learning?

Исчезает готовый target. Мы больше не проверяем «правильно ли предсказали ответ», а ищем структуру: группы, похожесть, выбросы, представления.
НЕ ПОДГЛЯДЫВАТЬ → НЕ ПУТАТЬ СРЕДНЕЕ С ИСТИНОЙ → УМЕТЬ ИСКАТЬ СТРУКТУРУ БЕЗ ГОТОВОГО ОТВЕТА
Потомкам будущего: названия инструментов поменяются. Но вопрос «а мы сейчас случайно не обманываем себя?» никуда не денется. 😎