Джокер
Администратор
- Регистрация
- 1 Янв 2015
- Сообщения
- 133.718
- Реакции
- 76.326
Складчина: DeepSchool — Ускорение нейросетей [Александр Гончаренко, Артур Панюков, Илья Ревин]
Научитесь решать задачи эффективно
Поймёте теорию, узнаете про основные сложности и отточите знания на практике
Курс для тех, кто уже работает в индустрии и хочет:
Разобраться в теории
Освоить фреймворки
Поднять скиллы
Перенять опыт
Чтобы понимать, как работает каждый метод ускорения сетей
И оптимальным образом ускорять модели под каждый вычислитель
Освоить востребованный навык, чтобы поднять свою ценность
Узнать про все сложности от экспертов области
Чему вы научитесь:
Ускорять инференс за счёт изменения архитектуры и утилизации вычислителя
Узнаете, как устроен каждый алгоритм: дистилляция, прунинг, квантизация, матричные разложения и NAS
Совмещать все методы воедино
Сможете комбинировать различные подходы и решать вытекающие трудности
Запускать инференс на различных устройствах
Разберетесь в устройстве CPU, GPU, NPU и научитесь запускать сети на смартфонах и микрокомпьютерах
Сохранять точность при ускорении
Создавать модели с высокой точностью и высоким fps даже на одноплатных компьютерах
Программа
Блок 1. База – 8 лекций
1. Distillation
2. Pruning
3. Low-Precision computing
4. NAS
5. Эффективные архитектуры
6. Инференс на процессоре
7. Инференс на графическом ускорителе. Part 1
8. Инференс на графическом ускорителе. Part 2
Блок 2. LLM – 2 лекции
1. Основы ускорения LLM
2. Специфичные методы ускорения LLM
Блок 3. Device – 3 лекции
1. CPU. Part 2: ARM + Android
2. CPU. Part 3: ARM + iOS
3. Одноплатники и их особенности для нейросетей
Спойлер: Подробная программа
Блок 1. База – 8 лекций
Научитесь ускорять инференс за счёт изменения архитектуры сети. Проведёте нейросеть через прунинг, квантизацию и дистилляцию. А ещё познакомитесь с ускорением сетей на популярных x86 CPU и GPU
1. Distillation
Метод для улучшения точности нейронной сети. При комбинации с другими методами — для ее ускорения
Темы лекции:
Дистилляция и DarkKnowledge
Функции потерь для дистилляции: MSE / KLD / MAE
Дистилляция для ускорения моделей
Дистилляция в классических CV-задачах: classification, detection, identification
На практике:
Научитесь дистиллировать сеть для сегментации людей
2. Pruning
Метод для сокращения вычислительных операций за счет выброса лишних нейронов
Темы лекции:
Критерии прунинга: L1 / L2 / taylor
Структурированный и неструктурированный прунинг
Фундаментальные свойства нейронной сети и lottery ticket hypothesis
На практике:
Научитесь прунить нейронную сеть с фреймворком для структурированного прунинга torch-pruning
3. Low-Precision computing
Квантование нужно для представления нейронной сети через тип данных, меньший исходного. С его помощью она сможет использоваться на устройстве с малыми вычислительными ресурсами
Темы лекции:
8-ми битное квантование
Quantization aware training как способ улучшения качества нейронной сети
Нестандартные типы данных: fp16 / fp8 / bfloat16
На практике:
Научитесь пользоваться фреймворком квантования torch.quantization/qnnpack
Post-Train quantization как способ заквантовать сетку без головной боли
Cовременные методы квантования: HAWQ и HAWQ-v2
4. NAS
Метод для оптимального подбора архитектуры сети под конкретные задачи
Темы лекции:
Дифференцируемый и недифференцируемый NAS
DARTs как основа всех методов для дифф прунинга
Суперсети и подархитектуры, их связь с прунингом
Способы обучения суперсетей
Zero-shot NAS
5. Эффективные архитектуры
Эффективные архитектуры нейронных сетей для решения самых разных задач
Темы лекции:
Общие эффективные ахитектуры: MobileOne, FastVit
Эффективные архитектуры для детекции, или жизнь без Yolo
Сегментация PIDNet и DDR-Net
Эффективный speech2text
6. Инференс на процессоре
Инференс на процессоре для ускорения нейронной сети
Темы лекции:
Базовое устройство процессора
x86 vs ARM: особенности инференса
На практике:
Научитесь пользоваться фреймворком для квантования OpenVINO
7. Инференс на графическом ускорителе. Part 1
Инференс на графическом ускорителе нейронной сети
Темы лекции:
Особенности работы GPU
Принцип работы TensorRT
Понятие CudaGraph
На практике:
Научитесь применять квантование на TRT
8. Инференс на графическом ускорителе. Part 2
Инференс на графическом ускорителе нейронной сети
Темы лекции:
Cuda Event: как работают профилировщики на его основе
Cuda Event: как померить latency отдельных операций на конкретном примере
На практике:
Научитесь применять квантование на TRT
Профайлинг в торче
TensorRT: как посмотреть оптимизированный граф
TensorRT [advanced]: как запретить оптимизировать отдельные операции
Блок 2. LLM – 2 лекции
Познакомитесь с методами ускорения, специфичными для больших языковых моделей
1. Основы ускорения LLM
Основные рабочие лошадки для ускорения LLM'ок
Темы лекции:
MemoryBound вычисления, или как сделать attention быстрее
Особенности квантования LLM
Современные методы и механизмы квантования: QuIP, QuIP#, AQLM
Sparse-перемножение матриц и принцип работы SparseGPT
На практике:
Изучите и сравните современные библиотеки для локального инфренса LLM
2. Специфичные методы ускорения LLM
Дополнительные механизмы ускорения с обзором небольших и крупных языковых моделей
Темы лекции:
Conditional Inference
Speculative decoding
Small Large Language Models
На практике:
Ускорите LLM с помощью этих методов
Современные opensource-фреймворки для ускорения: vLLM, TensorRT-LLM, GGML
Блок 3. Device – 3 лекции
Научитесь запускать нейронные сети на Android, iOS и микрокомпьютерах
1. CPU. Part 2: ARM + Android
Создание простого приложения на мобильном устройстве с использованием нейросетей и её запуск на конкретном девайсе
Темы лекции:
Особенности ОС Android
Что такое делегаты и какими они бывают
NN-API как основной делегат для запуска
Квантование TFLite
На практике:
Сравните ускорения разных нейронных сетей на мобильном телефоне
2. CPU. Part 3: ARM + iOS
То же самое, но на iPhone с его фреймворками для запуска
Темы лекции:
Устройство iOS
Фреймворк CoreML
Низкоуровневые фреймворки: Metal, BNNS, Accelerate
На практике:
Создадите свое приложение с ускоренной нейронной сетью
Микроконтроллеры
3. Одноплатники и их особенности для нейросетей
Темы лекции:
Устройство и ключевые особенности
Производители микрокомпьютеров
Проблемные слои
На практике:
Запустите нейронную сеть на RKNN-фреймворке для rock chip
Использование фреймворка MNN
Квантование в iOS
Общий workflow
Предзапись
Цену укажет организатор
СКАЧАТЬ СЛИВЫ КУРСОВ
Научитесь решать задачи эффективно
Поймёте теорию, узнаете про основные сложности и отточите знания на практике
Курс для тех, кто уже работает в индустрии и хочет:
Разобраться в теории
Освоить фреймворки
Поднять скиллы
Перенять опыт
Чтобы понимать, как работает каждый метод ускорения сетей
И оптимальным образом ускорять модели под каждый вычислитель
Освоить востребованный навык, чтобы поднять свою ценность
Узнать про все сложности от экспертов области
Чему вы научитесь:
Ускорять инференс за счёт изменения архитектуры и утилизации вычислителя
Узнаете, как устроен каждый алгоритм: дистилляция, прунинг, квантизация, матричные разложения и NAS
Совмещать все методы воедино
Сможете комбинировать различные подходы и решать вытекающие трудности
Запускать инференс на различных устройствах
Разберетесь в устройстве CPU, GPU, NPU и научитесь запускать сети на смартфонах и микрокомпьютерах
Сохранять точность при ускорении
Создавать модели с высокой точностью и высоким fps даже на одноплатных компьютерах
Программа
Блок 1. База – 8 лекций
1. Distillation
2. Pruning
3. Low-Precision computing
4. NAS
5. Эффективные архитектуры
6. Инференс на процессоре
7. Инференс на графическом ускорителе. Part 1
8. Инференс на графическом ускорителе. Part 2
Блок 2. LLM – 2 лекции
1. Основы ускорения LLM
2. Специфичные методы ускорения LLM
Блок 3. Device – 3 лекции
1. CPU. Part 2: ARM + Android
2. CPU. Part 3: ARM + iOS
3. Одноплатники и их особенности для нейросетей
Спойлер: Подробная программа
Блок 1. База – 8 лекций
Научитесь ускорять инференс за счёт изменения архитектуры сети. Проведёте нейросеть через прунинг, квантизацию и дистилляцию. А ещё познакомитесь с ускорением сетей на популярных x86 CPU и GPU
1. Distillation
Метод для улучшения точности нейронной сети. При комбинации с другими методами — для ее ускорения
Темы лекции:
Дистилляция и DarkKnowledge
Функции потерь для дистилляции: MSE / KLD / MAE
Дистилляция для ускорения моделей
Дистилляция в классических CV-задачах: classification, detection, identification
На практике:
Научитесь дистиллировать сеть для сегментации людей
2. Pruning
Метод для сокращения вычислительных операций за счет выброса лишних нейронов
Темы лекции:
Критерии прунинга: L1 / L2 / taylor
Структурированный и неструктурированный прунинг
Фундаментальные свойства нейронной сети и lottery ticket hypothesis
На практике:
Научитесь прунить нейронную сеть с фреймворком для структурированного прунинга torch-pruning
3. Low-Precision computing
Квантование нужно для представления нейронной сети через тип данных, меньший исходного. С его помощью она сможет использоваться на устройстве с малыми вычислительными ресурсами
Темы лекции:
8-ми битное квантование
Quantization aware training как способ улучшения качества нейронной сети
Нестандартные типы данных: fp16 / fp8 / bfloat16
На практике:
Научитесь пользоваться фреймворком квантования torch.quantization/qnnpack
Post-Train quantization как способ заквантовать сетку без головной боли
Cовременные методы квантования: HAWQ и HAWQ-v2
4. NAS
Метод для оптимального подбора архитектуры сети под конкретные задачи
Темы лекции:
Дифференцируемый и недифференцируемый NAS
DARTs как основа всех методов для дифф прунинга
Суперсети и подархитектуры, их связь с прунингом
Способы обучения суперсетей
Zero-shot NAS
5. Эффективные архитектуры
Эффективные архитектуры нейронных сетей для решения самых разных задач
Темы лекции:
Общие эффективные ахитектуры: MobileOne, FastVit
Эффективные архитектуры для детекции, или жизнь без Yolo
Сегментация PIDNet и DDR-Net
Эффективный speech2text
6. Инференс на процессоре
Инференс на процессоре для ускорения нейронной сети
Темы лекции:
Базовое устройство процессора
x86 vs ARM: особенности инференса
На практике:
Научитесь пользоваться фреймворком для квантования OpenVINO
7. Инференс на графическом ускорителе. Part 1
Инференс на графическом ускорителе нейронной сети
Темы лекции:
Особенности работы GPU
Принцип работы TensorRT
Понятие CudaGraph
На практике:
Научитесь применять квантование на TRT
8. Инференс на графическом ускорителе. Part 2
Инференс на графическом ускорителе нейронной сети
Темы лекции:
Cuda Event: как работают профилировщики на его основе
Cuda Event: как померить latency отдельных операций на конкретном примере
На практике:
Научитесь применять квантование на TRT
Профайлинг в торче
TensorRT: как посмотреть оптимизированный граф
TensorRT [advanced]: как запретить оптимизировать отдельные операции
Блок 2. LLM – 2 лекции
Познакомитесь с методами ускорения, специфичными для больших языковых моделей
1. Основы ускорения LLM
Основные рабочие лошадки для ускорения LLM'ок
Темы лекции:
MemoryBound вычисления, или как сделать attention быстрее
Особенности квантования LLM
Современные методы и механизмы квантования: QuIP, QuIP#, AQLM
Sparse-перемножение матриц и принцип работы SparseGPT
На практике:
Изучите и сравните современные библиотеки для локального инфренса LLM
2. Специфичные методы ускорения LLM
Дополнительные механизмы ускорения с обзором небольших и крупных языковых моделей
Темы лекции:
Conditional Inference
Speculative decoding
Small Large Language Models
На практике:
Ускорите LLM с помощью этих методов
Современные opensource-фреймворки для ускорения: vLLM, TensorRT-LLM, GGML
Блок 3. Device – 3 лекции
Научитесь запускать нейронные сети на Android, iOS и микрокомпьютерах
1. CPU. Part 2: ARM + Android
Создание простого приложения на мобильном устройстве с использованием нейросетей и её запуск на конкретном девайсе
Темы лекции:
Особенности ОС Android
Что такое делегаты и какими они бывают
NN-API как основной делегат для запуска
Квантование TFLite
На практике:
Сравните ускорения разных нейронных сетей на мобильном телефоне
2. CPU. Part 3: ARM + iOS
То же самое, но на iPhone с его фреймворками для запуска
Темы лекции:
Устройство iOS
Фреймворк CoreML
Низкоуровневые фреймворки: Metal, BNNS, Accelerate
На практике:
Создадите свое приложение с ускоренной нейронной сетью
Микроконтроллеры
3. Одноплатники и их особенности для нейросетей
Темы лекции:
Устройство и ключевые особенности
Производители микрокомпьютеров
Проблемные слои
На практике:
Запустите нейронную сеть на RKNN-фреймворке для rock chip
Использование фреймворка MNN
Квантование в iOS
Общий workflow
Предзапись
Цену укажет организатор
СКАЧАТЬ СЛИВЫ КУРСОВ
Для возможности скачивать складчины и сливы курсов нужно зарегистрироваться
Возможно, Вас ещё заинтересует:
- [Выкройки] Юбка Люсьена Э. Размер 42-50. Рост 168-172 [Кристина Юсупова]
- [Выкройки] Брюки Изадора М. Размер 42-50. Рост 168-172 [Кристина Юсупова]
- [Выкройки] Жакет Леонора Ф. Размер 42-50. Рост 168-172 [Кристина Юсупова]
- Включи ИИ на максимум. Практический мастер-класс по работе с нейросетями [Прямая речь] [Анастасия Бунак]
- Око в Треугольнике. Алистер Кроули в зеркале психологии (Новый перевод) [Телема] [Израэль Регарди]
- Муссовый Торт сердце [Coup de Coeur] [Елена Скрыган]
- Корпусный эклер сердце [Coup de Coeur] [Елена Скрыган]
- Рецидив мечты. Как заставить свою жизнь играть по правилам победителя. От депрессии к свободе [Юлия Гусева]
- Шоколадно-банановый торт с декором “Новогодние часы” [Coup de Coeur] [Елена Скрыган]
- Окунись в мой мир танца. Уровень 2 [Яна Кремнева]