О школе

Научитесь решать задачи эффективно

Объясним теорию, расскажем про основные сложности и поможем отточить знания на практике
Старт летом 2024
Ускорение нейросетей
(скоро)

Курс для тех, кто уже работает в индустрии и хочет

Чтобы понимать, как работает каждый метод ускорения сетей

Разобраться в теории

И оптимальным образом ускорять модели под каждый вычислитель

Освоить фреймворки

Освоить востребованный навык, чтобы поднять свою ценность

Поднять скиллы

Узнать про все сложности от экспертов области

Перенять опыт

Чему вы научитесь

Ускорять инференс за счёт изменения архитектуры и утилизации вычислителя
Создавать модели с высокой точностью и высоким fps даже на одноплатных компьютерах

Сохранять точность при ускорении

Разберетесь в устройстве CPU, GPU, NPU и научитесь запускать сети на смартфонах и микрокомпьютерах

Запускать инференс на различных устройствах

Сможете комбинировать различные подходы и решать вытекающие трудности

Совмещать все методы воедино

Узнаете, как устроен каждый алгоритм: дистилляция, прунинг, квантизация, матричные разложения и NAS

Ускорять инференс нейросетей

На обучении вас ждёт

Онлайн-лекции, где вы слушаете инженеров, задаёте вопросы и дискутируете. В конце — тест
с разбором верных ответов

Лекции с теорией

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

Семинары

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

Оперативная помощь

Вы проведёте свою модель через разные методы ускорения сетей и научитесь запускать нейросети на различных устройствах

Практические задания

Десять онлайн-лекций, много практики и общения с другими инженерами

Программа

Программа рассчитана на 10 недель, ей нужно будет посвящать в среднем 8 часов в неделю
10
недель
10
лекций
8
часов в неделю
Научитесь ускорять инференс за счет изменения архитектуры сети. Проведете нейросеть через прунинг, квантизацию и дистилляцию

Проведете нейросеть через разные методы ускорения

Первый блок
Поймёте теорию, стоящую за каждым из методов. Разберетесь в свойствах и ограничениях каждого из них
Научитесь комбинировать разные методы воедино, и узнаете, какие нюансы есть в каждом методе

Методы ускорения нейросетей

5 лекций
Модуль 1
→ Distillation
Предлагается начать с метода, который можно рассматривать не столько как способ ускорения сети, а как способ увеличить её точность. Этот метод может быть использован в комбинациях с другими методами для ускорения нейронных сетей
Темы лекции:
  • Понятие дистилляции и DarkKnowledge
  • Функции потерь для дистилляции нейронной сети: MSE / KLD / MAE
  • Дистилляция для уменьшения архитектуры
  • Дистилляция в классических CV-задачах: classification, detection, identification
На практике: научитесь дистиллировать сеть для задачи сегментации человека
→ Pruning
Метод выбрасывает лишние нейроны, уменьшая количество вычислительных операций
Темы лекции:
  • Критерии прунинга: L1/L2/taylor/hessian
  • Типы прунинга: структурированный/неструктурированный
  • Фундаментальные свойства нейронной сети и lottery ticket hypothesis
На практике: научитесь прунить нейронную сеть фреймворке для структурированного прунинга torch-pruning
→ Matrix Decomposition
На этой лекции вы узнаете про низкоранговые разложения как способ изменить архитектуру сети, представив её в виде комбинации более легких операций
Темы лекции:
  • Сингулярное разложение
  • Каноническое разложение
  • Разложение в тензорный поезд
На практике: научитесь пользоваться фреймворком tensorly для задач ускорения
→ Low-Precision computing
Квантование — это способ представить нейросеть в другом типе данных, который меньше исходного. Это нужно для того, чтобы нейросеть могла использоваться на устройстве с малыми вычислительными ресурсами
Темы лекции:
  • Квантование в 8 бит
  • Quantization aware training как способ поднять качество нейронной сети
  • fp16/fp8/bfloat16 и прочие нестандартные типы данных
На практике: вы научитесь пользоваться фреймворком квантование torch.quantization/qnnpack
  • Post-Train quantization
  • Cовременные методы: HAWQ и HAWQ-v2
