• A
  • A
  • A
  • АБВ
  • АБВ
  • АБВ
  • А
  • А
  • А
  • А
  • А
Обычная версия сайта

НИУ ВШЭ в Санкт-ПетербургеПрограммы бакалавриатаШкола информатики, физики и технологий

РУС
Версия для слабовидящихВерсия для слабовидящихЛичный кабинет сотрудника ВШЭПоиск

01.03.02 Прикладная математика и информатика

Бакалаврская программа

Прикладная математика и информатика

Инженерия машинного обучения

2026/2027
Учебный год
RUS
Обучение ведется на русском языке
4
Кредиты
Статус:
Курс по выбору
Когда читается:
4-й курс, 1, 2 модуль

Программа дисциплины

Аннотация

Курс «Инженерия машинного обучения» посвящён полному жизненному циклу ML‑систем: от разработки модели и работы с данными до развёртывания, мониторинга и оркестрации в продакшене. Студенты знакомятся с методологией CRISP‑ML, современными инструментами разработки (Git, bash, виртуальные окружения, Docker, Docker Compose), хранилищами данных (PostgreSQL, ClickHouse, S3, Redis, брокеры сообщений, векторные движки), системами разметки и трекинга экспериментов (Label Studio, MLflow), инструментами деплоя (FastAPI, Nvidia Triton), мониторингом (Prometheus, Grafana, Evidently) и оркестрацией (Airflow, Kubernetes, Kubeflow). Особое внимание уделено проектно‑ориентированному подходу: в рамках домашних заданий и итогового проекта студенты строят воспроизводимый ML‑сервис, проходящий через разработку, деплой, мониторинг и автоматизацию.
Цель освоения дисциплины

Цель освоения дисциплины

  • Понимать жизненный цикл ML‑проекта в терминах CRISP‑ML и место MLOps‑практик на каждом этапе.
  • Проектировать и реализовывать инфраструктуру для разработки и эксплуатации ML‑моделей (репозитории кода, окружения, контейнеры, регистри образов и моделей).
  • Разворачивать и интегрировать ML‑сервисы с использованием FastAPI и специализированных фреймворков инференса (Nvidia Triton, TorchServe, MLflow Serving).
  • Организовывать трекинг экспериментов, управление версиями моделей и воспроизводимость с помощью MLflow и связанных инструментов.
  • Настраивать мониторинг сервисов и ML‑моделей (Prometheus, Grafana, Evidently), выявлять деградацию качества (data/concept drift) и инициировать цикл улучшений.
  • Применять инструменты оркестрации (Airflow, Kubernetes, при наличии — Kubeflow) для автоматизации регулярных расчётов и пайплайнов ML.
Планируемые результаты обучения

Планируемые результаты обучения

  • Объяснять этапы жизненного цикла ML‑систем в рамках CRISP‑ML и соотносить их с промышленным жизненным циклом ML‑сервиса, а также описывать роли участников ML/DS‑команд и распределение ответственности в MLOps‑контуре.
  • Использовать инструменты разработки и окружения: уверенно работать с Git и GitLab (ветки, SSH‑ключи, pull/commit/push, code review), создавать и настраивать виртуальные окружения (venv, poetry), управлять зависимостями, собирать Docker‑образы и применять Docker Compose для мультиконтейнерных приложений, публиковать образы и пакеты в registry.
  • Описывать различия между реляционными и аналитическими СУБД, key‑value хранилищами, объектными хранилищами и брокерами сообщений, поднимать соответствующие сервисы в Docker (PostgreSQL, ClickHouse, Minio, Redis, Kafka) и загружать из них данные, использовать Polars или DuckDB для анализа данных и сохранять результаты в формате Parquet в S3‑совместимое хранилище.
  • Объяснять цели и подходы к разметке данных (асессоры, краудсорсинг, валидация качества), организовывать процесс разметки в Label Studio, а также разворачивать MLflow Tracking Server, логировать параметры, метрики, артефакты и версии кода и управлять версиями моделей через Model Registry.
  • Применять веб‑скрейпинг для получения данных из веб‑источников, используя requests/Playwright и BeautifulSoup, обрабатывать HTML и динамические страницы и учитывать типичные ограничения и защитные механизмы сайтов.
  • Создавать сервисы инференса на FastAPI, интегрировать их с MLflow Model Registry, разворачивать инференс‑сервисы на базе Nvidia Triton, подготавливать и сохранять модели в форматах ONNX и скриптованных форматах и настраивать model repository для промышленного использования.
  • Настраивать сбор и визуализацию метрик сервисов с помощью Prometheus и Grafana, объяснять и применять понятия data drift и concept drift, использовать Evidently для мониторинга данных и качества моделей и выявления деградации.
Содержание учебной дисциплины

Содержание учебной дисциплины

  • Раздел 1. Вводное занятие. Инструменты разработки ч.1
  • Раздел 2. Инструменты разработки ч.2
  • Раздел 3. Работа с данными, хранилища, базы данных
  • Раздел 4. Разметка данных и трекинг экспериментов
  • Раздел 5. Сбор данных из веб-источников
  • Раздел 6. Развертка моделей
  • Раздел 7. Мониторинг
  • Раздел 8. Регулярный запуск расчетов
  • Раздел 9. CI / CD, тестирование, форматирование кода
  • Раздел 10. Kuber / Kubeflow
Элементы контроля

