GONZO_ML Telegram 472
Switch Transformers: Scaling to Trillion Parameter Models with Simple and Efficient Sparsity
William Fedus, Barret Zoph, Noam Shazeer
Статья: https://arxiv.org/abs/2101.03961

В начале 2021 года Гугл опубликовал статью Switch Transformers, которая в медиа прошла под вывеской “Гугл обучил трансформер с 1.6T параметров и побил GPT-3 со своими 175B параметров!”.

Это в целом не совсем корректный и полный месседж хотя бы, например, потому, что ещё полгода назад у Гугла уже была модель на 600B параметров в работе про GShard с примерно такой же архитектурой, а также потому, что сравнивать архитектуру стандартного трансформера (как в GPT-3) с архитектурой MoE (лежащей в основе Switch Transformer или GShard) по общему числу параметров не очень корректно.

Работа и направление на самом деле интересные. В чём суть?

Начать стоит издалека.

Архитектура под названием Mixture of Experts (MoE) в нейросетях является одним из направлений в рамках подхода conditional computation, суть которого в том, что граф вычислений определяется входными данными. В целом сам подход MoE достаточно старый, прослеживается как минимум с начала 1990-х годов (http://www.cs.toronto.edu/~fritz/absps/jjnh91.pdf) и применялся с разного рода моделями, далеко не только нейросетевыми.

В нейросетевых MoE обычно есть множество “экспертов” (отдельных слоёв или даже целых сетей), в которые направляет данные на обработку специальный механизм роутинга (gating network). Этот механизм по входным данным генерирует распределение вероятностей “подходящих” экспертов (и по сути является обучаемым полносвязным слоем с софтмаксом), из которых обычно выбирается сколько-то (немного) топовых экспертов, и в них отправляются данные. Выходы экспертов суммируются и направляются затем в последующий слой. Остальные невыбранные эксперты ничего не получают и в этот момент не работают. Такой вариант, реализованный в виде слоя, называется Sparsely-Gated Mixture-of-Experts Layer, здесь разреженность относится именно к выбору экспертов.

В начале 2017 года весьма представительный коллектив авторов (включая Хинтона, Джеффа Дина, а также Noam Shazeer, одного из авторов работ про более поздние Switch Transformer и GShard) опубликовал знаковую работу про этот метод (“Outrageously Large Neural Networks: The Sparsely-Gated Mixture-of-Experts Layer”, https://arxiv.org/abs/1701.06538), где авторы применили слой MoE между двумя слоями рекурретной сети для задачи языкового моделирования (в целом та же задача, которую решает GPT), а также для машинного перевода.

Надо сказать, уже в той работе января 2017 года появилась модель на 137B параметров и это было почти за полтора года до первой GPT (хронологию GPT можно посмотреть здесь: https://blog.inten.to/gpt-3-language-models-are-few-shot-learners-a13d1ae8b1f9).

Данная модель содержала 131072 эксперта (эксперт представлял собой простую feed-forward сеть с одним скрытым слоем), из которых активными в каждый момент времени были только 4. То есть из этих 137B параметров (относящихся, правда, не только к экспертам, но зато не относящихся к большим матрицам эмбеддингов, которые из этого подсчёта исключены) в реальности в каждый момент времени работает очень небольшое (на порядки меньшее) число. За счёт огромной разреженности по экспертам, такие модели требуют заметно меньше вычислений, чем dense модели с равным числом параметров.

Так что для более адекватного сравнения с “обычными” трансформерами было бы правильно ввести какую-то другую метрику, что-то типа “количество активных весов” или как-то ещё и сравниваться по ней. У обычных трансформеров, кстати, это число тоже может быть сильно меньше полного числа параметров (но всё же не настолько сильно, как у MoE), если они используют функции активации типа ReLU, в таких сетях часть “нейронов” по факту может быть выключена.

Та модель 2017 года показала прекрасные результаты и побила state-of-the-art на языковом моделировании, а также вела себя весьма достойно на машинном переводе.



tgoop.com/gonzo_ML/472
Create:
Last Update:

Switch Transformers: Scaling to Trillion Parameter Models with Simple and Efficient Sparsity
William Fedus, Barret Zoph, Noam Shazeer
Статья: https://arxiv.org/abs/2101.03961

В начале 2021 года Гугл опубликовал статью Switch Transformers, которая в медиа прошла под вывеской “Гугл обучил трансформер с 1.6T параметров и побил GPT-3 со своими 175B параметров!”.

Это в целом не совсем корректный и полный месседж хотя бы, например, потому, что ещё полгода назад у Гугла уже была модель на 600B параметров в работе про GShard с примерно такой же архитектурой, а также потому, что сравнивать архитектуру стандартного трансформера (как в GPT-3) с архитектурой MoE (лежащей в основе Switch Transformer или GShard) по общему числу параметров не очень корректно.

Работа и направление на самом деле интересные. В чём суть?

Начать стоит издалека.

Архитектура под названием Mixture of Experts (MoE) в нейросетях является одним из направлений в рамках подхода conditional computation, суть которого в том, что граф вычислений определяется входными данными. В целом сам подход MoE достаточно старый, прослеживается как минимум с начала 1990-х годов (http://www.cs.toronto.edu/~fritz/absps/jjnh91.pdf) и применялся с разного рода моделями, далеко не только нейросетевыми.

В нейросетевых MoE обычно есть множество “экспертов” (отдельных слоёв или даже целых сетей), в которые направляет данные на обработку специальный механизм роутинга (gating network). Этот механизм по входным данным генерирует распределение вероятностей “подходящих” экспертов (и по сути является обучаемым полносвязным слоем с софтмаксом), из которых обычно выбирается сколько-то (немного) топовых экспертов, и в них отправляются данные. Выходы экспертов суммируются и направляются затем в последующий слой. Остальные невыбранные эксперты ничего не получают и в этот момент не работают. Такой вариант, реализованный в виде слоя, называется Sparsely-Gated Mixture-of-Experts Layer, здесь разреженность относится именно к выбору экспертов.

В начале 2017 года весьма представительный коллектив авторов (включая Хинтона, Джеффа Дина, а также Noam Shazeer, одного из авторов работ про более поздние Switch Transformer и GShard) опубликовал знаковую работу про этот метод (“Outrageously Large Neural Networks: The Sparsely-Gated Mixture-of-Experts Layer”, https://arxiv.org/abs/1701.06538), где авторы применили слой MoE между двумя слоями рекурретной сети для задачи языкового моделирования (в целом та же задача, которую решает GPT), а также для машинного перевода.

Надо сказать, уже в той работе января 2017 года появилась модель на 137B параметров и это было почти за полтора года до первой GPT (хронологию GPT можно посмотреть здесь: https://blog.inten.to/gpt-3-language-models-are-few-shot-learners-a13d1ae8b1f9).

Данная модель содержала 131072 эксперта (эксперт представлял собой простую feed-forward сеть с одним скрытым слоем), из которых активными в каждый момент времени были только 4. То есть из этих 137B параметров (относящихся, правда, не только к экспертам, но зато не относящихся к большим матрицам эмбеддингов, которые из этого подсчёта исключены) в реальности в каждый момент времени работает очень небольшое (на порядки меньшее) число. За счёт огромной разреженности по экспертам, такие модели требуют заметно меньше вычислений, чем dense модели с равным числом параметров.

Так что для более адекватного сравнения с “обычными” трансформерами было бы правильно ввести какую-то другую метрику, что-то типа “количество активных весов” или как-то ещё и сравниваться по ней. У обычных трансформеров, кстати, это число тоже может быть сильно меньше полного числа параметров (но всё же не настолько сильно, как у MoE), если они используют функции активации типа ReLU, в таких сетях часть “нейронов” по факту может быть выключена.

Та модель 2017 года показала прекрасные результаты и побила state-of-the-art на языковом моделировании, а также вела себя весьма достойно на машинном переводе.

BY gonzo-обзоры ML статей


Share with your friend now:
tgoop.com/gonzo_ML/472

View MORE
Open in Telegram


Telegram News

Date: |

The initiatives announced by Perekopsky include monitoring the content in groups. According to the executive, posts identified as lacking context or as containing false information will be flagged as a potential source of disinformation. The content is then forwarded to Telegram's fact-checking channels for analysis and subsequent publication of verified information. Select “New Channel” Developing social channels based on exchanging a single message isn’t exactly new, of course. Back in 2014, the “Yo” app was launched with the sole purpose of enabling users to send each other the greeting “Yo.” Today, we will address Telegram channels and how to use them for maximum benefit. 2How to set up a Telegram channel? (A step-by-step tutorial)
from us


Telegram gonzo-обзоры ML статей
FROM American