Библиотека собеса по 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
⚡️ Мы запускаем онлайн-курс по машинному обучению для Data Science.

Хочешь войти в Data Science, но не знаешь, с чего начать?
А может, ты уже в теме, но чувствуешь, что знаний не хватает?

Старт курса — 12 августа, и это отличный шанс пройти весь путь — от теории до уверенного применения.

Что внутри:
— от линейных моделей и градиентного спуска до бустинга и рекомендательных систем
— реальные примеры, практика, задачи и живая менторская поддержка
— всё, что нужно, чтобы не просто разобраться, а применять ML в реальных проектах

Ведет курс Мария Жарова:
ML-инженер в Wildberries, преподаватель МФТИ, ТГУ и МИФИ, практик и автор канала @data_easy

🎁 По промокоду Earlybird — скидка 10.000 рублей, только до 27 июля.

Для первых 10 студентов мы подготовили эксклюзивный лонгрид по теме курса, который позволит начать учиться уже сейчас.

👉 Записаться на курс
Зачем в машинном обучении изучают и моделируют враждебные воздействия (adversarial attacks), если в реальной жизни никто не «рисует шум» на картинки

Adversarial-примеры показывают, насколько модель может быть уязвима: малозаметный шум для человека способен полностью изменить её решение. Это значит, что модель не «понимает» суть, а опирается на хрупкие паттерны.

Анализ таких атак помогает выявлять слабые места и делать ИИ более надёжным — особенно там, где ошибка критична: в медицине, транспорте, безопасности.


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

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

Библиотека собеса по Data Science
2👍2
🔥 Хороший ML-разработчик не начинает с нейросетей

На собеседовании по ML System Design кандидату дают задачу «предсказать отток», а он сразу лезет в нейросети. Красиво, модно, дорого.

Но профи думает иначе:

💭 Логрегрессия? Градиентный бустинг?
💭 А сколько у нас данных и времени?
💭 Что с интерпретируемостью?

Потому что не выбрать адекватную модель — это уже ошибка.

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

➡️ На курсе разберём:

— линейные модели, деревья, PCA, кластеризацию
— метрики, переобучение, bias vs variance
— инженерные подводные камни, которые идут сразу после fit()

🎁 Скидка 10 000₽ по промокоду Earlybird, только до 27 июля.

А ещё — подарок для первых 10 участников: специальный лонгрид по теме курса, чтобы вы могли начать погружение в материал уже сегодня.

🔗 Успей записаться — и начни карьеру в Data Science уже через 3 месяца!
📍 Почему выбор тестовой выборки может сильнее повлиять на выводы о модели, чем архитектура или гиперпараметры

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

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

В машинном обучении качество модели — это качество вывода о ней, и тестовая выборка — его основа. Это особенно критично в задачах с перекосом классов, изменяющейся средой и высокой ценой ошибки.

Библиотека собеса по Data Science
Please open Telegram to view this post
VIEW IN TELEGRAM
2👍1
😤 Устал листать туториалы, которые не складываются в картину

У тебя в голове уже есть логрегрессии, деревья, метрики и какая-то PCA, но системного понимания всё нет?

Пора с этим разобраться!

Наш курс по классическому ML:

— научит выбирать адекватные модели под задачу
— разложит метрики, переобучение и bias по полочкам
— покажет, что скрывается за fit/predict, и что с этим делать

🔔 До 27 июля по промокоду Earlybird минус 10.000₽

P.S. Первые 10 участников получат эксклюзивный лонгрид, чтобы начать изучать тему ещё до старта курса.

👉 Поменяй свою жизнь: старт карьеры в AI — успей до закрытия набора!
👉 Зачем оценивать не только точность модели, но и её задержку (latency) и потребление ресурсов

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

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

Особенно критично это в мобильных, embedded-устройствах и real-time сервисах.

Библиотека собеса по Data Science
Please open Telegram to view this post
VIEW IN TELEGRAM
👍2
🤔 «Начни сразу с нейросетей — зачем тебе логрегрессия?»

Это один из худших советов для начинающего ML-разработчика. Зрелость — это понимать, где простого достаточно, а не тянуть трансформеры на любую задачу из-за хайпа.

Классика ML — это не допотопная теория, а база (bias/variance, деревья, метрики), без которой не понять Deep Learning.

⚡️ Хотите освоить этот фундамент на реальных задачах? Приходите на наш курс по классическому ML. Только хардкор, только продовые задачи!

📆 Старт — 12 августа.

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

🎁 Последний день промокода Earlybird на скидку 10.000₽.

👉 Не упустите шанс!
Как управлять случайностью в генетических алгоритмах, чтобы обеспечить воспроизводимость результатов

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

Чтобы повысить воспроизводимость:
Используют контроль начальных условий генератора случайных чисел, чтобы получить повторяемые последовательности в однопоточных запусках.

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

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

Помнят, что в многопоточных и распределённых вычислениях точная битовая воспроизводимость невозможна из-за особенностей параллельных операций и вычислений с плавающей точкой.

Главное — стремиться к воспроизводимости не в точности битов, а в качестве и поведении алгоритма в целом.

Библиотека собеса по Data Science
Please open Telegram to view this post
VIEW IN TELEGRAM
2👍1
🔗 В чём ключевое отличие между предобучением self-supervised и supervised моделей, если обе используют один и тот же датасет

Разница не в данных, а в цели задачи (proxy task). Supervised-модель учится напрямую предсказывать метки — например, класс объекта. А self-supervised модель создаёт искусственную задачу (например, предсказать пропущенное слово или порядок кадров в видео), которая не требует ручной разметки.

➡️ Это позволяет модели выучить общие представления (features), которые полезны и для других задач.

Важно, что self-supervised обучение часто извлекает более структурированные и универсальные признаки, потому что не фиксируется на конкретной метке, а вынуждена «понимать» контекст и структуру входа.

➡️ На практике это даёт мощную и масштабируемую альтернативу ручной разметке — особенно при работе с текстом, изображениями или аудио.

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

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

Более того, некоторые модели (особенно нейронные сети для табличных данных) могут использовать позиционную информацию, особенно если данные подаются как последовательность. А при 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