Элементы контроля

  • неблокирующий О_11_ДЗ
    Домашние задания (11 работ, максимум 55 баллов) ДЗ 1 — Основы работы с командной строкой: задачи на ввод‑вывод, написание и объединение bash‑команд (5 баллов). ДЗ 2 — Сборка и публикация Python‑пакета и Docker‑образа в registry (5 баллов). ДЗ 3 — Загрузка данных из различных источников (PostgreSQL/ClickHouse/Minio/MongoDB), анализ с помощью Polars или DuckDB и сохранение результата в Parquet на S3 (5 баллов). ДЗ 4 — Настройка MLflow Tracking Server, разработка и обучение модели с логированием экспериментов и регистрацией лучшей модели в Model Registry (5 баллов). ДЗ 5 — Сбор и парсинг данных с веб‑страниц (requests/Playwright + BeautifulSoup), извлечение целевых полей (цена, название и т.п.) (5 баллов). ДЗ 6 — Создание и тестирование сервиса инференса с FastAPI, загрузка модели из MLflow Model Registry и кэширование ответов (5 баллов). ДЗ 7 — Создание сервиса инференса с Nvidia Triton: загрузка модели из MLflow Model Registry, работа с ONNX и кэшированием (5 баллов). ДЗ 8 — Настройка Prometheus и интеграция пользовательских метрик в сервис, реализация функции сравнения двух выборок и выявления «разъехавшихся» фич (5 баллов). ДЗ 9 — Регулярный запуск расчётов с использованием Airflow (или аналога): описание DAG, настройка зависимостей и запуск пайплайна (5 баллов). ДЗ 10 — Настройка CI/CD в GitLab, написание и запуск тестов, автоматическая проверка качества кода и YAML‑конфигураций (5 баллов). ДЗ 11 — завершающее ДЗ по интеграции компонентов или подготовке артефактов к финальному проекту (5 баллов).
  • блокирующий О_Проект
    Итоговое испытание по курсу проводится в формате защиты финального проекта. Каждый студент (или команда) представляет разработанную ML‑систему или её ключевые компоненты: пайплайн работы с данными, обучение модели, деплой, мониторинг и оркестрацию, демонстрирует полученные результаты (метрики качества модели, показатели работы сервисов, устойчивость под нагрузкой) и отвечает на вопросы преподавателя и/или комиссии. Защита проекта включает краткую структурированную презентацию постановки задачи, используемых данных и инфраструктуры, выбранных моделей и сервисной архитектуры, организации экспериментов и трекинга (MLflow), схемы деплоя (FastAPI, Triton, Kubernetes/CI/CD), настроек мониторинга (Prometheus, Grafana, Evidently), а также анализ метрик, ограничений решения и обсуждение возможных улучшений и дальнейшего развития системы.
Промежуточная аттестация

Промежуточная аттестация

  • 2026/2027 2nd module
    Формула оценивания: О_итог = О_11_ДЗ + О_Проект Далее суммарная оценка Окурс переводится в 10‑балльную шкалу по установленной шкале. Шкала перевода в 10-балльную систему НИУ ВШЭ Оценка (10-балльная) Оценка (100-балльная) Комментарий 10 100 Максимальный результат 9 90–99 Отлично 8 80–89 Очень хорошо 7 70–79 Хорошо 6 60–69 Хорошо 5 50–59 Удовлетворительно 4 40–49 Минимальный порог прохождения 3 30–39 Неудовлетворительно 2 20–29 Явно неудовлетворительно 1 10–19 Практическое отсутствие выполнения
Список литературы

Список литературы

Рекомендуемая основная литература

  • Баланов, А. Н. Машинное обучение и искусственный интеллект : учебное пособие для вузов / А. Н. Баланов. — 2-е изд., стер. — Санкт-Петербург : Лань, 2025. — 172 с. — ISBN 978-5-507-52891-2. — Текст : электронный // Лань : электронно-библиотечная система. — URL: https://e.lanbook.com/book/462248 (дата обращения: 00.00.0000). — Режим доступа: для авториз. пользователей.
  • Митяков, Е. С. Искусственный интеллект и машинное обучение : учебное пособие для вузов / Е. С. Митяков, А. Г. Шмелева, А. И. Ладынин. — 2-е изд., стер. — Санкт-Петербург : Лань, 2026. — 252 с. — ISBN 978-5-507-51198-3. — Текст : электронный // Лань : электронно-библиотечная система. — URL: https://e.lanbook.com/book/507451 (дата обращения: 00.00.0000). — Режим доступа: для авториз. пользователей.
  • Платонов, А. В.  Машинное обучение : учебное пособие для вузов / А. В. Платонов. — 2-е изд. — Москва : Издательство Юрайт, 2025. — 89 с. — (Высшее образование). — ISBN 978-5-534-20732-3. — Текст : электронный // Образовательная платформа Юрайт [сайт]. — URL: https://urait.ru/bcode/558662 (дата обращения: 02.07.2026).

Рекомендуемая дополнительная литература

  • Харенслак, Б. Apache Airflow и конвейеры обработки данных / Б. Харенслак, Р. Д. де , перевод с английского Д. А. Беликова. — Москва : ДМК Пресс, 2022. — 502 с. — ISBN 978-5-97060-970-5. — Текст : электронный // Лань : электронно-библиотечная система. — URL: https://e.lanbook.com/book/241133 (дата обращения: 00.00.0000). — Режим доступа: для авториз. пользователей.

Авторы

  • Юнышева Анастасия Владимировна
  • Любавина Светлана Вячеславовна