В видео за 5 минут пройдём по чек-листу актуальных инструментов и практик, которые помогают довести модель до пользователей, и расскажем, как учим этому на курсе «Деплой DL-сервисов»
От Jupyter к продакшн-решениям
До курса Деплой DL-сервисов
На работе занимаетесь лишь обучением сетей, а для деплоя передаёте их разработчикам
Переживаете, что на интервью спросят что-то про тесты, Docker, CI/CD
Путаетесь в тетрадках и их версиях, не получаете code-review
Долго ищете, какая модель на чём училась, и какие были результаты
Работа напоминает рутину, становится скучно
После курса Деплой DL-сервисов
Можете сами обернуть сеть в сервис и задеплоить веб-приложение
Знаете лучшие практики и уверенно чувствуете себя на интервью
Пишете понятный код в скриптах и версионируете проекты в git
Храните версии датасетов и экспериментов, видите результаты в удобном UI
Автоматизируете рутину в CI, решаете больше интересных и важных задач
Для DL-инженеров всех грейдов
CV-инженерам
NLP-инженерам
ML-инженерам
Главное — знать базовую теорию нейросетей
с уклоном в CV-фреймворки
с уклоном в NLP-фреймворки
кто хочет перейти в DL и поднять скиллы
Нужно иметь опыт в DL на уровне написания собственного train loop на PyTorch для любой из «классических» задач, например, классификации или сегментации в CV. А также базовое знание Python — будем писать много модулей, функций и классов
Программа
Лекция каждую неделю. После каждой темы — домашнее задание с фидбеком от лектора. Большой проект в конце программы. Раз в 4−5 недель — Q&A-сессия для разбора вопросов. В середине курса есть перерыв на каникулы.
15 недель
11 лекций
11 заданий с фидбеком
1 проект
01. Сериализация моделей
Разберётесь, как устроены чекпоинты в PyTorch. Поймёте, чем нас не устраивают чекпоинты «из коробки», узнаете про типичные ошибки при работе с ними. Разберёте torch jit: script/trace и поймёте, в каком случае какой подход нужно использовать. Перейдёте к ONNX, научимся в него конвертировать, анализировать и упрощать граф. И разберётесь с onnx-runtime
Как устроены чекпоинты в torch и какие с этим есть проблемы • Torch jit: script/trace • ONNX. Конвертация, анализ и упрощение графа • onnx-runtime
02. Сервис
Расскажем, что такое веб-сервисы, обсудим REST. Научимся писать свои веб-сервисы на FastAPI и конфигурировать их при помощи OmegaConf. Расскажем про внедрение зависимостей и научим применять DI-контейнеры
Веб-сервисы, http, REST • FastAPI • DI-контейнеры
03. Тесты и линтеры
Научимся проверять наш код: писать юнит и интеграционные тесты при помощи pytest, а также пропускать его через линтеры. Расскажем про хорошие практики и типичные ошибки при написании тестов
Линтеры, pre-commit • Pytest • Виды тестов • Фикстуры • Хорошие практики и типичные ошибки в тестах
04. Docker, 1/2
Поговорим про важность изоляции, скорости развёртывания и масштабирования. Расскажем про отличие виртуализации и контейнеризации. Рассмотрим основные компоненты и команды docker
Виртуализация, контейнеризация • Docker: основные компоненты • Docker{file, image, container, hub} • Основные команды • Docker volumes
05. Docker, 2/2
Продолжим изучать docker. Научимся ускорять сборку образа и уменьшать его вес. Поговорим про multistage-сборки. Научимся работать с docker compose и использовать docker для локальной разработки и тестирования.
Ускорение сборки образов и уменьшение веса образа • Multistage • Docker Compose • Docker для разработки и тестирования локально
06. Serving
Научимся сервить модели при помощи Nvidia Triton. Научимся им пользоваться и разберём основные компоненты. Интегрируем модель из Triton в наше приложение.
Конкурентная обработка, latency vs throughput • Как реализовать батчинг • Nvidia Triton: компоненты, API: HTTP/gRPC, как запустить и засервить модель, ансамблирование моделей, тюнинг производительности, метрики, поддерживаемые форматы
07. CI/CD
Научимся использовать Gitlab CI в своих проектах. Будем тестировать и прогонять через линтеры каждый коммит. Научимся деплоить наше приложение из Gitlab при помощи Ansible.
CI/CD: что это и зачем нужно • Основные концепты Gitlab CI: pipeline, stage, job, etc. • Сборка образа в CI •anchors, include, triggers, artifacts • Ansible
08. k8s: основы
Разберёмся, как устроен k8s и какие основные сущности от него нужны нам как разработчикам: pod, ReplicaSet, deployment, service, configmap. Сделаем демо, в котором развернём своё первое приложение в minikube.
k8s • kubectl • pod • deployment • service • k8s requests • volumes • logs • minikube
09. k8s: helm, деплой модели
Погрузимся в k8s глубже: узнаем про init-контейнеры и sidecar’ы. Разберёмся, как понимать, готов ли контейнер принимать трафик. Перейдём от деплоя при помощи kubectl к Helm.
Покажем, как мониторить задеплоенное приложение. Научимся узнавать об ошибках при помощи Sentry, а также собирать и отслеживать метрики нам помогут Prometheus и Grafana
Sentry • Prometheus • Grafana
11. LLM Observability
- Трейсинг и спаны - OpenTelemetry для LLM - LLM-метрики - Оценка качества - Guardrails / safety - Feedback loops - Prompt management
Раз в 4−5 недель спикеры и кураторы собираются в zoom, чтобы ответить на ваши вопросы, помочь с практикой, обсудить задачи
05. Или приходите на онлайн-встречи с кураторами, чтобы обсудить вопрос голосом
Кто будет преподавать
Опытные инженеры будут вести Zoom-лекции и семинары, отвечать на ваши вопросы и ревьюить код
Денис Солдатов
Backend-разработчик. Расскажет как создавать, деплоить и поддерживать сервисы
НИИАС
Дмитрий Раков
Руководит командой ML, которая занимается разработкой беспилотных поездов в AO НИИАС
TheWatch
Азер Шахвердиев
Руководит NLP лабораторией в Контуре и помогает внедрять LLM в продукты компании
Контур, ML engineer
Константин Носорев
Senior backend developer. Научит работать с Docker
TheWatch
Денис Солдатов
Backend-разработчик. Расскажет как создавать, деплоить и поддерживать сервисы
EPAM
Егор Осинкин
Руководит CV командой в EPAM. Выстраивает инженерные практики в ML-командах
НИИАС
Дмитрий Раков
Руководит командой ML, которая занимается разработкой беспилотных поездов в AO НИИАС
Константин Носорев
Senior backend developer. Научит работать с Docker.
После обучения
Чат выпускников
Сертификат о прохождении обучения
Вы попадаете в чат выпускников — чат с опытными инженерами, где мы проводим литклубы, random coffee и обсуждаем вопросы с работы
Доступ к материалам курса на один год
Комфортные условия для вашей учёбы
Полный возврат стоимости в первые 14 дней, если поймёте, что программа вам не подходит. Если примете решение позже, вернём деньги за вычетом уже пройденных занятий
Налоговый вычет получите 13% от стоимости курса после обучения
Оплата из-за рубежа картой иностранного банка или другими удобными способами
Может оплатить компания. мы принимаем оплату от юрлиц, если хотите, чтобы работодатель оплатил ваше обучение, пусть ваши представители напишут нам на b2b@deepschool.ru для оформления документов и оплаты
Старт — 25 ноября. Мы свяжемся, когда начнем собирать группу, расскажем о тарифах и подарим скидки на обучение первым участникам
Доступен налоговый вычет
Может оплатить компания
Полный возврат в первые 14 дней
Принимаем оплату из-за рубежа
Лист ожидания
Запишитесь в лист ожидания. Мы свяжемся, когда начнем собирать группу следующего потока, расскажем о тарифах и подарим скидку на обучение первым участникам.
Лекции проходят по будням в 19:00 по московскому времени и длятся 1,5−2 часа. Q&A-сессии проходят после каждой 5-й лекции, время определяется индивидуально для каждого потока.
Смогу ли я оформить налоговый вычет?
Да, вы сможете оформить налоговый вычет за обучение, если вы являетесь налоговым резидентом России и оплачиваете подоходный налог. Подать документы на вычет можно в году, следующем за годом оплаты обучения. Подробнее о налоговом вычете за обучение можно прочитать на сайте ФНС
Может ли моя компания оплатить курс?
Моя компания может оплатить курс?
Да, мы подготовим счёт на полную или частичную оплату для юридического лица. Напишите на hello@deepschool.ru Скидки не распространяются на оплату курса юр. лицами, поэтому при заполнении заявки указывайте полную стоимость.
На сколько часов рассчитана программа?
На сколько часов рассчитана программа?
Курс включает 25 астрономических часов лекций и Q&A-сессий. С учетом времени на домашние задания, учеба будет занимать примерно 8 часов в неделю. В курсе есть перерыв на каникулы.
Что я должен знать, чтобы начать обучение?
Нужно иметь опыт в DL на уровне написания собственного train loop на PyTorch для любой из «классических» задач, например, классификации или сегментации в CV. А также базовое знание Python — будем писать много модулей, функций и классов. Если вы сомневаетесь, подходит ли курс именно вам, напишите нам в телеграм Спросить в ТГ
Если у вас остались вопросы по курсу, напишите нам в Telegram
1. Моделинг в команде. Теория Расскажем про организацию репозитория для моделинга. Про конфигурирование, логгирование метрик и экспериментов через clearml и про то, как управлять данными при помощи dvc
2. Моделинг в команде. Семинар Сделаем репозиторий обучения модели «по фен шую»: создадим Makefile и подключим линтеры и пре-коммит. Тренировать модель будем при помощи Pytorch Lightning, а логировать эксперименты — в ClearML
3. Конвертация Научимся ускорять нейросетей при помощи использования фреймворков для инференса. Научимся предсказывать через ONNX Runtime, OpenVINO и TensorRT
4. Nvidia DALI Ускорять можно не только модели, но и работу с данными. Покажем, как можно ускорить ваш тренировочный пайплайн при помощи Data Loading Library (DALI) за счёт переведения операций с данными на GPU
Модуль 2 - Dev & Ops (4 лекции)
1. Введение в веб-сервисы, FastAPI Расскажем, что такое веб-сервисы, обсудим REST. Научимся писать свои веб-сервисы на FastAPI и конфигурировать их при помощи OmegaConf. Расскажем про внедрение зависимостей и научим применять DI-контейнеры
2. Docker, Tests, Linters Познакомимся с Dockerfile, docker-image, docker-container. Узнаем про docker volumes, stats и events. Расскажем про docker-compose. Научимся проверять наш код: писать юнит и интеграционные тесты при помощи pytest, а также пропускать его через линтеры
3. CI/CD Научимся использовать Gitlab CI в своих проектах. Будем тестировать и прогонять через линтеры каждый коммит. Научимся деплоить наше приложение из Gitlab при помощи Ansible
4. Мониторинг Покажем, как мониторить задеплоенное приложение. Научимся узнавать об ошибках при помощи Sentry, а собирать и отслеживать метрики нам помогут Prometheus и Grafana
Модуль 3 - Data & Tasks (6 лекций)
1. Краудсорсинг, Толока Расскажем, что такое crowdsource и как с ним работать. Научимся декомпозировать исходную задачу и писать инструкции для разметчиков. Покажем, как работать в Толоке: научим готовить данные, создавать пулы, контролировать качество и агрегировать результаты
2. Семантическая сегментация Сделаем обзор моделей для задачи семантической сегментации, обсудим метрики и лоссы. Покажем, как применять Multi-task learning для этой задачи. Расскажем, как можно отделять объекты одного класса друг от друга при помощи Watershed
3. Детекция и трекинг Пройдём путь от первых детекторов до современных. Обсудим двух- и одноэтапные anchor-based детекторы, а также anchor-free детекторы. Разберёмся, как работать с MMDetection. В задаче трекинга обсудим классический SORT и его современную модификацию FairMOT
4. Распознавание лиц Расскажем, как обычная кросс-энтропия помогает искать похожие картинки (лица), узнаем, как из этого выводится angular margin loss и при чём здесь contrastive loss. Затронем использование этого для быстрого поиска картинок (лиц), упомянув матричные разложения и кластеризацию
5. Распознавание текста (OCR) Расскажем про детекцию и распознавание текста, сделаем обзор основных архитектур и датасетов. Расскажем про готовые фреймворки и библиотеки: Paddle OCR, MMOCR, EasyOCR и расскажем, в каких случаях какой лучше применять
6. Детекция без нейросетей Расскажем, как решают задачу локализации объектов без нейросетей. Рассмотрим алгоритмы поиска контуров и минимально-описывающих фигур, математические морфологии, проекции и бинаризацию
Модуль 4 - Generative & SelfSup (4 лекции)
1. Трансформеры Разберёмся, как работают трансформеры и пройдём путь от трансформеров в NLP до первых трансформеров в CV и их модификаций
2. SSL Рассмотрим различные методы SSL и библиотеки с их реализацией. Спикер поделится личным опытом применения SSL и даст советы из практики
3. GAN Расскажем теорию автоэнкодеров и GAN, обсудим, как решать проблемы при их обучении и разберем популярные архитектуры
4. Diffusion Models Объясним, как работает диффузия. Расскажем, как обучают модели под определенные задачи: Conditional Generation, Super-Resolution, Text2Image. И разберем важные архитектуры DALL-E, Imagen, Stabe Diffusion
Ни разу не пожалел, что решил пройти курс «Деплой DL-сервисов» — программа насыщенная и продуманная. Лекции ведут опытные и приятные спикеры, а домашние задания (иногда требующие серьезных усилий) и код-ревью помогают глубже разобраться в теме.
Благодаря курсу я понял, как организовать разработку проектов так, чтобы код был понятным для коллег и удобным для меня самого даже спустя время. Особенно рекомендую курс тем, кто работает в молодых командах, где есть простор для улучшения качества разработки.
Александр Федоров
Я являюсь тем счастливчиком, которому удалось пройти данный курс, и хочу выразить безмерную благодарность всей команде, которая готовила материалы и задания. Вы — бесспорно лучшие! На каждой лекции я удивлялся тому, насколько разносторонними и крутыми «дядями» являются лекторы, но это только больше мотивировало к тому, чтобы я освоил нужные инструменты. Все темы разобраны максимально подробно с живыми примерами и даже групповыми интерактивами, а домашния задания позволяют хорошенько самому покопаться в деталях и сделать работающие решения.
Могу с уверенностью заявить, что все рассматриваемые инструменты подобраны так, чтобы по итогу программы навыки и резюме слушателя отражали все тенденции рынка. Освоенный материал сделал мои тоже более востребованными — за время курса я успешно прошел 3 собеседования на позиции, где требовались изученные инструменты, и мои знания оказались даже глубже, чем было необходимо.
Поэтому я настоятельно рекомендую данную программу, благодарю авторов и желаю успехов будущим слушателям!
Алексей Андреев
Ранее я уже проходил другой курс по MLOps, но он оставил больше вопросов, чем ответов. Курс DeepSchool как будто разложил все по полочкам. Материал структурированный, преподаватели всегда на связи, интересные домашние задания и лекции. Я узнал очень много нового и теперь активно применяю это в работе. Было не просто разбираться с новыми инструментами и фреймворками, но сейчас понимаю насколько сильно это уже начало упрощать мне ведение проектов.
Иван Малютин
В анонсе организаторы утверждают, что вы «научитесь создавать и деплоить DL-сервисы за 4 месяца». После прохождения курса, могу с уверенностью сказать, что действительно научитесь!
Курс очень интенсивный и освещает основные этапы разработки моделей и вывода их в prod.
Лекторы с большим практическим опытом, чат с поддержкой, интересные и сложные домашние задание с развернутой обратной связью, репозиторий с базовыми пайплайнами, которыми можно пользоваться при разработке собственных проектов — далеко не про все курсы можно сказать подобное. Спасибо DeepSchool за то, что создали такой курс.
Будущих учащихся хочу предупредить — для 4 месяцев, объем материала довольно приличный. Для прохождения курса нужно свободное время, заранее рассчитывайте свои силы — 2−3 часа лекций в неделю, 2−10 часов на домашнее задание и желание учиться.
Андрей Полуянов
Курс авторский и уникальный. Хоть темы и стандартные для CV, в лекциях было очень много практических вещей из опыта лекторов, которые в интернете вряд ли найдешь. После обучения стала ощущать себя намного увереннее, многие вещи стали понятнее, осталось только углублять знания. Но базу курс дает хорошую, могу рекомендовать всем начинающим специалистам.
Я проходила курс и сразу применяла на практике в работе новые знания. Например, перешла на pytorch lightning, стала лучше организовывать и писать код. Docker и Gitlab CI/CD больше не пугают. Вообще для меня курс многое разложил, как правильно и лучше делать с точки зрения software engineering.
Отдельно хочу отметить очень вовлеченную и позитивную команду преподавателей, которые все отвечали на вопросы подробно и понятно, добирались до самой сути. Отдельное почтение Артему за обширные познания и полезные замечания на код-ревью и Сергею, за то что несколько дней помогал разобраться со вторым дз, и все-таки мы ее побороли :) такая вовлеченность и поддержка дорого стоят, ребятам большое спасибо за атмосферу!
Ольга Чаганова
Хочу поделиться хорошей новостью - устроился в австралийскую компанию, буду заниматься облаком OCR) На собеседовании за счет того, что подчерпнул на курсе об устройстве OCR, вытянул - сказали, что как будто у них уже года полтора работаю, такое понимание процессов). Собственно, все, что хотел сказать, просто спасибо за курс)
Александр
Курс показался цельным, достаточно содержательным, с большим количеством практических заданий.
Были сомнения по поводу того, буду ли успевать делать практические занятия) Но в итоге всё успевал
Интереснее всего был Тритон инференс, потому что много слышал, но не доходили руки до него
Самое полезно, что вынес — подходы к тестированию, мониторингу, ci cd, что это всё не страшно и легко интегрируемо
Николай Щебнев
Программа произвела крайне положительное впечатление. Вся программа от и до была полезной — сразу всё внедрила в работе Просто спасибо за вашу работу. Ваши курсы самые лучшие
Полина Кухтенкова
Очень профессионально построен курс.
Сомнений не было, потому что порекомендовал коллега. Я смогла ускорить разработку и улучшить код
Честно мне очень понравилось
Светлана Ладанова
Очень понравился курс. Внедрял в работу все, что рассказывалось на лекциях почти сразу в рабочие проекты. Сомнений не было. Друг (middle LLM-инженер) порекомендовал DeepSchool. Я знаю, что он шарит и сразу понял, что надо брать.
Отдельно выделю несколько лекций: моделинг, тритон, докер, DI — контейнеры и CI/CD.
Все лучшие практики, которые рассказывали, пытался перенять. Как на уровне инструментов, так и на уровне проектирования. Конечно на данный момент не всеми инструментами владею в совершенстве, но до курса я вообще об этих практиках только слышал, а сейчас их повсеместно применяю в работе.
Отдельное спасибо хотелось бы выразить Егору Осинкину, Дмитрию Ракову и Денису Солдатову за то что отвечали на все мои вопросы как по курсу, так и вне его рамок в личном порядке.
Андрей Дронь
Курс хороший, достаточно глубокий по некоторым темам. Интереснее всего была конвертация в onnx. Тема решала мои проблемы с которыми я сталкивался ранее при изучении dl.
Удалось достичь целей, ради которых приходил, теперь деплой не вызывает затруднений.
Николай Жабчиков
Общее впечатление о курсе и программе положительное.
Перед покупкой курса думал, что будет информация, которую уже знаю и что не хватит мотивации проходить курс. Но в итоге мотивации хватило и было много полезной информации 🙂 Большинство тем были полезны
Еще раз спасибо !!
Алексей Захаров
Есть вопросы, на которые вы не нашли ответы? Напишите нам в Telegram, ответим на все интересующие вопросы