ar
Feedback
Библиотека собеса по Data Science | вопросы с собеседований

Библиотека собеса по Data Science | вопросы с собеседований

الذهاب إلى القناة على Telegram

Вопросы с собеседований по Data Science и ответы на них. Курс по Ai-агентам: https://clc.to/9L0Tqg По рекламе: @proglib_adv Учиться у нас: https://proglib.io/w/7dfb7235 Для обратной связи: @proglibrary_feeedback_bot

إظهار المزيد
4 491
المشتركون
+324 ساعات
+87 أيام
+4230 أيام
أرشيف المشاركات
➡️ Почему при обучении моделей иногда используют так называемый «teacher forcing», и какие у этого метода есть недостатки «Teacher forcing» — это техника, часто применяемая при обучении рекуррентных моделей, например, в задачах генерации текста или перевода. Во время обучения модель получает на вход правильные предыдущие шаги (правильные слова или символы), а не свои собственные предсказания. Это помогает быстрее учиться, так как модель не накапливает ошибки. Однако у этого подхода есть проблема:на этапе генерации (инференса) модель уже не видит правильных ответов, а опирается только на свои предыдущие предсказания. Если где-то ошибка — она может нарастать и «вести» модель в неверное состояние, что снижает качество результатов. Это называется «рассогласованием» между тренировкой и тестом (train-test mismatch). Чтобы его уменьшить, используют разные техники, например, постепенный переход от teacher forcing к использованию собственных предсказаний модели (scheduled sampling). Библиотека собеса по Data Science

🤖 Знаете, чем настоящий AI отличается от чат-бота? Чат-бот просит перезагрузить роутер, а настоящий AI уже умеет читать ваши
🤖 Знаете, чем настоящий AI отличается от чат-бота? Чат-бот просит перезагрузить роутер, а настоящий AI уже умеет читать ваши эмоции в чате, включать музыку под ваше настроение, контролировать погрузку руды с точностью Терминатора и даже находить на КТ-снимках то, чего не заметит человеческий глаз. Современные компании для таких задач всё чаще используют Deep Learning — алгоритмы на основе нейросетей. Но чтобы попасть в эту лигу, нужен фундамент. И имя ему — Machine Learning. Наш новый курс по ML — это не волшебная таблетка. Это честный и структурированный путь в мир Data Science. Мы дадим вам базу, с которой вы: ✅ разберётесь, как мыслят машины (спойлер: матрицами!); ✅ научитесь строить работающие модели, а не карточные домики; ✅ получите трамплин для прыжка в Deep Learning. Хватит смотреть, как другие запускают ракеты. Пора строить свой собственный космодром. Начните с фундамента на нашем курсе по Machine Learning!

Почему модели машинного обучения иногда плохо работают на данных, которые выглядят похожими на тренировочные, но отличаются по распределению Это связано с явлением, называемым сдвигом распределения (distribution shift). Даже если новые данные внешне похожи на те, на которых модель училась, их статистические характеристики могут отличаться — например, изменилось соотношение классов, или изменился фон, освещение, стиль и т.д. Модель при этом «предполагает», что новые данные имеют то же распределение, что и тренировочные, и поэтому её предсказания становятся менее точными и менее надёжными. Причина в том, что модель фактически учится шаблонам, специфичным для тренировочных данных, а не универсальным закономерностям. Без специальных техник (например, адаптации домена, регуляризации, обучения на более разнообразных данных) она плохо обобщает. Библиотека собеса по Data Science

📍 Почему важно учитывать «индуктивные смещения» (inductive biases) при выборе архитектуры модели Индуктивное смещение — это всё, что модель предполагает о данных до обучения: структура, ограничения, способ обработки информации. Любая модель не учится «с нуля» — она делает предположения о том, как устроен мир. Если выбрать модель с неподходящими индуктивными смещениями, она может и выучить задачу, но потребуется гораздо больше данных и времени, потому что ей придётся «вытеснить» свои изначальные представления и создать новые с нуля. Почему это важно: ➡️ Помогает эффективно использовать данные: хорошее смещение направляет обучение. ➡️ Позволяет сократить переобучение: модель не тратит усилия на бессмысленные гипотезы. ➡️ Даёт более интерпретируемое поведение, если смещение явно соответствует задаче. Библиотека собеса по Data Science

