Библиотека собеса по Data Science | вопросы с собеседований
4.31K subscribers
440 photos
10 videos
1 file
453 links
Вопросы с собеседований по Data Science и ответы на них.

По рекламе: @proglib_adv

Учиться у нас: https://proglib.io/w/7dfb7235

Для обратной связи: @proglibrary_feeedback_bot

Наши каналы: https://t.me/proglibrary/9197
Download Telegram
🗂 Почему важно учитывать порядок признаков в табличных данных, даже если большинство моделей вроде бы инвариантны к нему

Хотя многие алгоритмы (например, деревья решений) действительно не чувствительны к порядку колонок, сам порядок может влиять на всё, что вокруг модели:
на предобработку (например, при стандартизации пакетами или сохранении схемы);
на обратную совместимость при обновлении моделей;
на работу в продакшене, где порядок может нарушиться при сериализации/десериализации.

Более того, некоторые модели (особенно нейронные сети для табличных данных) могут использовать позиционную информацию, особенно если данные подаются как последовательность. А при autoML или feature selection шаги могут зависеть от начального порядка, если нет явной нормализации.

Библиотека собеса по Data Science
Please open Telegram to view this post
VIEW IN TELEGRAM
👍21
Почему модель может работать хуже после удаления «казалось бы бесполезных» признаков

Потому что даже признаки, которые по отдельности кажутся слабыми или нерелевантными, могут играть ключевую роль в комбинации с другими. Это называется взаимодействие признаков (feature interaction). Модель может улавливать сложные зависимости между группами признаков, и удаление одного может «сломать» эту структуру.

Кроме того, признаки могут нести косвенную информацию: например, случайный ID клиента может коррелировать со временем регистрации, а значит — с поколением пользователей или сезоном. Даже если это кажется «шумихой», модель может использовать это как полезный сигнал.

Это одна из причин, почему автоматическая отборка признаков — не всегда безопасна, и почему важно анализировать модель целостно, а не только по значимости отдельных фичей.

Библиотека собеса по Data Science
Please open Telegram to view this post
VIEW IN TELEGRAM
👍52🔥2
👉 В вашей задаче данные поступают постепенно, а разметка появляется с задержкой. Как организовать обучение модели в таких условиях

Это ситуация с отложенной обратной связью — типична для рекомендательных систем, финтеха, healthtech и других отраслей.

Тут важно:
🔎 Буферизовать метки: хранить все входные данные и их предсказания, чтобы при появлении метки — привязать её к нужному входу.
🔎Обучать с лагом: ввести обучающий цикл, который использует только старые (полностью размеченные) данные.
🔎Использовать псевдоразметку или онлайн-сигналы: если задержка критична, можно временно использовать прокси-метки или слабые сигналы.
🔎Контролировать data leakage: при любой задержке легко по ошибке обучиться на будущих данных.
🔎 Оценка через holdback-стратегии: часть данных можно специально не использовать для обучения, чтобы позже протестировать модель на будущем.

Такой подход ближе к stream learning или delayed feedback learning — важен там, где модель взаимодействует с миром, а не просто классифицирует CSV.

Библиотека собеса по Data Science
Please open Telegram to view this post
VIEW IN TELEGRAM
2👍2
➡️ В вашей задаче класс «положительный» встречается крайне редко. Модель даёт 99% accuracy — но приносит ноль пользы.

Это ситуация дисбаланса классов, и такая высокая accuracy — иллюзия: модель просто всегда предсказывает «отрицательный» класс.

Важно:
➡️ Перейти к метрикам, чувствительным к редкому классу: F1, precision/recall, ROC AUC, PR AUC.
➡️ Попробовать балансировку: undersampling/oversampling, генерация данных (например, SMOTE).
➡️ Использовать взвешенные лоссы или кастомные метрики, чтобы усилить «наказание» за ошибки на редком классе.
➡️ Рассмотреть другой подход — например, не классификацию, а ранжирование, если цель — находить top-N полезных примеров.
➡️ Проконсультироваться с бизнесом: возможно, важна high precision, а recall можно жертвовать — или наоборот.

Библиотека собеса по Data Science
Please open Telegram to view this post
VIEW IN TELEGRAM
🔥32👍1
📈 Как вы будете оценивать качество модели, если у вас нет доступных «истинных» меток в продакшене

Это реальная проблема во многих продуктах — например, в рекомендательных системах, предсказаниях отмен заказов, финансовом скоринге и т.п.

Возможные подходы:

▶️ Делayed feedback: использовать метки, которые появляются с задержкой. Всё равно сохраняем предсказания и «догоняем» оценку позже.

▶️ Прокси-метрики: если нет ground truth, можно использовать поведенческие сигналы — например, клик или отказ (proxy for relevance).

▶️ Shadow-модель: запускать модель параллельно с текущей системой и сравнивать предсказания, без воздействия на пользователя.

▶️ A/B-тестирование: запускать часть трафика на новую модель и измерять бизнес-метрики (конверсии, выручку и т.д.).

▶️ Сравнение распределений: можно следить за prediction drift — если распределение выходов резко отличается от обучающего, это может быть сигналом о деградации.

