Глава 4.3 — Законы масштабирования
Содержание
- От «каких данных» к «сколько всего нужно»
- Эмпирическое открытие: гладкие степенные законы на протяжении многих порядков величины
- Почему это открытие изменило принятие решений в отрасли
- Вопрос вычислительно-оптимальности: параметры против токенов
- Пересмотр рецепта в Chinchilla
- Нюанс, который проверяют интервьюеры: вычислительно-оптимальное — не то же самое, что оптимальное для развёртывания
- Эмерджентные способности и исчерпание данных: две трещины в гладкой кривой
- Взгляд с точки зрения интервью
- Вопросы для самопроверки
- Источники
1. От «каких данных» к «сколько всего нужно»
Глава 4.2 завершилась указанием на пробел: все утверждения о качестве и курировании данных были качественными, сводившимися к «это помогает», без принципиального способа заранее предсказать, насколько данное изменение размера модели, объёма данных или вычислительного бюджета обучения реально улучшит качество модели. Именно этот прогностический пробел и заполняют законы масштабирования. Вместо того чтобы рассматривать вопросы «стоит ли обучать модель большего размера» или «стоит ли собирать больше данных» как вопросы, на которые отвечает интуиция или дорогостоящий метод проб и ошибок, законы масштабирования превращают их в задачу экстраполяции: обучите семейство меньших моделей дёшево, измерьте, как ведёт себя их функция потерь при варьировании размера, объёма данных и вычислений, и подберите функциональную форму, которая позволит вам предсказать — с реальной количественной уверенностью — чего достигнет гораздо более крупная и гораздо более дорогая модель, прежде чем вы потратите деньги на её обучение.
2. Эмпирическое открытие: гладкие степенные законы на протяжении многих порядков величины
Каплан (Kaplan) с соавторами в 2020 году провели систематическое исследование именно такого рода в поразительном диапазоне масштабов, обучив семейство трансформерных языковых моделей, различающихся по размеру на несколько порядков величины, и измерив тестовую функцию потерь как функцию трёх величин: числа параметров модели, размера обучающего датасета и объёма вычислений, затраченных на обучение модели. Главный эмпирический результат состоит в том, что при примерно фиксированных или не создающих узкое место двух других величинах тестовая функция потерь убывает по гладкому степенному закону от каждой из этих величин — то есть потери падают приблизительно как $L(N) \approx (N_c / N)^{\alpha_N}$ для числа параметров $N$, и аналогично для размера датасета и вычислений, каждый со своим подобранным показателем степени, на протяжении нескольких порядков величины масштаба без каких-либо признаков нарушения этой зависимости или упирания в предел в исследованном диапазоне. Это удивительная вещь для эмпирического обнаружения: обучение нейронных сетей в целом зашумлено, полно дискретных архитектурных решений, расписаний скорости обучения и особенностей гиперпараметров, и тем не менее агрегированная кривая потерь, если посмотреть на неё в логарифмических координатах против масштаба, близка к прямой линии на огромном диапазоне размеров моделей и датасетов.
Степенная форма важна из-за того, что она подразумевает для экстраполяции. Зависимость, представляющая собой гладкий степенной закон на измеренном диапазоне, даёт вам реальное основание экстраполировать её несколько за пределы этого диапазона, поскольку у степенных законов нет скрытых смен режима, притаившихся произвольным образом, — вы можете подобрать показатель степени на более дешёвых экспериментах меньшего масштаба и использовать подобранную кривую для прогнозирования потерь на масштабе, который вы ещё не построили. Каплан с соавторами также обнаружили, что эти три фактора компенсируют друг друга описуемым образом и что более крупные модели более эффективны по выборке — им требуется меньше токенов для достижения заданного уровня потерь, чем меньшим моделям, — что напрямую привело к предписанию о том, как распределять бюджет вычислений на обучение между размером модели и размером датасета, предписанию, которое, как оказалось, потребовало существенного пересмотра два года спустя.
3. Почему это открытие изменило принятие решений в отрасли
До появления этой линии работ решение обучить существенно более крупную модель было, в важном смысле, ставкой, сделанной на интуиции и прежних анекдотических наблюдениях: более крупные модели, как правило, показывали лучшие результаты, поэтому сделать модель ещё крупнее казалось многообещающим, но никто не мог сказать с какой-либо количественной уверенностью, насколько лучше, и стоит ли данное увеличение масштаба своей резко возросшей стоимости, не обучив фактически модель и не выяснив это. Законы масштабирования превратили вопрос «строить ли нам более крупную модель» из качественной догадки в упражнение по бюджетированию: имея гладкую, подобранную зависимость между потерями и масштабом, вы можете вычислить ожидаемые потери модели заданного размера и вычислительного бюджета до того, как выделите ресурсы на её обучение, и вы можете задать и обратный вопрос — при заданной целевой функции потерь каков минимальный объём вычислений, необходимый для её достижения, и какое разбиение параметры/токены обеспечивает этот минимум. Это именно тот вид прогностического инструмента, который позволяет организации обосновать девяти- или десятизначный по стоимости обучающий прогон перед самой собой и перед инвесторами чем-то более строгим, чем «раньше большее срабатывало». Трудно переоценить, насколько сильно этот переворот в мышлении сформировал распределение ресурсов в отрасли за последние несколько лет: как только зависимость потерь от вычислений стала подбираемой и экстраполируемой кривой, решение о масштабировании перестало быть ставкой и стало ближе к инженерному расчёту.
4. Вопрос вычислительно-оптимальности: параметры против токенов
Признавая, что законы масштабирования позволяют предсказывать потери как функцию вычислений, внутри понятия «вычисления» остаётся действительно нетривиальный вопрос распределения: при фиксированном бюджете вычислений на обучение, измеряемом в операциях с плавающей точкой, вы можете потратить его либо на более крупную модель, обученную на меньшем числе токенов, либо на модель поменьше, обученную на большем числе токенов, и эти два варианта не эквивалентны — суммарные вычисления для плотного трансформера, обучаемого одну эпоху, с хорошим приближением пропорциональны произведению числа параметров на число токенов — широко используемое приближение: $C \approx 6ND$, где $C$ — вычисления на обучение в FLOPs, $N$ — число параметров, а $D$ — число обучающих токенов, — так что фиксированный бюджет вычислений действительно очерчивает кривую компромисса между ними: $N \cdot D \approx \text{const}$. Исходный анализ Каплана с соавторами предполагал, что при фиксированном бюджете вычислений вычислительно-оптимальное распределение отдавало предпочтение наращиванию размера модели значительно быстрее, чем наращиванию размера датасета — по сути, приоритету более крупных моделей, обученных на сравнительно скромных объёмах данных относительно их размера. Это предписание было влиятельным и отразилось в ряде крупных моделей, обученных в период после его публикации, многие из которых, как оказалось задним числом, были существенно крупнее, чем оправдывал объём обучающих данных, которыми их накормили.
5. Пересмотр рецепта в Chinchilla
Работа Хоффмана (Hoffmann) с соавторами 2022 года о модели Chinchilla пересмотрела именно этот вопрос с более тщательным экспериментальным дизайном — обучив большое число моделей в диапазоне размеров и числа токенов и подобрав поверхность потерь напрямую как совместную функцию обеих величин, а не выводя оптимальное разбиение косвенно, — и пришла к существенно иному предписанию. Их центральный вывод состоял в том, что многие крупные языковые модели, обученные согласно исходным рекомендациям Каплана с соавторами, были значительно недообучены относительно своего числа параметров: при том же объёме вычислений, который потребляли эти модели, существенно меньшая модель, обученная на пропорционально большем числе токенов, достигла бы более низких потерь при том же самом бюджете вычислений. Конкретно, подобранная в Chinchilla вычислительно-оптимальная зависимость подразумевает, что размер модели и число обучающих токенов должны масштабироваться примерно пропорционально друг другу по мере роста вычислений, что на практике переводится в эмпирическое правило примерно двадцати обучающих токенов на параметр модели — $D_{\text{opt}} \approx 20\,N$ — соотношение, которое теперь принято называть «вычислительно-оптимальным» или «Chinchilla-оптимальным». В сочетании с $C \approx 6ND$ это эмпирическое правило и лежит в основе вывода о том, что и оптимальное число параметров, и оптимальное число токенов растут примерно как квадратный корень из вычислений, $N_{\text{opt}}(C) \propto C^{0.5}$ и $D_{\text{opt}}(C) \propto C^{0.5}$, а не так, что одна величина доминирует над другой по мере роста вычислений. Хоффман с соавторами продемонстрировали это конкретно, обучив модель Chinchilla с примерно четвертью числа параметров современной ей крупной модели, но на пропорционально большем объёме данных при том же бюджете вычислений, и показав, что она превосходит более крупную, но менее тщательно обученную модель по широкому набору прикладных оценок. Этот результат почти мгновенно изменил рецепт по умолчанию в отрасли: интересным рычагом улучшения модели при фиксированных вычислениях оказалось не просто «сделать её больше», а «правильно подобрать соотношение размер/данные», и волна последующих моделей была обучена ближе к Chinchilla-оптимальному соотношению или явно ориентировалась на него.
6. Нюанс, который проверяют интервьюеры: вычислительно-оптимальное — не то же самое, что оптимальное для развёртывания
В результате Chinchilla есть тонкость, заслуживающая отдельного внимательного разбора, поскольку это именно то различие, которое опытные интервьюеры любят проверять, чтобы отделить кандидатов, заучивших «20 токенов на параметр», от кандидатов, понимающих, что именно оптимизирует это число. Chinchilla-оптимальность — это утверждение о минимизации потерь на обучении при фиксированном бюджете вычислений на обучение — и только. Оно ничего не говорит о стоимости запуска итоговой модели на инференсе, многократно, месяцами или годами, на потенциально огромном числе пользовательских запросов, а ведь именно такова реальная структура затрат, с которой сталкивается развёрнутая в продакшене модель. Модель меньшего размера дешевле в эксплуатации на инференсе при фиксированном уровне качества, а стоимость инференса, накопленная за весь срок эксплуатации модели, может во много раз превзойти разовую стоимость обучения для модели, обслуживающей высокую нагрузку. Это означает, что часто имеет смысл намеренно обучать модель меньшего размера, чем Chinchilla-оптимум, на гораздо большем числе токенов, чем предполагает «оптимальное» соотношение, — разговорно говоря, «переобучать» её относительно точки, оптимальной по вычислениям на обучение, — принимая менее эффективный на единицу FLOP обучения прогон в обмен на модель поменьше и дешевле в обслуживании, достигающую сопоставимого качества. Ряд широко развёрнутых моделей сделали именно этот выбор явно, обучаясь намеренно за пределами Chinchilla-оптимального числа токенов для своего размера, потому что расчёт полной стоимости владения, включающий инференс, склонялся в пользу меньшей модели по сравнению с большей, даже ценой менее эффективного по вычислениям обучающего прогона. Общий урок, который стоит чётко сформулировать на интервью, состоит в том, что «оптимальное» в «вычислительно-оптимальном» всегда имеет неявно прикреплённую к нему цель, и цель, минимизирующая потери на обучении при заданном бюджете обучения, — это другая цель, нежели та, что минимизирует полную стоимость владения для модели, которая будет обслуживаться в масштабе; смешение этих двух целей — самая распространённая ошибка при небрежном рассуждении о законах масштабирования.
7. Эмерджентные способности и исчерпание данных: две трещины в гладкой кривой
Всё сказанное до сих пор трактовало степенную зависимость как чистую и монотонную, но стоит знать о двух задокументированных осложнениях, прежде чем считать «кривая потерь гладкая» исчерпывающим описанием.
Первое — спор об эмерджентных способностях. Вэй (Wei) с соавторами каталогизировали поразительный паттерн на множестве бенчмарков: производительность на некоторых задачах растёт с масштабом не постепенно, как агрегированная кривая потерь, — она остаётся на уровне случайного угадывания до определённого порога масштаба, а затем резко взлетает. Арифметика, некоторые виды многошагового рассуждения и ещё несколько способностей выглядели так, будто «включаются» скачком, а не улучшаются непрерывно. При буквальном прочтении это выглядело как настоящее отклонение от истории о гладком степенном законе: способности, которые попросту отсутствуют ниже порога и появляются разрывно выше него. Ответ Шеффера (Schaeffer) с соавторами, статья с запоминающимся названием «Are Emergent Abilities of Large Language Models a Mirage?» («Эмерджентные способности больших языковых моделей — мираж?»), утверждал, что по крайней мере часть этой кажущейся разрывности — артефакт метрики, а не свойство модели. Многие «эмерджентные» бенчмарки оцениваются нелинейной или разрывной метрикой — например, точным совпадением (exact-match) на многошаговой задаче, где ошибка в одном-единственном шаге оценивается точно так же, как ошибка во всех шагах, — так что лежащая в основе способность, которая на самом деле улучшается гладко и непрерывно с масштабом, при измерении метрикой с жёстким порогом «прошёл/не прошёл» даёт на графике резкий на вид скачок, хотя на уровне фактического качества выхода модели ничего разрывного не произошло. Переоценка тех же самых чекпоинтов более гладкой метрикой с частичным баллом стёрла большую часть резкой «эмерджентности» в нескольких бенчмарках, которые они перепроверили. Честное состояние дел в отрасли — вероятно, верно и то и другое: часть «эмерджентности» бенчмарков — артефакт измерения, и остаётся открытым, активно обсуждаемым вопросом, переживает ли хоть какой-то по-настоящему разрывный скачок способности исправление метрики. Дисциплина, которую стоит взять с собой на собеседование, — относиться к утверждению «эта способность появилась внезапно» как к тезису, который нужно проверять, а не как к выводу, который нужно принимать на веру, — и это ровно тот же скептицизм по поводу валидности оценки, который глава 5.5 развивает в другом контексте.
Второе осложнение более приземлённое и в некотором смысле более значимое: исходные законы масштабирования выводились в предположении, что вычисления — связывающее ограничение, а данные практически неограниченны, — предположение, которое с каждым годом становится всё менее комфортным, поскольку самый качественный текстовый материал в публичном интернете конечен и всё больше исчерпывается. Законы масштабирования с ограничением по данным авторства Мюннигхоффа (Muennighoff) с соавторами расширяют рамку Каплана/Chinchilla на режим, в котором свежие данные заканчиваются раньше, чем вычислительный бюджет, и центральный практический вывод состоит в том, что повторение данных на протяжении нескольких эпох обходится далеко не так дорого, как предполагали исходные законы, построенные в допущении одной эпохи: обучение на фиксированном, меньшем датасете вплоть до примерно четырёх эпох даёт отдачу, близкую к той, что дал бы эквивалентный по размеру свежий датасет, прежде чем отдача от дальнейшего повторения резко падает — Мюннигхофф (Muennighoff) с соавторами формализуют это, дисконтируя повторяющиеся токены в «эффективный размер данных», $D_{\text{eff}}$, функцию числа эпох, которая растёт медленнее, чем линейно, и именно так фиксирует убывающую отдачу от повторения. Это важно ровно по той причине, по которой и должно быть важно: по мере того как передовые лаборатории разгоняют число обучающих токенов до десятков триллионов, «мы уже использовали почти весь качественный текст интернета» перестаёт быть гипотетическим и становится реальным ограничением вычислительно-оптимального рецепта, и законы масштабирования с ограничением по данным — это инструмент для рассуждения о том, что делать, когда дефицитным ресурсом становятся не вычисления, а свежие токены.
Законы масштабирования вместе с пересмотром Chinchilla и этими двумя оговорками дают количественный способ решить, насколько крупную модель строить и сколько данных ей скармливать — но они ничего не говорят о том, как вообще разместить такую крупную модель на оборудовании и обучить её за конечное время, учитывая, что ни параметры модели, ни состояние оптимизатора, как правило, не помещаются на одном ускорителе при масштабе переднего края. Именно эта чисто системно-инженерная задача — корректное распределение обучающего прогона по множеству устройств — тема следующей главы.
8. Взгляд с точки зрения интервью
В: Что именно установили законы масштабирования Каплана с соавторами и почему это было значимым открытием сверх «более крупные модели лучше»? Сильный ответ формулирует, что потери следуют гладкому степенному закону от размера модели, размера датасета и вычислений на протяжении нескольких порядков величины, что значимо не потому, что показывает пользу масштаба (это уже было известно), а потому что делает эту зависимость количественно предсказуемой и экстраполируемой — позволяя прогнозировать потери крупной модели на основе экспериментов на гораздо меньшем, более дешёвом масштабе, превращая решения о масштабировании из ставок, движимых интуицией, в расчёты.
В: Что именно Chinchilla опровергла в исходном предписании Каплана с соавторами и что она предложила взамен? Сильный ответ формулирует, что исходное вычислительно-оптимальное распределение Каплана с соавторами отдавало предпочтение росту размера модели быстрее, чем росту размера датасета, что приводило ко многим современным моделям, недообученным относительно их числа параметров; более тщательная совместная подгонка в Chinchilla показала, что размер модели и число токенов должны масштабироваться вместе примерно пропорционально, при соотношении примерно 20 токенов на параметр, и продемонстрировала это конкретно, показав, что меньшая, но более обученная модель может превзойти более крупную, но менее обученную при равных вычислениях.
В: Имеет ли смысл когда-либо обучать модель значительно дольше, чем предполагает Chinchilla-оптимальное число токенов? Зачем кому-либо так делать? Сильный ответ отвечает явно «да» и объясняет различие: Chinchilla-оптимум минимизирует потери при фиксированном бюджете вычислений на обучение, но ничего не говорит о стоимости инференса; если модель будет интенсивно обслуживаться в течение долгого срока эксплуатации, полную стоимость владения (обучение плюс инференс) можно минимизировать, намеренно выбрав модель меньшего размера, обученную на пропорционально большем числе токенов, чем «оптимальное», принимая неэффективность обучения ради дешевизны инференса.
В: Как бы вы использовали законы масштабирования на практике, чтобы определить конфигурацию обучающего прогона до траты вычислений? Сильный ответ описывает обучение серии гораздо меньших, более дешёвых моделей в разных размерах и с разным числом токенов, подбор функции потерь как функции этих переменных (и вычислений), а также использование подобранной кривой для выбора числа параметров и токенов, которое либо достигает целевых потерь при минимальных вычислениях, либо максимизирует ожидаемое качество при фиксированном бюджете вычислений — явно трактуя это как упражнение по экстраполяции, проверяемое, где возможно, на отложенных точках масштаба.
В: В чём ограничение опоры исключительно на подгонку степенного закона законов масштабирования для экстраполяции? Сильный ответ отмечает, что подгонка эмпирическая и проверена только в диапазоне реально исследованных масштабов; экстраполяция далеко за пределы этого диапазона предполагает, что степенной закон продолжает выполняться и что не вмешивается новый режим (например, исчерпание данных, эмерджентные способности, изменения оптимальных гиперпараметров при большем масштабе), что является реальным риском, о котором предупреждают и сами исходные статьи.
В: Коллега говорит: «рассуждение — это эмерджентная способность, проявляющаяся только после определённого масштаба». Как бы вы ответили? Сильный ответ не просто соглашается или не соглашается — он называет сам спор: Вэй (Wei) с соавторами задокументировали реальные, резкие скачки на некоторых бенчмарках по мере роста масштаба, но Шеффер (Schaeffer) с соавторами показали, что по крайней мере часть этого — артефакт метрики, поскольку разрывное оценивание (exact-match на многошаговых ответах) может превратить гладко улучшающуюся лежащую в основе способность в кажущийся внезапным скачок. Сильный ответ спрашивает, на какой метрике основано утверждение, прежде чем принять, что сама способность разрывна, и отмечает, что чистое разрешение этого вопроса всё ещё остаётся открытой исследовательской задачей.
9. Вопросы для самопроверки
- Какие три величины закон масштабирования Каплана с соавторами связывает с тестовой функцией потерь, и какая функциональная форма описывает эту зависимость?
- Почему гладкая степенная подгонка на широком диапазоне масштабов даёт больше уверенности при экстраполяции за пределы этого диапазона, чем подгонка с видимыми сменами режима?
- В каком конкретном смысле законы масштабирования изменили природу решения об обучении более крупной модели по сравнению с тем, что было до их появления?
- Почему вычисления на обучение для плотного трансформера примерно пропорциональны произведению числа параметров на число токенов и что это подразумевает для компромисса между размером модели и размером датасета при фиксированных вычислениях?
- В чём состояло центральное эмпирическое утверждение Chinchilla о ранее обученных крупных моделях и какие данные его подкрепляли?
- Сформулируйте эмпирическое правило Chinchilla-оптимальности в терминах токенов на параметр.
- Объясните точно, почему «вычислительно-оптимальное» и «оптимальное для модели, которую вы собираетесь развёртывать в масштабе», — это разные цели, и приведите конкретную причину, по которой инженерная команда может намеренно нарушить Chinchilla-оптимальное соотношение.
- Объясните, как разрывная метрика оценки может заставить гладко улучшающуюся способность выглядеть внезапным «эмерджентным» скачком, и какие данные позволили бы отличить настоящую разрывность от артефакта измерения.
- Почему исходные законы масштабирования Каплана и Chinchilla неявно предполагают, что данные не являются связывающим ограничением, и что меняет в рецепте масштабирование с ограничением по данным, когда это допущение перестаёт выполняться?
10. Источники
- Kaplan, J., McCandlish, S., Henighan, T., Brown, T. B., Chess, B., Child, R., Gray, S., Radford, A., Wu, J., & Amodei, D. (2020). Scaling Laws for Neural Language Models. arXiv:2001.08361. https://arxiv.org/abs/2001.08361
- Hoffmann, J., Borgeaud, S., Mensch, A., et al. (2022). Training Compute-Optimal Large Language Models (Chinchilla). NeurIPS 2022. arXiv:2203.15556. https://arxiv.org/abs/2203.15556
- Wei, J., Tay, Y., Bommasani, R., et al. (2022). Emergent Abilities of Large Language Models. TMLR 2022. arXiv:2206.07682. https://arxiv.org/abs/2206.07682
- Schaeffer, R., Miranda, B., & Koyejo, S. (2023). Are Emergent Abilities of Large Language Models a Mirage? NeurIPS 2023. arXiv:2304.15004. https://arxiv.org/abs/2304.15004
- Muennighoff, N., Rush, A., Barak, B., et al. (2023). Scaling Data-Constrained Language Models. NeurIPS 2023. arXiv:2305.16264. https://arxiv.org/abs/2305.16264