Представляем RWKV: развитие линейных трансформаторов и исследование альтернатив

Представляем RWKV: развитие линейных трансформаторов и исследование альтернатив

19 сентября 2023 г.

Ниже приводится краткое изложение некоторых мыслей, возникших у меня из подкаста RWKV, найденного здесь:

https://www.latent.space/p/rwkv#details

Почему альтернативы так важны?

Архитектуры-трансформеры в настоящее время находятся на пике своего развития благодаря революции искусственного интеллекта 2023 года. Однако в спешке с их внедрением из-за их недавнего успеха легко игнорировать альтернативы, которым мы можем поучиться.

Как инженеры, мы не должны использовать универсальный подход, используя один и тот же молоток для каждого гвоздя. Мы должны находить компромиссы в каждом решении. В противном случае мы оказались бы в ловушке ограничений одной конкретной платформы, оставаясь при этом в блаженном неведении обо всех других альтернативах. Потенциально это может задержать развитие на долгие годы.

Эта проблема характерна не только для ИИ. Это историческая закономерность, которая повторяется с древних времен до наших дней.

Страница из истории войны SQL...

Примечательным недавним примером в разработке программного обеспечения стала тенденция к использованию NoSQL, когда серверы SQL начали сталкиваться с физическими ограничениями. Стартапы во всем мире перешли на NoSQL по причинам "масштаба", несмотря на то, что они далеки от этих масштабов.< /п>

Однако со временем, когда появилась конечная согласованность и накладные расходы на управление NoSQL, а аппаратные возможности сделали гигантский скачок в скорости и емкости твердотельных накопителей, мы наблюдаем недавнюю тенденцию возврата к серверам SQL из-за их простоты и теперь достаточной масштабируемости для более чем 90% стартапов. .

Означает ли это, что SQL лучше NoSQL или наоборот? Нет, это просто означает, что у каждой технологии есть предпочтительные варианты использования со своими плюсами и минусами, а также точки обучения, которые могут перекрестно дополняться аналогичными технологиями.

<блок-цитата>

Надеюсь, вы воспримете эту статью не как нападки на преобразователи, а как здоровую оценку альтернатив. На этом давайте перейдем к основной теме


Какова самая большая проблема существующей архитектуры трансформатора?

Как правило, сюда входят вычисления, длина контекста, наборы данных и выравнивание. В этом обсуждении мы сосредоточимся на вычислениях и длине контекста:

* Квадратичные вычислительные затраты из-за увеличения O(N^2) на каждый использованный/генерируемый токен. Это делает контексты размером более 100 тысяч невероятно дорогими, что влияет на вывод и обучение. * Текущая нехватка графических процессоров усугубляет эту проблему. * Размер контекста ограничивает внимание, сильно ограничивая варианты использования «умных агентов» (например, smol-dev) и вынуждая искать обходные пути. . Для более крупных контекстов требуется меньше обходных решений.

Итак, как нам решить эту проблему?


Представляем RWKV — линейный преобразователь/современную крупномасштабную RNN

<блок-цитата>

Ниже приводится краткое описание найденного документа RWKV: здесь

Для более подробной технической информации см.: вики здесь

RWKV вместе с Microsoft RetNet , являются одними из первых представителей нового класса под названием "Линейные трансформаторы".

Он напрямую устраняет три вышеупомянутых ограничения, поддерживая следующее:

* Линейные вычислительные затраты независимо от размера контекста. * Более низкие требования обеспечивают разумную выдачу токенов в секунду на ЦП (особенно ARM) в режиме RNN. * Нет жесткого ограничения размера контекста в качестве RNN. Любые ограничения в документации являются рекомендациями. Вы можете выйти за их пределы.

Поскольку мы продолжаем масштабировать модели ИИ до больших размеров контекста. От 100 тысяч и выше. Квадратичные вычислительные затраты начинают расти экспоненциально.

Однако линейные трансформаторы вместо того, чтобы отказаться от архитектуры рекуррентной нейронной сети и ее узких мест, вынудили их заменить трансформаторами.

Извлекли уроки, извлеченные из создания масштабируемых трансформаторов, перепроектировали RNN, чтобы они работали аналогично трансформаторам, и устранили все эти узкие места.

Возвращаем их в гонку с трансформерами в плане тренировочных скоростей. Позволяя им обоим работать эффективно при затратах O(N) при масштабировании более миллиарда параметров при обучении. И все это при сохранении аналогичного уровня производительности.

Graph showing linear transformer computational cost scaling linearly per token vs. exponential increases for transformers

При квадратичном и линейном масштабировании вы достигнете более чем 10-кратного увеличения при количестве токенов 2 тыс. и более. более чем в 100 раз при длине токена 100 тыс.

При параметрах 14B RWKV является крупнейшим линейным преобразователем с открытым исходным кодом, наравне с GPT-NeoX и другими аналогичными наборами данных (например, The Pile).

Various benchmarks showing RWKV model performing comparable to existing transformer models of similar size scale

Но что это значит, проще говоря?

Плюсы

  • В 10 раз дешевле вывод/обучение, чем преобразователи при больших размерах контекста.
  • Может работать медленно на очень ограниченном оборудовании в режиме RNN.
  • Производительность аналогична преобразователям в тех же наборах данных.
  • Нет технических ограничений на размер контекста в качестве RNN (бесконечный контекст!)

Минусы

  • Проблема со скользящим окном: потеря памяти после определенного момента.
  • Пока не доказано масштабирование за пределы 14 B параметров.
  • Менее оптимизирован и принят, чем трансформеры.

Таким образом, хотя RWKV еще не достиг масштабов параметров 60B+, таких как LLaMA2, при правильной поддержке/ресурсах у него есть потенциал достичь этого с меньшими затратами и в более широком контексте, особенно по мере того, как экспертные модели имеют тенденцию к уменьшению и повышению эффективности.

Учитывайте это, если эффективность имеет значение для вашего варианта использования. Но это не окончательное решение: здоровые альтернативы по-прежнему играют ключевую роль.

<блок-цитата>

И последнее, о чем я забыл упомянуть:

Линейные Трансформаторы обычно используют не классическое Трансформаторское внимание, а приблизительное, то есть...

Внимание – это еще не все, что вам нужно


Другие альтернативы и их преимущества, на которых нам, вероятно, стоит поучиться

  • Модели диффузии: медленно обучаются тексту, но чрезвычайно устойчивы к многоэтапному обучению. Выяснение причин может помочь смягчить кризис токенов
  • Генераторно-состязательные сети/агенты: методы можно использовать для тренировки желаемых наборов навыков для достижения конкретной цели без наборов данных. Даже для текстовых моделей.


Раскрытие информации: я участвую в разработке кода проекта RWKV и являюсь активным членом сообщества. Однако это не означает, что я рассматриваю RWKV как окончательный ответ; даже если в будущем, когда «Линейные Трансформаторы» превзойдут традиционные сети «Трансформеры», исследование альтернатив по-прежнему важно для здорового развития экосистемы.

Я твердо верю, что не существует такой вещи, как «одна архитектура, которая бы управляла всеми». Кроме того, я знаю, что с тех пор были такие разработки, как TransformerXL, для более эффективного масштабирования трансформаторов, где-то между квадратичной стоимостью и линейной стоимостью. Однако, поскольку общеизвестная реализация этого метода очень ограничена, мне трудно оценить его плюсы и минусы. .


Также опубликовано здесь.


Оригинал
PREVIOUS ARTICLE
NEXT ARTICLE