→ NAS
Более общий метод подбора архитектуры сети, который позволяет найти её оптимальным образом для определенной задачи
Темы лекции:
  • Дифференцируемый / не дифференцируемый NAS
  • DARTs как основа всех методов для дифф прунинга
  • Суперсети и подархитектуры, связь с прунингом
  • Способы обучения суперсетей
  • Zero-shot NAS
Узнаете, как использовать особенности железа: CPU (x86 и ARM), GPU и NPU. Научитесь запускать сети на смартфонах и микроконтроллерах

Научитесь запускать модели на разных вычислителях

Второй блок
Разберётесь в вычислителях: какие особенности есть в каждом и как их использовать для ускорения сети
Освоите фреймворки OpenVino, TensorRT, NNApi, чтобы ускорять сети оптимальным образом под каждую архитектуру

Инференс на вычислителе

5 лекций
Модуль 2
→ CPU part 1. x86
На лекции вы узнаете, какие есть особенности в инференсе на процессоре, и как использовать эти особенности для ускорения нейросети
Темы лекции:
  • Базовое устройство процессора
  • Отличие x86 от ARM. Особенности инференса
На практике: научитесь пользоваться фреймворком для квантование OpenVINO
→ CPU part 2. Android
После получения маленькой модели необходимо попробовать запустить ее на конкретном девайсе. Для этого необходимо написать простейшее приложение на том или ином мобильном устройстве с ее использованием
Темы лекции:
  • Андроид
  • NeuralNetwork-API
На практике: получите приложение со своей ускоренной нейронной сетью
→ Микроконтроллеры
На лекции вы узнаете, какие есть одноплатники, особенности их устройства и как использовать эти особенности для ускорения нейросети
Темы лекции:
  • Устройство
  • Базовые особенности
На практике: выполните запуск на RKNN фреймворке для рок чипа
→ GPU
На лекции вы узнаете, какие есть особенности в инференсе на графическом ускорителе и как использовать эти особенности для ускорения нейросети
Темы лекции:
  • Устройство, базовые особенности
  • Принцип работы TensorRT
  • Что такое CudaGraph
На практике: примените квантование на TRT
→ NPU
На лекции вы узнаете, как обстоит дело на рынке специализированных процессоров и стоит ли нам ждать очередного «убийцу» ГПУ
Темы лекции:
  • Принципы работы систоллического массива
  • Основные трудности проектирования тензорных процессоров
  • Обзор современного ссотояния дел в области. Основные игроки и их подходы
  • Обзор лидеров индустрии

Записаться в лист ожидания

Мы свяжемся, когда начнем собирать группу 2-го потока и подарим скидку на обучение

Кто будет преподавать

Опытные инженеры. Каждый расскажет про задачу, с которой несколько лет работал в коммерческих проектах
enot.ai
Александр Гончаренко
CTO в стартапе, занимается созданием R&D версий алгоритмов и проверкой первичных гипотез, которые потом допиливаются и идут во фреймворк
Intel
Артур Панюков
Добавляет в NLP фичи в инференс-фреймворк OpenVINO. Расскажет про особенности его работы и запуска сетей на CPU
rembrain.ai
Антон Мальцев
Специальный гость курса. Расскажет об ускорении на одноплатниках
Expasoft
Дмитрий Чудаков
Оптимизирует сети для быстрой работы на Edge устройствах. Эксперт по квантованию нейросетей
enot.ai
Игорь Калгин
Главный разработчик фреймворка ЕНОТ, программный архитектор. Поделится практическим опытом работы с TensorRT
Expasoft
Илья Багдюнов
Занимается запуском сетей на различный устройствах. Расскажет про запуск сетей на Android
enot.ai
Андрей Щербин
Имеет большой опыт в применении алгоритмов оптимизации к конкретным моделям. Расскажет про алгоритмы прунинга
wanna.fashion
Тимофей Науменко
Занимается примеркой часов и кроссовок в виртуальной реальности. До этого занимался алгоритмами автоматического поиска архитектур нейронных сетей
Сколтех
Константин Созыкин
Работает с прикладными методами оптимизации и высокопроизводительными вычислениями. Расскажет о применении матричных и тензорных методов
enot.ai
Александр Гончаренко
CTO в стартапе, занимается созданием R&D версий алгоритмов и проверкой первичных гипотез, которые потом допиливаются и идут во фреймворк
Intel
Артур Панюков
Добавляет в NLP фичи в инференс-фреймворк OpenVINO. Расскажет про особенности его работы и запуска сетей на CPU
rembrain.ai
Антон Мальцев
Специальный гость курса. Расскажет об ускорении на одноплатниках
Expasoft
Дмитрий Чудаков
Оптимизирует сети для быстрой работы на Edge устройствах. Эксперт по квантованию нейросетей
enot.ai
Игорь Калгин
Главный разработчик фреймворка ЕНОТ, программный архитектор. Поделится практическим опытом работы с TensorRT
enot.ai
Андрей Щербин
Имеет большой опыт в применении алгоритмов оптимизации к конкретным моделям. Расскажет про алгоритмы прунинга
wanna.fashion
Тимофей Науменко
Занимается примеркой часов и кроссовок в виртуальной реальности. До этого занимался алгоритмами автоматического поиска архитектур нейронных сетей
Сколтех
Константин Созыкин
Работает с прикладными методами оптимизации и высокопроизводительными вычислениями. Расскажет о применении матричных и тензорных методов
Expasoft
Илья Багдюнов
Занимается запуском сетей на различный устройствах. Расскажет про запуск сетей на Android