▶️ Модель доверия: обучить вторую модель, которая предсказывает вероятность ошибки основной — своего рода safety layer.

Библиотека собеса по Data Science
Please open Telegram to view this post
VIEW IN TELEGRAM
2👍2
👉 Как бы вы поступили, если ваша модель показывает хорошие метрики, но бизнес-цель при этом не улучшается

Возможные причины и действия:

Неверные метрики: может быть, оптимизируется surrogate-метрика (например, ROC AUC), которая слабо коррелирует с бизнес-результатом.
→ Перейти к метрикам, отражающим бизнес (uplift, ROI, precision@top-K).

Неправильная точка принятия решения: модель даёт предсказания, но downstream-система их игнорирует или использует неправильно.
→ Проверить интеграцию: как именно модель влияет на решение.

Неверная целевая функция: возможно, модель обучена на задачу, которая не связана напрямую с целью (например, клик ≠ покупка).
→ Пересмотреть target или изменить бизнес-логику.

Эффект на поведение: модель меняет поведение пользователей так, что в итоге это ухудшает метрику (например, слишком агрессивная рекомендация вызывает отток).
→ Провести A/B-тест и анализ пост-эффектов.

Библиотека собеса по Data Science
4👍1🔥1
Как вы поймёте, что модель недостаточно сложна для вашей задачи, если при этом нет явных признаков недообучения по метрикам

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

Это может быть критично, особенно если:

Плохая способность к обобщению на сложные случаи
Например, модель уверенно справляется с типовыми примерами, но ошибается на edge cases, редких или более сложных подгруппах данных.

Ошибки сконцентрированы в важной подвыборке
Например, модель плохо работает на новых регионах, продуктах или временных периодах.

Сильная зависимость от простых фичей
Даже при высокой точности, если модель полагается только на "легкие" корреляции (например, средние значения), она может игнорировать тонкие сигналы.

Модель плохо обучается на добавленных сложных признаках
Если после добавления нетривиальных фич метрики почти не растут, возможно, архитектура модели не позволяет использовать их эффективно.

Анализ ошибок вручную
Просмотр ошибок показывает систематические промахи в логике, а не шум.

Библиотека собеса по Data Science
Please open Telegram to view this post
VIEW IN TELEGRAM
👍3😁21
➡️ Почему модель может демонстрировать высокое качество на offline-валидации, но всё равно проваливаться в A/B-тесте

Одна из частых причин — разрыв между тем, что измеряется в offline-метрике, и реальной бизнес-целью. Например, модель может хорошо предсказывать вероятность клика, но при этом ухудшать пользовательский опыт или уменьшать выручку, если неправильно влияет на поведение системы в целом.

Также A/B-тест чувствителен к особенностям внедрения: может меняться порядок рекомендаций, контекст показа, или даже то, как пользователи взаимодействуют с продуктом, что невозможно учесть в offline-оценке.

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

Поэтому расхождение между offline и online — это не ошибка, а естественное проявление того, что модель — это часть более широкой системы.

Библиотека собеса по Data Science
Please open Telegram to view this post
VIEW IN TELEGRAM
👍2
🤔 Зачем вообще понимать, как работает ML?

Сейчас многие просто запускают модельку в sklearn — и радуются точности 0.92.

Вроде всё работает… но почему?
А когда сломается — что делать?


Машинное обучение — это система, которую можно понять.

Если знаешь, что делает градиентный спуск, зачем нужен бустинг и как дерево принимает решения — ты не просто «запускаешь», ты управляешь моделью.

👉 Мы сделали курс, чтобы в это было реально въехать:

— без сложных формул;
— с интуитивными объяснениями;
— от простого к сложному.

Если хочешь перейти от «гуглю код» к «понимаю, как это работает» — ты по адресу!

Стартуем в сентябре — бронируй место на курсе уже сейчас
👍1
😊 Почему важно учитывать «cost asymmetry» при обучении модели, даже если метрики хорошие

Во многих прикладных задачах цена разных ошибок неравнозначна.

Например, в задаче обнаружения мошенничества ложноположительное срабатывание может раздражать клиента, но ложное отрицание — стоит компании денег. Даже если модель показывает хорошие значения precision, recall или F1, они могут не отражать реального ущерба.

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

Библиотека собеса по Data Science
Please open Telegram to view this post
VIEW IN TELEGRAM
👍42
🆕 Зачем анализировать не только финальные предсказания модели, но и её промежуточные представления (features, embeddings)

Промежуточные представления дают понимание того, как именно модель «видит» данные.

Иногда модель может давать правильные предсказания, но по неправильным причинам — например, полагаясь на артефакты или коррелирующие, но не причинно значимые признаки. Анализ внутренних слоёв, embeddings и attention-механизмов позволяет выявить такие ложные зависимости до того, как они станут проблемой в продакшене. Кроме того, визуализация или кластеризация представлений может подсказать новые инсайты о данных: скрытые сегменты, шум, смещения.

Это особенно ценно при работе с «чёрными ящиками» вроде глубоких нейросетей — заглянуть внутрь, чтобы понять, что модель действительно «учится», а не просто запоминает.

Библиотека собеса по Data Science
Please open Telegram to view this post
VIEW IN TELEGRAM
4👍3