FairScale: расширение для PyTorch для распараллеливания вычислений

FairScale — это библиотека-расширение для PyTorch для высокопроизводительных вычислений и обучения на одной или нескольких машинах (нодах). Библиотека расширяет базовый функционал  PyTorch через добавление нового функционала для проведения экспериментов.

Подробнее про библиотеку

На данный момент FairScale поддерживает:

  • Параллелизм: распараллеливание пайплайна обучения (через fairscale.nn.Pipe);
  • Шардированное обучение: шардирование состояния алгоритма оптимизации (fairscale.optim.oss), автоматический mixed precision и шардирование данных
  • Масштабированная оптимизация: AdaScale SGD (из fairscale.optim import AdaScale)

Основной целью библиотеки является позволить исследователям повышать размер батчей данных без потери в точности модели. FairScale упрощает процесс параллелизации экспериментов без беспокойства о падении метрик и при равной или улучшенной эффективности использования GPU.

Пример использования Pipe:

`

import torch

import fairscale

model = torch.nn.Sequential(a, b, c, d)
model = fairscale.nn.Pipe(model, balance=[2, 2], devices=[0, 1], chunks=8)

`

Подписаться
Уведомить о
guest

0 Comments
Межтекстовые Отзывы
Посмотреть все комментарии

gogpt