Перейти к содержимому
На этой странице

Основы ML и выбор модели

Все темы Data Scientist

Подтемы:

Какие основные типы задач машинного обучения существуют?

Основные типы задач машинного обучения:
  1. Обучение с учителем (Supervised Learning): модели обучаются на размеченных данных, где каждому входному примеру соответствует выходной ответ. К задачам относятся классификация и регрессия.

  2. Обучение без учителя (Unsupervised Learning): модели обучаются на неразмеченных данных без предоставления выходной информации. К задачам относятся кластеризация, снижение размерности и ассоциативное обучение.

  3. Полуобученное обучение (Semi-supervised Learning): использует как размеченные, так и неразмеченные данные для обучения модели.

  4. Обучение с подкреплением (Reinforcement Learning): агент обучается взаимодействовать с окружающей средой, чтобы выполнить определенную задачу, максимизируя некоторую награду.


Что такое алгоритмы без учителя в машинном обучении?

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


Чем логистическая регрессия отличается от линейной регрессии?

Логистическая регрессия используется для задач классификации, в то время как линейная регрессия - для задач регрессии. В логистической регрессии используется логистическая функция для предсказания вероятности принадлежности к определенному классу, в то время как в линейной регрессии прогнозируется непрерывное числовое значение.


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

Некоторые предпочитают использовать линейную регрессию вместо деревьев решений из-за следующих причин:

  • Простота интерпретации и понимания результатов модели.

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

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


Каковы различия между алгоритмами k-Nearest Neighbors (kNN) и k-Means?

k-Nearest Neighbors (kNN) - это алгоритм классификации или регрессии, который основывается на принципе “ближайших соседей”, используя расстояние между точками данных.

k-Means - это алгоритм кластеризации, который группирует точки данных в заданное количество кластеров, минимизируя среднеквадратичное расстояние между точками кластера и их центроидами.


Какие есть еще линейные модели кроме лин. и лог. регрессий?

Помимо линейной и логистической регрессий, существуют и другие линейные модели:

  1. Ridge регрессия: Регрессионная модель, которая вводит штраф на коэффициенты модели с целью снижения переобучения.

  2. Lasso регрессия: Также регрессионная модель, которая добавляет штраф к абсолютным значениям коэффициентов, что может привести к отбору признаков.

  3. ElasticNet регрессия: Комбинация Ridge и Lasso регрессий, которая вводит штрафы на коэффициенты как по их абсолютным значениям, так и по их квадратам.

  4. Метод опорных векторов (SVM): Линейная модель для задач классификации и регрессии, которая стремится найти гиперплоскость максимального зазора между классами.

  5. Линейная дискриминантный анализ (LDA): Статистический метод, который моделирует распределение признаков в каждом классе и использует его для принятия решений.

  6. Обобщенные линейные модели (GLM): Класс моделей, который обобщает линейные модели, позволяя выбирать различные функции связи и распределения ошибок.


Чем отличаются случайный лес и градиентный бустинг?

Случайный лес обучает деревья независимо на bootstrap-выборках и случайных подмножествах признаков. Их прогнозы усредняют или выбирают голосованием. Такая случайность снижает корреляцию деревьев и в основном уменьшает дисперсию модели; обучение легко распараллелить.

Градиентный бустинг строит деревья последовательно. Каждое новое дерево приближает отрицательный градиент функции потерь и корректирует текущий ансамбль. Бустинг часто даёт выше качество после настройки, но чувствительнее к learning rate, глубине, числу деревьев, шуму и переобучению. Его деревья обычно неглубокие, а прогнозы суммируются.


В чём разница между случайным лесом и деревом решений в машинном обучении?

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


Есть три модели (бустинг, логрег и рандомфорест) на какие критерии следует обратить внимание при выборе модели?

При выборе модели следует обратить внимание на следующие критерии:

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

  2. Обобщающая способность: сравнивайте модели на валидационной выборке или кросс-валидации. Тестовую выборку используйте для окончательной оценки после выбора модели.

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

  4. Устойчивость к выбросам: Оцените, насколько модели устойчивы к выбросам в данных. Некоторые модели могут быть более чувствительны к выбросам, чем другие.

  5. Гибкость: Рассмотрите, насколько легко модель можно настроить и насколько она гибкая в использовании. Некоторые модели могут требовать меньше тюнинга гиперпараметров или быть более подходящими для конкретных типов данных.


В каком случае линейная регрессия будет лучше бустинга?

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


Когда логистическая регрессия предпочтительнее случайного леса?

Логистическая регрессия хороша, когда зависимость примерно линейна в log-odds, признаки разреженные, данных немного, а важны скорость и объяснимые коэффициенты. С регуляризацией она часто дает сильный baseline и неплохие вероятности. Случайный лес удобнее для нелинейностей и взаимодействий без ручного задания, но тяжелее, менее прозрачен и его вероятности могут требовать калибровки. Выбор делают по честной validation, включая calibration, latency и стабильность, а не по сложности алгоритма.


Расскажите, как вы будете собирать данные, создавать и выводить в продакшен.

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

Собеседования: Data Science

Смотри записи интервью, узнай, какие вопросы задают и как отвечают кандидаты.

Вопросы и ответы

Не нашли ответ? Напишите мне в чат. Я делаю Шпаргалку и сам отвечаю на сообщения. Расскажите, что не работает или чего вам не хватает. Может, смогу сразу взять это в работу.

Откуда взяты вопросы?

Из реальных собеседований. Основой подборки стал опыт Вадима Новосёлова: он проходил интервью и записывал вопросы. Подробнее о материалах.

Насколько эти вопросы актуальны?

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

На какой уровень рассчитана подборка?

Мы проходили собеседования на вакансии уровня Middle+, а иногда и на Senior-позиции. Вопросы из этих интервью вошли в подборку. Направления работы: Data Scientist, ML-инженер. Глубина обсуждения зависит от вакансии: будь готов объяснить основную идею, привести практический пример и разобрать ограничения и альтернативы решения.

Этот вопрос точно будет на моём собеседовании?

Гарантии нет: набор вопросов зависит от компании, задач команды, уровня вакансии и самого интервьюера. Эти вопросы уже встречались на реальных собеседованиях, но на твоём интервью ту же тему могут проверить другой формулировкой, практической задачей или обсуждением твоего опыта. Используй подборку, чтобы разобраться в теме: объясняй идею своими словами, приводи примеры и готовься обсудить ограничения и альтернативы решения. Так будет проще ответить и на знакомый вопрос, и на неожиданные уточнения.