Скоро на All-DAR DeepSchool — Ускорение нейросетей [Александр Гончаренко, Артур Панюков, Илья Ревин]

ALL DAR Bot

🛡 МОДЕРАТОР 🛡
Регистрация
26 Март 2018
Сообщения
85.560
Название: DeepSchool — Ускорение нейросетей [Александр Гончаренко, Артур Панюков, Илья Ревин]

77c476f4ac45d690002e322019338477.png


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

Поймёте теорию, узнаете про основные сложности и отточите знания на практике

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

  • Разобраться в теории
  • Освоить фреймворки
  • Поднять скиллы
  • Перенять опыт
  • Чтобы понимать, как работает каждый метод ускорения сетей
  • И оптимальным образом ускорять модели под каждый вычислитель
  • Освоить востребованный навык, чтобы поднять свою ценность
  • Узнать про все сложности от экспертов области

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

  • Ускорять инференс за счёт изменения архитектуры и утилизации вычислителя
  • Узнаете, как устроен каждый алгоритм: дистилляция, прунинг, квантизация, матричные разложения и 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

Предзапись

Цену укажет организатор

Материал «DeepSchool — Ускорение нейросетей [Александр Гончаренко, Артур Панюков, Илья Ревин]», возможно, скоро появится на All-dar.

Пройдите регистрацию и оформите Premium подписку, чтобы первым получить доступ, и воспользуйтесь поиском — может быть, он уже опубликован.

Скрытый контент для пользователей All-dar.
 

Присоединяйтесь, чтобы открыть полный доступ

Комментарии и материалы этой темы доступны только зарегистрированным участникам

Новый участник?

Регистрация занимает меньше минуты

Уже с нами?

Войдите в свой аккаунт

Сверху