18 марта — 17 июня
- Познакомитесь с концепцией воспроизводимых исследований;
- Научитесь автоматизировать процесс проведения стандартизированных исследований;
- Узнаете о методах организации командной работы над ML-проектами;
- Получите практические рекомендации по работе с кодом в DS исследованиях;
- Изучите полезные инструменты для автоматизации и обеспечения воспроизводимости исследований.
Ресурсы курса:
- Презентации по лекциям курса: клик
- Таблица для формирования команд участников: клик
- Заполнение формы для прохождения курса в команде: клик
- Таблица с темами для митапов: клик
Необходимые навыки:
- Python;
- Основы машинного обучения;
- Опыт работы с общим кодом в команде (желательно).
Кому будет полезен курс?
- ML-инженеры
- Аналитики и инженеры данных
- Менеджеры AI-продуктов и руководители (тимлиды) ML-команд
- СTO / CIO
Состав и расписание курса
На курсе вас ждут 14 занятий в записи, продолжительностью 1 - 2 часа по понедельникам.
Консультационные встречи с лекторами, митапы с участниками.
Все занятия и встречи будут доступны в записи.
Участников ждут практические домашние задания, тесты, финальный проект, а также дополнительные активности и митапы, которые будут предлагаться участникам по ходу курса.
Курс можно проходить в индивидуальном порядке и в команде (не более трех участников)
Для дополнительной мотивации будет вестись публичный рейтинг, лучшие участники получат уникальный мерч от ODS.
Как набрать баллы рейтинга?
- проходить тесты/выполнять задания
- выполнить и представить финальный проект
- выступить на митапе по теме, связанной с курсом
Рейтинг будет доступен после закрытия дэдлайна по заданиям первой недели
Программа курса:
Блок1
- Введение о курсе + интро (теория)
- Что такое исследование Что должно быть в исследовании, как документировать исследование (теория, мини-тест)
- Концепция воспроизводимых и масштабируемых исследований (теория, мини-тест)
- Процессы работы команд (теория + практика, опционально)
Блок 2
- Хранение и версионирование кода. Gitlab. Общие принципы Git-flow, Github-flow, настройка репозитория, codereview (теория + практика)
- Codestyle, инструменты форматирования, линтеры. прекоммиты (теория + практика)
Блок 3
- Управления пакетами Python: Хронология
- Управление пакетами Python: Сравнение инструментов
- Введение в Docker
- Docker - практика
Блок 4
- Шаблонизация. Python пакеты и CLI. Управление зависимостями (теория + практика)
- Инструменты документирования исследований (Quarto, Sphinx, Gitlab Pages) (теория + практика)
Блок 5
- Инструменты автоматизации исследований. Snakemake (теория + практика)
- Инструменты автоматизации исследований. Hydra (теория + практика)
Блок 6
- Инструменты автоматизации исследований. DVC (теория + практика)
- Инструменты автоматизации исследований. LakeFS (теория + практика)
Блок 7
- Инструменты трекинга исследований. MLflow (теория + практика)
- ClearML(теория + практика)
Блок 8
- Методы и инструменты тестирования кода, Hypothesis (теория + практика)
- Методы и инструменты тестирования данных, Great Expectations (теория + практика)
Блок 9
- Контейнеризация Docker. Разработка простого сервиса на базе ML моделей с FastAPI (теория + практика)
- Разработка продвинутого сервиса на базе ML моделей с очередями. Celery-Redis, RabbitMQ(теория + практика)
Блок 10
- Сервис на Streamlit (теория + практика, опционально)
- CD, registry моделей. GitLab, Nexus/Artifactory (теория + практика)
Блок 11
- Управление контейнерами. Kubernetes, OSCP, Red Hat OKD, DeckHouse (теория + практика)
Блок 12
- FeatureStore: Feast, Feathr, Feature Form (теория + практика, опционально)
Блок 13
- Мониторинг и аналитика ML моделей. Концепция дрейфа. Метрики (теория)
- Мониторинг и аналитика ML моделей. Grafana, Prometheus, Evidently AI (практика)
Блок 14
- Оркестрация процессов. AirFlow (теория + практика)
- KubeFlow (теория + практика)