Почему важно различать эпистемическую и алейаторную неопределённость в моделях машинного обучения Неопределённость в предсказаниях модели может иметь разные причины, и важно понимать, откуда она берётся: 1. Алейаторная неопределённость — это шум, который присущ данным. Например, если вы пытаетесь предсказать, выпадет ли дождь, а в атмосфере реально случаются случайные флуктуации — никакая модель не даст 100% уверенности. Это естественная неопределённость, которую нельзя устранить, даже если собрать бесконечно много данных. 2. Эпистемическая неопределённость — это неуверенность модели, связанная с незнанием. Она возникает, когда данных недостаточно, или когда модель попала в область, где она ничего раньше не видела. Эту неопределённость можно уменьшить, просто добавив больше данных или выбрав лучшую модель. Почему это важно:В медицине, например, если модель видит новый тип пациента, она может быть уверена на 95%, но это ложная уверенность. Если бы модель умела распознавать, что «она не знает», можно было бы передать случай врачу.В системах с принятием решений (автопилоты, финансы), эпистемическую неопределённость важно уметь выявлять, чтобы не доверять модели «вслепую».Разные виды неопределённости требуют разных стратегий: шум — это вопрос устойчивости, незнание — это повод улучшать данные или модель. Библиотека собеса по Data Science

Как взаимосвязаны информационная энтропия и функции потерь в машинном обучении Информационная энтропия — это мера неопределённости. Чем выше энтропия, тем больше «хаоса» в распределении: например, если модель предсказывает 50/50 между двумя классами, она максимально неуверенна. Когда мы обучаем модель, особенно классификатор, мы хотим, чтобы её предсказания были точными и уверенными там, где нужно. И вот тут возникает связь: 😶‍🌫️Некоторые функции потерь — например, кросс-энтропия — специально построены так, чтобы наказывать модель за неуверенность, особенно если она неуверенно ошибается. Если модель говорит: «Я почти уверен, что это класс А», а на самом деле правильный ответ — класс B, то функция потерь даст сильное наказание. А если она ошибается, но честно признаётся: «Я не знаю, вероятно, 50/50 между A и B», то наказание будет мягче. Эта логика пришла из информационной теории, где цель — сократить неопределённость. Обучение модели можно понимать как процесс уменьшения энтропии — мы учим её делать уверенные и точные предсказания, тем самым сокращая информационный «хаос». Библиотека собеса по Data Science

☝️ Последний шанс купить курсы Proglib Academy с доступом навсегда! Это не просто летняя распродажа, это финал эпохи. Мы дари
☝️ Последний шанс купить курсы Proglib Academy с доступом навсегда! Это не просто летняя распродажа, это финал эпохи. Мы дарим скидку 40% на все курсы, включая полностью обновлённый курс по Python (предложение НЕ ДЕЙСТВУЕТ только на курс по AI-агентам для DS-специалистов). Но главное: с 1 августа доступ ко всем новым курсам станет ограниченным. Успейте инвестировать в свои знания на самых выгодных условиях! 👉 Выбрать курс

☝️ Последний шанс купить курсы Proglib Academy с доступом навсегда! Это не просто летняя распродажа, это финал эпохи. Мы дари
☝️ Последний шанс купить курсы Proglib Academy с доступом навсегда! Это не просто летняя распродажа, это финал эпохи. Мы дарим скидку 40% на все курсы, включая полностью обновлённый курс по Python (предложение НЕ ДЕЙСТВУЕТ только на курс по AI-агентам). Но главное: с 1 августа доступ ко всем новым курсам станет ограниченным. Успейте инвестировать в свои знания на самых выгодных условиях! 👉 Выбрать курс https://proglib.academy/python

