XYZNOT

Статьи · arXiv 2302.13971

LLaMA: открытые и эффективные базовые языковые модели

LLaMA: Open and Efficient Foundation Language Models

Опубликовано cs.CL arXivPDF

Читать с переводом и ИИ

Кратко в трёх строках

  1. 🎯 Большинство ведущих LLM опираются на огромное число параметров или проприетарные данные, что влечет высокие затраты на инференс и барьеры для исследователей.
  2. 🔧 Обучение компактных трансформеров (от 7B до 65B) на 1.0T–1.4T токенов только с использованием открытых данных, RMSNorm, SwiGLU и RoPE.
  3. 📈 LLaMA-13B превосходит GPT-3 (175B) на большинстве бенчмарков, а LLaMA-65B достигает 68.9% на MMLU после базового instruction tuning.

Аннотация

Мы представляем LLaMA — семейство базовых языковых моделей с числом параметров от 7B до 65B. Мы обучаем наши модели на триллионах токенов и показываем, что создание моделей уровня state-of-the-art возможно исключительно на базе общедоступных данных, без привлечения проприетарных и закрытых датасетов. В частности, LLaMA-13B превосходит GPT-3 (175B) на большинстве бенчмарков, а LLaMA-65B успешно конкурирует с лучшими моделями — Chinchilla-70B и PaLM-540B. Мы открываем доступ ко всем нашим моделям для исследовательского сообщества.

Оригинальная аннотация (англ.)

We introduce LLaMA, a collection of foundation language models ranging from 7B to 65B parameters. We train our models on trillions of tokens, and show that it is possible to train state-of-the-art models using publicly available datasets exclusively, without resorting to proprietary and inaccessible datasets. In particular, LLaMA-13B outperforms GPT-3 (175B) on most benchmarks, and LLaMA-65B is competitive with the best models, Chinchilla-70B and PaLM-540B. We release all our models to the research community.

Разбор статьи

Проблема и мотивация

Стандартные законы масштабирования (такие как Chinchilla) определяют оптимальный баланс между числом параметров и размером датасета для фиксированного вычислительного бюджета на обучение. Однако такой подход игнорирует бюджет на инференс (inference budget), который составляет основную долю эксплуатационных расходов за весь жизненный цикл языковых моделей. С точки зрения эффективности обслуживания предпочтительнее использовать более компактные модели, обученные на гораздо большем объеме данных, чем предписывают вычислительно-оптимальные рекомендации, поскольку их хостинг и запуск обходятся существенно дешевле.

Кроме того, передовые модели уровня state-of-the-art (такие как GPT-3, Chinchilla и PaLM) опираются на закрытые, невоспроизводимые датасеты или непомерно большие архитектуры. LLaMA демонстрирует, что конкурентоспособные базовые модели можно обучать исключительно на общедоступных данных, что открывает возможность их свободного распространения среди исследователей.

Ключевые идеи

  • Обучение с прицелом на инференс: Вместо остановки обучения при достижении вычислительно-оптимального объема данных (например, ~200B токенов для модели 10B), авторы LLaMA обучают модели 7B и 13B на 1.0T токенов, а модели 33B и 65B — на 1.4T токенов.
  • Исключительно открытые датасеты: Все данные для предобучения взяты из публичных источников: CommonCrawl (67%), C4 (15%), GitHub (4.5%), Wikipedia (4.5%), Books (4.5%), ArXiv (2.5%) и Stack Exchange (2%).
  • Модернизированная архитектура Transformer: Включает pre-normalization с помощью RMSNorm для стабильности, функции активации SwiGLU и ротационные позиционные эмбеддинги (RoPE) вместо абсолютных позиций.
  • Инженерная оптимизация: Применяется эффективное по памяти внимание (через библиотеку xformers), кастомный activation checkpointing, а также параллелизм по последовательностям и моделям.

Метод

LLaMA использует авторегрессионный декодер Transformer со следующими модификациями:

  1. Pre-normalization: Нормализация входов с помощью RMSNorm перед каждым подслоем:
  2. Активация SwiGLU: Замена стандартных активаций ReLU/GELU на SwiGLU с уменьшением размерности скрытого слоя до вместо .
  3. Ротационные эмбеддинги (RoPE): Применяются на каждом слое для кодирования относительных позиций без использования абсолютных позиционных эмбеддингов.
  4. Оптимизация: AdamW с параметрами , weight decay , клиппированием градиентов , шагами прогрева (warmup) и косинусным расписанием скорости обучения, спадающим до 10% от максимума. Размер батча составляет 4M токенов для моделей всех масштабов.

Оценка энергопотребления и углеродного следа в процессе обучения рассчитывается следующим образом:

