1 of 21

2 of 21

Защита проекта на MSU.AI

Тренирую модель чтобы что?: Как донести результаты экспериментов до коллег и будущего себя

Обо мне: выпускник курса MSU.AI, магистр ФКИ МГУ

Область интересов: генеративные модели, LLM, построение архитектуры систем на базе нейронных сетей

3 of 21

Тренирую модель чтобы что?: Как донести результаты экспериментов до коллег и будущего себя

Изменить пайплайн обучения, чтобы что?

  • ускорить обучение
  • улучшить понимание эксперимента
  • уменьшить затраты на обучение
  • сделать эксперимент воспроизводимым �(как у сына маминой подруги)

4 of 21

Тренирую модель чтобы что?: Как донести результаты экспериментов до коллег и будущего себя

Timeline проекта

Распределение временных затрат между временем “машины” и “человека”

5 of 21

Тренирую модель чтобы что?: Как донести результаты экспериментов до коллег и будущего себя

Timeline проекта (идеальный)

Распределение временных затрат между временем “машины” и “человека”

6 of 21

Тренирую модель чтобы что?: Как донести результаты экспериментов до коллег и будущего себя

Правило 80/20

Цена вклада ресурсов для достижения успеха

7 of 21

Тренирую модель чтобы что?: Как донести результаты экспериментов до коллег и будущего себя

Правило 80/20

8 of 21

Воспроизводимость эксперимента

Желаемое:

run эксперимент также, как было год назад вчера

Действительность:

Через 2-10 дней запущенный с ошибками эксперимент стал причиной просроченного дедлайна по call of papers

Влияние на воспроизводимость

Тренирую модель чтобы что?: Как донести результаты экспериментов до коллег и будущего себя

9 of 21

CUDA docker environment

“Сохранение” окружения

Тренирую модель чтобы что?: Как донести результаты экспериментов до коллег и будущего себя

10 of 21

Атомизация и задел на будущее использование

“Сохранение” окружения

Тренирую модель чтобы что?: Как донести результаты экспериментов до коллег и будущего себя

11 of 21

Тренирую модель чтобы что?: Как донести результаты экспериментов до коллег и будущего себя

Ускорение понимания написанного

  • Структурность репозиториев
  • Однообразие запуска тренировки моделей (pytorch-lighting)
  • Соответствие стилю кода (PEP, flake8)
  • Логирование результатов и артефактов (ClearML)

12 of 21

Тренирую модель чтобы что?: Как донести результаты экспериментов до коллег и будущего себя

Команда воспроизводимости эксперимента

13 of 21

Повышение утилизации GPU при предобработке

Ускорение подсчета графа

Ускорение обучения

Тренирую модель чтобы что?: Как донести результаты экспериментов до коллег и будущего себя

DALI Nvidia

14 of 21

Ускорение инференса

Тренирую модель чтобы что?: Как донести результаты экспериментов до коллег и будущего себя

GPU

15 of 21

Ускорение инференса

Тренирую модель чтобы что?: Как донести результаты экспериментов до коллег и будущего себя

GPU

16 of 21

Ускорение инференса

Тренирую модель чтобы что?: Как донести результаты экспериментов до коллег и будущего себя

CPU

17 of 21

Ускорение инференса

Тренирую модель чтобы что?: Как донести результаты экспериментов до коллег и будущего себя

CPU

18 of 21

Тренирую модель чтобы что?: Как донести результаты экспериментов до коллег и будущего себя

Нужно ли все это?

19 of 21

  • Docker - фиксированное окружение
  • logger - автоматическая запись результатов с графиками и конфигурацией
  • linter - читаемость кода to the moon and beyond
  • pytorch-lighting - однообразие запуска тренировки
  • ускорение тренировки (особенно для large-scale models) - DeepSpeed
  • ускорение инференса модели
    • GPU: TensorRT
    • CPU: OpenVINO

Заключение

Тренирую модель чтобы что?: Как донести результаты экспериментов до коллег и будущего себя

20 of 21

  • Экспертное мнение об организации обучения и инференса:
    • FSDL
    • deepschool posts
    • ods mlops
  • Подробнее про:

Полезные ссылки

Тренирую модель чтобы что?: Как донести результаты экспериментов до коллег и будущего себя

21 of 21

Больше лекций

вы можете найти

на сайте MSU.AI

Тренирую модель чтобы что?: Как донести результаты экспериментов до коллег и будущего себя