👉 Почему в задачах с имбалансом классов часто возникает проблема маскировки (masking) при обучении, и как с ней бороться Маскировка — ситуация, когда модель «игнорирует» редкий класс из-за его малого веса в общей выборке и концентрируется на частом классе, что приводит к плохому распознаванию редких событий. Почему возникает: ➡️ Стандартные функции потерь (например, cross-entropy) суммируют ошибки по всем объектам без учёта дисбаланса. Большой класс «перекрывает» вклад маленького, и градиенты, связанные с редким классом, оказываются незначительными. ➡️ При классическом обучении модель «ленится» выделять сложные и редкие паттерны, так как проще минимизировать ошибку на доминирующем классе. Как бороться: ➡️ Взвешивание классов — увеличить вес ошибки на редком классе в функции потерь. ➡️ Использование специализированных функций потерь, например, focal loss, которая уменьшает вклад легко классифицируемых объектов и фокусируется на трудных. ➡️ Семплирование: oversampling редких классов или undersampling частых, чтобы выровнять распределение. ➡️ Генерация синтетических данных (SMOTE, ADASYN) для редких классов. ➡️ Использование ансамблей, где отдельные модели могут специализироваться на редких классах. Библиотека собеса по Data Science

🔎 Как и почему возникает проблема каллибровки вероятностей в моделях машинного обучения Модель может выдавать хорошие предсказания с точки зрения точности, но её оценка вероятностей быть плохо откалиброванной — то есть, предсказанные вероятности не соответствуют реальной частоте событий. Во многих задачах (медицина, финансы, риск-менеджмент) важна не только метка класса, но и уверенность модели. Например, предсказать, что событие с вероятностью 0.9 действительно случится примерно в 90% случаев. Почему возникает несоответствие: ➡️ Используемые функции потерь (например, cross-entropy) и оптимизаторы не гарантируют идеальную калибровку. ➡️ Модели могут быть избыточно уверены (overconfident), особенно глубокие нейросети с ReLU и batch normalization. ➡️ Недостаток данных или несбалансированность классов искажает распределение вероятностей. Методы исправления Постобработка: ➡️ Плацинг (Platt Scaling) — логистическая регрессия по выходам модели. ➡️ Изотоническая регрессия — монотонная калибровка. ➡️ Температурное шкалирование (Temperature Scaling) — масштабирование логитов перед softmax. Встроенные методы: ➡️ Использование бэйесовских моделей или методы, учитывающие неопределённость (например, dropout в режиме теста). ➡️ Обучение с учётом калибровки (calibration-aware loss). Библиотека собеса по Data Science

🤔 Почему иногда стоит использовать заведомо переобученную модель, несмотря на риски На первый взгляд, переобучение — это зло. Но в некоторых ситуациях сознательное переобучение может быть оправдано, если: ✅ Качество важнее обобщения. Например, если модель работает только на строго ограниченном наборе данных (внутри одной компании, устройства, клиента), и обобщение на внешний мир не требуется.Переобученная модель используется как слабый компонент в ансамбле. Boosting часто строит переобученные деревья, которые в совокупности дают устойчивую модель.Нужно вытянуть максимум информации из сложных и «богатых» данных. Иногда регуляризация отрезает важные высокоуровневые зависимости. Переобученная модель может их уловить — главное, вовремя остановиться.Переобученная модель как инструмент анализа. Например, чтобы изучить, какие признаки «зашумлены», какие корреляции неустойчивы — переобучение может показать слабые места в данных. Библиотека собеса по Data Science