Результаты

  • Рассуждения на основе здравого смысла (Common Sense Reasoning): LLaMA-13B превосходит GPT-3 (175B) на ряде бенчмарков (например, 78.1% против 60.5% на BoolQ; 73.0% против 70.2% на WinoGrande). LLaMA-65B не уступает или превосходит PaLM-540B на PIQA (82.8% против 82.3%) и HellaSwag (84.2% против 83.4%).
  • Closed-book QA: На TriviaQA (в режиме 0-shot) LLaMA-65B достигает 68.2%, а LLaMA-13B — 56.6% (превосходя сопоставимые результаты GPT-3, при этом запускаясь на одном GPU V100).
  • Генерация кода: На HumanEval (pass@1) LLaMA-65B набирает 23.7%, превосходя PaLM-62B (15.9%) и показывая одинаковый результат с PaLM-cont 62B (23.7%).
  • MMLU и тюнинг инструкций: Базовая LLaMA-65B достигает точности 63.4% в режиме 5-shot на MMLU (уступая 69.3% модели PaLM-540B, предположительно из-за меньшего объема книжных корпусов при предобучении). Однако дообучение на простых инструкциях (LLaMA-I 65B) поднимает качество до 68.9%.

Ограничения и открытые вопросы

  • Галлюцинации и правдивость: Результаты на TruthfulQA остаются умеренными (LLaMA-65B получает 0.57 по шкале Truthful и 0.53 по шкале Truthful*Informative), что указывает на сохраняющуюся склонность к галлюцинациям.
  • Рост токсичности: На RealToxicityPrompts уровень токсичности растет вместе с размером модели, особенно на уважительных промптах (0.141 для 65B против 0.081 для 7B).
  • Пробел в академических знаниях: Результаты на MMLU отставали от Chinchilla-70B и PaLM-540B; авторы связывают это с тем, что обучение проводилось лишь на ~177 ГБ книг и научных статей по сравнению с ~2 ТБ в проприетарных наборах.

Ключевые термины

LLaMA
Семейство базовых языковых моделей с параметрами от 7B до 65B, обученных на объемах до 1.4 триллиона токенов с использованием исключительно общедоступных датасетов.
Inference Budget
Вычислительные затраты и задержка при обслуживании обученной модели; оптимизируются за счет обучения меньших по размеру моделей на большем количестве токенов.
RMSNorm
Нормализация слоев по среднеквадратичному значению (Root Mean Square Layer Normalization), используемая для нормализации входов подслоев трансформера ради стабильности обучения.
SwiGLU
Вариант вентильного линейного блока (Gated Linear Unit) с функцией активации Swish и скрытой размерностью, равной 2/3 * 4d.
Rotary Positional Embeddings (RoPE)
Метод внедрения информации об относительной позиции в слои внимания трансформера путем вращения представлений query и key.
xformers
Библиотека с открытым исходным кодом, реализующая эффективное причинное многоголовое внимание (causal multi-head attention) без сохранения больших матриц весов внимания.
LLaMA-I
Версия LLaMA-65B, дообученная следовать инструкциям по протоколу Flan для улучшения следования указаниям и повышения метрик на MMLU.
TruthfulQA
Бенчмарк, измеряющий склонность LLM воспроизводить человеческие заблуждения и генерировать галлюцинации в ответ на состязательные фактологические вопросы.

Вопросы

Какие датасеты использовались для предобучения LLaMA?

Для предобучения применялись исключительно открытые данные: английский сегмент CommonCrawl (67%), C4 (15%), GitHub (4.5%), Wikipedia на 20 языках (4.5%), Gutenberg и Books3 (4.5%), ArXiv (2.5%) и Stack Exchange (2%).

Как LLaMA-13B соотносится с GPT-3 (175B)?

LLaMA-13B превосходит GPT-3 на большинстве стандартных бенчмарков (включая BoolQ, PIQA и WinoGrande), будучи при этом более чем в 10 раз компактнее и способной выполнять инференс на одном потребительском или серверном GPU.

Сколько времени заняло обучение LLaMA-65B?

Обучение LLaMA-65B на 1.4 триллиона токенов выполнялось со скоростью около 380 токенов/сек на GPU на кластере из 2 048 карт A100 (80GB) и заняло приблизительно 21 день.

Какие архитектурные изменения внесены в LLaMA по сравнению с оригинальным Transformer?

LLaMA использует пре-нормализацию входов подслоев с помощью RMSNorm, заменяет ReLU на активацию SwiGLU (размерность 2/3 * 4d) и использует ротационные позиционные эмбеддинги (RoPE) вместо абсолютных.

Обзор на этой странице написан ИИ по тексту статьи и может содержать ошибки. Подробности смотрите в самой статье.

Читать с переводом и ИИ