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

MLOps и эксплуатация моделей

Все темы Data Scientist

Подтемы:

Чем post-training quantization отличается от quantization-aware training?

Post-training quantization переводит уже обученную модель в меньшую разрядность. Для весов это может не требовать данных, а для активаций обычно нужен репрезентативный calibration set. Метод дешевый, но чувствительные модели теряют качество. Quantization-aware training имитирует округление во время обучения или fine-tuning, поэтому веса адаптируются к будущей арифметике. QAT обычно лучше сохраняет качество, но дороже. Сравнивают итоговую метрику, размер, реальную latency и поддержку нужных операций на целевом железе.


Почему зануление весов не всегда ускоряет инференс модели?

Неструктурное pruning создает отдельные нули в матрицах, но обычные GPU и BLAS-ядра все равно выполняют плотные умножения и читают плотные тензоры. Без подходящего sparse-формата, достаточной разреженности и специальных kernels latency может не уменьшиться, а служебные индексы добавят расходы. Структурное pruning удаляет целые каналы, головы или блоки и чаще ускоряет стандартные kernels. Выигрыш подтверждают на целевом устройстве по throughput и p95 latency, а не по доле нулей.


Как knowledge distillation переносит знания teacher-модели в student?

Teacher генерирует распределение вероятностей по классам вместо одной жесткой метки. После деления logits на temperature оно показывает сходство альтернатив, например что кошка ближе к собаке, чем к автомобилю. Student обучают на смеси обычной loss по истинным меткам и distillation loss по soft targets teacher. Temperature и веса слагаемых настраивают на validation. Дистилляция может уменьшить модель и ускорить инференс, но качество, calibration и latency нужно измерить отдельно.


Что мониторить у ML-модели до появления свежих меток?

До появления меток нельзя честно пересчитать целевую метрику, поэтому мониторят входы и систему: схему, пропуски, диапазоны, долю новых категорий, drift признаков, распределение score и решений. Отдельно смотрят latency, ошибки, объем трафика и сбои feature pipeline. Proxy-сигналы полезны лишь после проверки связи с целью. Когда метки дозревают, считают качество и calibration по когортам времени и сегментам, сопоставляя прогноз с версией модели и признаков.


Чем data parallelism отличается от model parallelism?

При data parallelism на устройствах лежат копии модели, а батч делится между ними. Каждое устройство считает градиенты, затем они синхронизируются, обычно через all-reduce. При model parallelism сама модель разделена между устройствами, потому что не помещается целиком или вычисления выгодно разнести. Тогда коммуникация идет и внутри forward/backward. На практике сочетают data, tensor и pipeline parallelism, а optimizer state шардируют отдельно. Узкое место выбирают по памяти, вычислениям и сети.


Какие слои данных краулера нужны для воспроизводимого ML-датасета?

Нужен неизменяемый raw-слой с ответом сервера, URL, временем запроса, статусом и заголовками. Parsed-слой хранит извлеченные поля, canonical URL, версию парсера и ссылку на raw. Следующий слой очищает дубли и фиксирует правила выбора версии страницы. Для каждого запуска нужны batch_id, конфигурация, время и статистика ошибок. ML-выборку строят с cutoff по времени, чтобы признаки не знали будущего. Такая схема позволяет перепарсить сырье и отличить изменение сайта от изменения модели.


Чем репликация данных отличается от шардирования?

Репликация хранит копии одних данных на нескольких узлах. Она повышает доступность и пропускную способность чтения, но требует согласования копий и не увеличивает объем уникальных данных. Шардирование делит строки или ключевое пространство между узлами, увеличивая емкость и параллелизм. Оно требует удачного shard key, маршрутизации запросов и rebalance. Системы часто совмещают подходы: каждый шард имеет реплики. Тогда отдельно решают consistency, failover и восстановление.


Вы знакомы с инструментами контейнеризации?

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


С точки зрения практики MLOps - какой ваш любимый линтер?

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

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

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

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

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

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

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

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

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

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

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

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

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