👇 Зачем обучать модель на синтетически сгенерированных данных, если есть реальные Синтетические данные могут показаться искусственными, но в некоторых ситуациях они становятся незаменимым инструментом, особенно когда: ➡️ Реальных данных мало, и модель склонна к переобучению. Синтетика помогает обобщить. ➡️ Некоторые сценарии в реальности редки, но критичны. Например, аварии в автономном вождении или сбои в медицине — их просто нет в нужном количестве в реальных логах. ➡️ Конфиденциальность или юридические ограничения. В здравоохранении, банках, телекомах реальные данные недоступны для открытой разработки — синтетические клоны могут сохранить статистику без утечки персональных данных. ➡️ Анализ worst-case behavior. Можно сгенерировать «провокационные» примеры, чтобы проверить, как модель реагирует на сложные случаи. Важно: хорошие синтетические данные должны сохранять структуру, шум и вариативность реального мира, иначе они приведут к модели-иллюзии. Библиотека собеса по Data Science

Зачем в задачах классификации можно использовать регрессию перед классификацией Иногда полезно предсказать непрерывную «оценку» или счёт, а потом превратить её в классы. Это особенно актуально, когда границы между классами нечёткие или имеют порядок. Примеры: ▶️ В задаче определения уровня токсичности (0 — «нейтрально», 1 — «слегка агрессивно», 2 — «очень токсично») можно сначала регрессировать «степень токсичности», а затем порогами разделить на классы. Это называется ordinal regression. ▶️ В медицинской диагностике — если заболевание имеет стадии, и они близки по смыслу, а не просто «класс 0/1», регрессия может дать более тонкие различия, чем жёсткая классификация. Иногда модель классификации может быть уверена на 51% в одном классе и 49% в другом — и потерять важную информацию. Регрессионный подход позволяет сохранить нюансы. Библиотека собеса по Data Science

❗ Первый вебинар нашего курса по AI-агентам уже прошёл! Запись уже выложили на обучающей платформе — можно влетать и догонять
❗ Первый вебинар нашего курса по AI-агентам уже прошёл! Запись уже выложили на обучающей платформе — можно влетать и догонять с комфортом. Первые слушатели уже оставили фидбэки — и, кажется, мы попали в точку: — «теперь наконец понял, как выбирать модели под задачу — раньше брал первую попавшуюся» — «без лишнего, по делу, в лайве — кайф» — «огонь, ожидания 100% оправданы лично у меня» Если хотели вписаться, но сомневались — ещё не поздно. Вебинары идут вживую, записи сохраняются, чат работает, материалы открыты. ⏳ Ещё можно догнать и пройти всё вместе с потоком. 👉 Залетай на курс

Зачем использовать функции потерь, нечувствительные к масштабу ошибки, например Huber loss, вместо стандартной MSE в регрессии Среднеквадратичная ошибка (MSE) сильно штрафует большие отклонения, из-за чего становится очень чувствительной к выбросам. Один аномальный объект может доминировать в градиентах и «утащить» всю модель. Huber loss — это гибрид MSE и MAE: ❇️ При малых ошибках она ведёт себя как MSE — гладко и удобно для градиентных методов. ❇️ При больших — как MAE, линейно, не позволяя выбросам слишком сильно влиять на обучение. Это особенно полезно, когда: ❇️ Данные содержат редкие, но сильные шумы (например, сенсоры, человеческие ошибки, аномалии). ❇️ Вы хотите получить модель, устойчивую к искажениям, но всё ещё удобную для оптимизации. Библиотека собеса по Data Science

🤔 Может ли модель машинного обучения «обмануть» нас, даже если метрики говорят, что всё хорошо Да — и делает это довольно часто. Модель может демонстрировать отличные метрики, но при этом решать не ту задачу, которую мы ей на самом деле поставили. Примеры: 1️⃣ Модель для автоматического отбора резюме может использовать косвенные признаки, связанные не с квалификацией, а с демографией — например, местом жительства или формулировками, типичными для определённых групп. 2️⃣ Модель для детекции токсичных комментариев может научиться просто игнорировать сленг или грамматические ошибки, если их нет в тренировке, и при этом «наказывать» культурные диалекты. 3️⃣ Модель детектирует трещины на снимках труб, но в обучающих данных почти все трещины были сфотографированы в солнечную погоду — и модель на самом деле распознаёт освещение, а не дефекты. Формально — всё отлично: log-loss низкий, ROC-AUC высокий. Но по сути — модель научилась «читерить». Это называют спурием-корреляциями (spurious correlations) и data leakage. Библиотека собеса по Data Science

