новости

трафик на обучение llm в 10 000 раз меньше! новый распределенный оптимизатор, объединяющий мировые вычислительные мощности для обучения мощного искусственного интеллекта.

2024-09-10

한어Русский языкEnglishFrançaisIndonesianSanskrit日本語DeutschPortuguêsΕλληνικάespañolItalianoSuomalainenLatina



  новый отчет мудрости

редактор: алан
[введение в новую мудрость]недавно nous research объявила о большом прорыве. используя независимый от архитектуры и сети распределенный оптимизатор, исследователи успешно сократили объем связи между графическими процессорами при обучении llm в 1000–10 000 раз!

что, если всю вычислительную мощность мира можно будет использовать для обучения моделей ии?

недавно компания nous research, которая привлекла всеобщее внимание выпуском hermes 3 с открытым исходным кодом (на основе llama 3.1), в очередной раз объявила о большом прорыве - distro (распределенное интернет-обучение).

используя распределенный оптимизатор, не зависящий от архитектуры и сети, исследователи успешно сократили взаимодействие между графическими процессорами в 1000–10 000 раз при обучении llm!

благодаря таким преувеличенным улучшениям важная стоимость и узкое место обучения больших моделей — пропускная способность — больше не является проблемой.

используя метод дитро, можно распределить учебную нагрузку на интернет, и весь онлайн-мир станет огромным гетерогенным кластером ии-серверов.

——в процессе обучения может участвовать любое устройство с соответствующей вычислительной мощностью.

эксперименты доказали, что метод в этой статье принципиально не вызывает снижения производительности модели. при этом distro-adamw эквивалентен стандартному adamw+all-reduce по скорости сходимости.

распределенное интернет-обучение

вообще говоря, обучение крупномасштабных нейронных сетей требует значительных коммуникационных затрат.

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

если модель параллельная, промежуточные данные нужно склеить или накопить через all-reduce.

если эти накладные расходы на передачу данных невозможно перекрыть, они станут узким местом в обучении модели.

как оказалось, видеопамять и пропускная способность laohuang очень дороги, и даже оборудование, необходимое для установки нескольких карт, также очень дорогое.

чтобы решить эту проблему, исследователи разработали distro, который снижает требования к взаимодействию между графическими процессорами на четыре-пять порядков, не полагаясь на амортизированный анализ, что обеспечивает обучение больших нейронных сетей с малой задержкой в ​​медленных сетях.

distro является общим, масштабируемым и синхронизированным по часам (аналогично sgd, adam и т. д., каждый шаг обучения использует одни и те же арифметические операции и занимает одно и то же время).

кроме того, по сравнению с предыдущими специальными оптимизаторами с низким уровнем взаимодействия, distro нечувствителен к топологии и архитектуре нейронных сетей телекоммуникационных сетей и может изначально поддерживать параллельное обучение распределенных данных (ddp) с минимальными накладными расходами.

предварительное обучение llm

исследователи использовали nanotron в качестве среды предварительного обучения и использовали только стратегию ddp (каждый графический процессор загружает всю модель в vram).

llm выбирает llama 2 размером 1,2b. в модели и обучении используются следующие гиперпараметры:

в обучающих данных используется набор данных dolma v1.7, а 10% репрезентативных выборок (первые 105b токенов) выбираются случайным образом.

оптимизатор использует adamw, β1=0,9, β2=0,95, пиковая скорость обучения 4×10e-4, используется схема косинусного затухания, а затухание веса установлено на 0,1.

в качестве еще одной серии экспериментов для сравнения adamw был заменен на distro-adamw без изменения гиперпараметров и отключения операции all-reduce в nanotron.

в отличие от предыдущих методов распределенного обучения, distro не синхронизирует состояние оптимизатора (он даже может быть без состояния).

на рисунке ниже представлена ​​кривая потерь при обучении для двух наборов экспериментов с использованием данных 105b для 25 000 шагов. видно, что способность distro к сходимости такая же, как и у all-reduce.