Что говорят наши выпускники

Истории глазами тех, кто успешно прошел обучение
Ольга Чаганова
«После обучения стала ощущать себя намного увереннее, многие вещи стали понятнее, осталось только углублять знания»
Дмитрий
«Курс максимально полезный лично для меня, систематизирует знания, не оставляет пробелов»
Мария Старцева
«Воспользовалась на работе некоторыми идеями и мне очень пригодился код для построения рабочих пайплайнов»
«Курс оказался крайне полезным. Благодаря лекторам, тьюторам и создателям программы, я смог углубить свои знания»
Арсений Рылов
«Хочу сказать, что это, пожалуй, лучший курс по ML, который я проходила (а у меня достаточно лет опыта в ML)»
«На собеседовании за счет того, что подчерпнул на курсе об устройстве OCR, вытянул»
Александр
LinkedIn
Галина Альперович
(CV Rocket)
(3DCV)
(CV Rocket)
(3DCV)
(CV Rocket)
(CV Rocket)

Лист ожидания

Мы свяжемся, когда начнем собирать группу 2-го потока и подарим скидку на обучение

Доступен налоговый вычет

Может оплатить компания

Полный возврат в первые 14 дней

Принимаем оплату из-за рубежа

FAQs

Когда проходят лекции и семинары?

Когда проходят лекции и семинары?
Лекции проходят по будням в 18:00 МСК и длятся от 90 до 120 минут. Онлайн-семинары проходят после каждой 5-й лекции

Смогу ли я оформить налоговый вычет?

Да, вы сможете оформить налоговый вычет за обучение, если вы являетесь налоговым резидентом России и оплачиваете подоходный налог. Подать документы на вычет можно в году, следующем за годом оплаты обучения. Подробнее о налоговом вычете за обучение можно прочитать на сайте ФНС

Может ли моя компания оплатить курс?

Моя компания может оплатить курс?
Да, мы подготовим счёт на полную или частичную оплату для юридического лица. Напишите на hello@deepschool.ru

На сколько часов рассчитана программа?

На сколько
часов рассчитана программа?
20 астрономических часов на лекции и ~30 часов практики или примерно 8 часов в неделю, что позволяет комфортно встроить обучение в рабочий график

Что делать, если нет доступной GPU?

Если у вас нет в доступе машины с GPU, мы предоставим кредиты на аренду удаленной машины и подскажем, как настроить подключение к ней

Что я должен знать, чтобы начать обучение?

Основы Deep Learning и Computer Vision. Мы предполагаем, что вы уже знаете теорию нейросетей и решали задачи из области компьютерного зрения. Если вы сомневаетесь, подходит ли курс именно вам, напишите нам в телеграм Спросить в ТГ

Телеграм-канал
DeepSchool

Короткие посты по теории ML/DL, полезные библиотеки и фреймворки, вопросы с собеседований и советы, которые помогут в работе