- PVSM.RU - https://www.pvsm.ru -

Microsoft представила DeepSpeed для тренировки нейросетей на моделях с >100 млрд параметров

image

Microsoft выпускает библиотеку с открытым исходным кодом [1] под названием DeepSpeed, которая значительно расширяет возможности обучения для больших моделей естественного языка. Она дает возможность обучения нейросетей на моделях со 100 млрд параметров и более. DeepSpeed ​​совместима с PyTorch.

Одна часть этой библиотеки, называемая ZeRO, представляет собой оптимизатор, который помогает масштабировать большие модели независимо от топологии. Ее уже использовали для создания Turing Natural Language Generation (Turing-NLG), крупнейшей общеизвестной языковой модели с 17 млрд параметров.

Zero Redundancy Optimizer (ZeRO) — это новая технология оптимизации памяти для крупномасштабного распределенного глубокого обучения. ZeRO способна тренировать модели глубокого обучения со 100 млрд параметров для кластеров графических процессоров текущего поколения с пропускной способностью, в три-пять раз превышающей пропускную способность лучшей из существующих систем. ZeRO может открыть доступ к обучению на моделях с триллионом параметров, уверены в Microsoft.

Современные крупные модели, такие как OpenAI GPT-2, NVIDIA Megatron-LM и Google T5, используют 1,5 миллиарда, 8,3 миллиарда и 11 миллиардов параметров соответственно.

Microsoft утверждает, что повышенная пропускная способность ZeRO может снизить стоимость обучения. Например, для обучения модели с 20 миллиардами параметров DeepSpeed потребует в три раза меньше ресурсов.

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

image

ZeRO может обучать модель с триллионами параметров всего на 1024 графических процессорах NVIDIA. Для модели с триллионами параметров и оптимизатором, таким как Adam с 16-битной точностью требуется приблизительно 16 терабайт (ТБ) памяти для хранения состояний оптимизатора, градиентов и параметров. 16 ТБ, разделенное на 1024, равно 16 ГБ, что находится в разумных пределах для графического процессора.

image

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

Кстати, ранее исследовательская фирма по искусственному интеллекту OpenAI объявила, что при реализации будущих проектов перейдет на платформу машинного обучения PyTorch [2] от Facebook, отказавшись от платформы TensorFlow от Google. В компании отметили эффективность, масштабы и адаптивность PyTorch.

См. также: «Сравнение фреймворков для глубокого обучения: TensorFlow, PyTorch, Keras, MXNet, Microsoft Cognitive Toolkit, Caffe, etc [3]

Ссылка на репозиторий уже опубликована на GitHub [4], а текст работы можно прочитать на arXiv.org [5].

Автор: maybe_elf

Источник [6]


Сайт-источник PVSM.RU: https://www.pvsm.ru

Путь до страницы источника: https://www.pvsm.ru/microsoft/346306

Ссылки в тексте:

[1] выпускает библиотеку с открытым исходным кодом: https://www.microsoft.com/en-us/research/blog/zero-deepspeed-new-system-optimizations-enable-training-models-with-over-100-billion-parameters/

[2] перейдет на платформу машинного обучения PyTorch: https://habr.com/ru/news/t/486758/

[3] Сравнение фреймворков для глубокого обучения: TensorFlow, PyTorch, Keras, MXNet, Microsoft Cognitive Toolkit, Caffe, etc: https://habr.com/ru/company/otus/blog/443874/

[4] GitHub: https://github.com/microsoft/DeepSpeed

[5] arXiv.org: https://arxiv.org/abs/1910.02054

[6] Источник: https://habr.com/ru/post/487946/?utm_campaign=487946&utm_source=habrahabr&utm_medium=rss