Библиотека для «рационального» обучения нейтронных сетей на платформе Lingvo совместима с любой нейросетью, состоящей из множества последовательных слоев и позволяет разработчикам легко регулировать производительность.
Библиотека GPipe организует два приема обучения ИИ. Первый — синхронный стохастический градиентный спуск. Это алгоритм оптимизации, который применяется для того, чтобы обновить параметры модели ИИ. Второй — конвейерный параллелизм. Это система выполнения задач, в которой выходные данные одного шага образуют входные данные следующего, рассказывает VentureBeat.
«Глубокие нейронные сети (DNN) выполняют множество задач машинного обучения, включая распознавание речи, визуальное распознавание и обработку языка. Более крупные модели DNN приводят к улучшению работоспособности, а прошлый опыт показывает, что существует прямая зависимость между размером модели и точностью классификации, — пишет инженер Google AI Хуан Яньпин в блоге. — В GPipe мы (…) демонстрируем применение конвейерного параллелизма для того, чтобы увеличить эффективность обучения DNN и обойти эти ограничения».
Большая часть прироста производительности GPipe основана на лучшем распределении памяти для ИИ-моделей.
На тензорных процессорах Google TPU второго поколения с восемью ядрами и 64 ГБ памяти каждый GPipe снизил использование промежуточной памяти почти вдвое — с 6,26 ГБ до 3,46 ГБ. Это позволило повысить число параметров модели с 82 млн до 318 млн на одном ядре.
Оптимизация процесса обучения — не единственное преимущество библиотеки. Она также распределяет модели по различным ускорителям и автоматически делит миниатюрные пакеты обучающих примеров на «микропакеты». Это позволяет ядрам работать параллельно, не снижая качества модели.
Источник: hightech.plus
Подписывайтесь на канал «Хвилі» в Telegram, на канал «Хвилі» в Youtube, страницу «Хвилі» в Facebook