🔮 Можно ли считать, что модель, которая хорошо работает на данных прошлого, «понимает» будущее Не совсем. Модель учится на исторических данных и выявляет в них закономерности. Но будущее может отличаться из-за новых факторов, изменений среды, смещения данных или неожиданных событий — это называется сдвигом распределения (data drift). Поэтому даже высокая точность на старых данных не гарантирует успех в будущем. Модель «понимает» прошлое, но не обладает настоящим «интеллектом» или «прозрением». Чтобы быть надёжной, её нужно регулярно переобучать и тестировать на свежих данных. Библиотека собеса по Data Science

👉 Может ли модель машинного обучения быть «неправильно правой» Да — и это довольно опасный случай. Модель может выдавать правильный результат, но по неправильной причине. Примеры: — Классическая история: модель для распознавания танков «научилась» отличать их от леса, но не по форме техники — а по погоде (все фото с танками были при пасмурной погоде, а без — в солнечную). — Модель предсказывает болезнь, но оказывается, что она просто запомнила, в каких больницах делались анализы, а не сами медицинские показатели. Это называется «shortcut learning» — когда модель ищет кратчайший путь к правильному ответу, даже если он бессмыслен с точки зрения задачи. Почему это плохо: — Модель может работать «правильно» на тесте, но провалиться в реальной жизни, когда нарушатся скрытые зависимости.В критичных сферах (медицина, право, финансы) это может привести к опасным решениям. Библиотека собеса по Data Science

🔥 Сегодня стартует курс по AI-агентам! Онбординг уже сегодня, но ещё можно вписаться — ПОСЛЕДНИЙ ШАНС это сделать. Мы больше
🔥 Сегодня стартует курс по AI-агентам! Онбординг уже сегодня, но ещё можно вписаться — ПОСЛЕДНИЙ ШАНС это сделать. Мы больше года собирали мультиагентные системы: экспериментировали, переделывали и в итоге — оформили всё в 5 плотных вебинаров. 😤 «А можно ли вообще научиться чему-то за 5 вебинаров?!» Если вы хотите просто послушать — нет Если хотите разбираться и делать — да ➡️ На курсе: — мы не читаем слайдики, а работаем в коде в реальном времени — можно задавать вопросы прямо на вебинаре — после каждого вебинара есть домашка и поддержка в чате И главное — вы получаете системное понимание, а не набор хаотичных туториалов. ⚡️Если вы думаете, что успеете потом — не успеете. Старт сегодня: — а те, кто вписался сейчас, будут вас опережатьв проектах, на грейде и в зарплате Знакомьтесь, эксперт нашего курса: Никита Зелинский — Chief Data Scientist МТС, Head of ML Platforms, руководитель центра компетенций по Data Science. ❗Стартуем сегодня — забронируй свое место

😎 Почему иногда используют «обманчиво плохую» loss-функцию на этапе обучения Иногда для обучения выбирают лосс-функцию, которая не совпадает с целевой метрикой — и даже, на первый взгляд, плохо её отражает. Это делается не по ошибке, а потому что: — Целевая метрика негладкая или недифференцируемая, например, F1-score, Precision\@K, Accuracy. Их нельзя напрямую оптимизировать с помощью градиентного спуска.Взамен используют surrogate loss — «замещающую» функцию, которую можно эффективно минимизировать. Например: ✔️ log-loss для классификации, ✔️ hinge loss для SVM, ✔️ MSE вместо MAE в регрессии. Иногда surrogate loss вообще не похож на целевую метрику — и всё равно работает. Это парадокс: модель учится не по той метрике, которую мы хотим улучшить, но всё равно её улучшает. Такой выбор — компромисс между математической удобством и практической целью. И это одна из причин, почему хорошие метрики ≠ хорошие loss-функции, и наоборот. Библиотека собеса по Data Science