что немаловажно, не влияя на эффект обучения, дитро напрямую уменьшал объем связи с 74,4гб до 86,8мб! это эквивалентно уменьшению нагрузки на полосу пропускания в 857 раз.

автор также заявил, что эти 857 раз — это лишь первоначальный тест, и не будет проблемой потом скорректировать гиперпараметры и уменьшить их в 1000 раз — в 3000 раз.

если это пост-обучение и точная настройка, он может даже достичь оптимизации связи до 10 000 раз, практически не влияя на эффект обучения.

наконец, чтобы проверить эффект обучения, автор выполнил тест gpt4all с нулевым выстрелом на обученной модели и сравнил ее с tinyllama (контрольная точка), обученной на том же количестве токенов.

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

будущие приложения

поток данных

в сценарии этого эксперимента 32 узла используют простейшее all-reduce (полное соединение), и каждый узел передает в среднем 86,8 мб (2,8 мб×31) и получает такой же объем данных.

если для агрегации данных используется выделенный сервер, каждому узлу необходимо загрузить только 2,8 мб данных (полученные данные остаются неизменными), а объем связи дополнительно снижается.

кроме того, асимметрия выгодна, поскольку пропускная способность большинства потребительских интернет-сетей сильно смещена в сторону более высоких скоростей загрузки.

если предположить, что стабильная скорость сети составляет 100 мбит/с для загрузки и 10 мбит/с для загрузки, задержка в худшем случае составит всего 6,94 секунды для загрузки и 2,24 секунды для загрузки. при перекрытии задержка для каждого шага составит 6,94 секунды.

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

пропускная способность

авторы заявили, что текущие эксперименты и исследования относительно ограничены, и невозможно сделать вывод, будет ли скорость сокращения полосы пропускания увеличиваться, уменьшаться или оставаться прежней по мере увеличения размера модели.

однако текущий размер 1.2b, похоже, является минимальным размером, при котором distro может хорошо работать (независимо от того, насколько он мал, он не будет сходиться), поэтому можно предположить, что по мере увеличения размера модели будет относительно меньше и меньше коммуникаций. быть востребованы.

однако также возможно, что объем связи не связан с размером модели. в этом случае размер модели можно увеличить без увеличения пропускной способности связи, чтобы увидеть, улучшит ли более крупная модель эффекты обучения и обучения.

если последний сценарий верен, то парадигма будущего проектирования и производства графических процессоров будет изменена (большая видеопамять и более узкая полоса пропускания).

так уж получилось, что мы также предпочитаем рабочие нагрузки с интенсивными вычислениями (в отличие от интенсивных операций ввода-вывода), поскольку в наши дни полоса пропускания намного дороже, чем вычисления.

федеративное обучение

помимо обучения llm, для чего еще можно использовать distro?

распределенное обучение в интернете сразу же заставляет людей задуматься о федеративном обучении.

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

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

distro не имеет никаких требований к тому, как обрабатывать данные или распределять данные по отдельным узлам графического процессора, и он может быть без сохранения состояния (аналогично федеративному усреднению), поэтому он подходит для будущего федеративного обучения.

виртуальный гетерогенный кластер графических процессоров

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

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

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

с другой стороны, можно также поощрять учреждения и отдельных лиц к гибкому предоставлению собственных вычислительных ресурсов и высвобождению потенциальной вычислительной мощности.

даже некоторые старые карты с недостаточным объемом памяти или вычислительной мощности могут присоединиться, чтобы заработать дополнительные деньги, используя такие стратегии, как fsdp и swarm parallelism, для работы с distro.

энергия

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

проект llama 3.1 потребовал строительства двух больших монолитных сверхкластеров, каждый из которых содержал 24 000 графических процессоров h100, а один только процесс обучения произвел эквивалент 11 000 тонн выбросов co2.

в сегодняшнем llm, помимо увеличения размера параметров модели, также увеличивается объем обучающих данных, в результате чего центры обработки данных, связанные с ии, достигают пределов современных энергетических сетей.

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

в настоящее время теория, лежащая в основе distro, все еще нуждается в дальнейшем изучении, и в будущем будут выпущены более строгие и подробные научные статьи и полные коды.