Законы масштабирования больших языковых моделей, GPT-4o и метод усиленного обучения: что предсказывают кривые.
Как читать законы масштабирования больших языковых моделей, что обнаружили Каплан и Чинчилья, как лаборатории использовали их от GPT-3 до GPT-4o, и почему метод усиленного обучения добавляет новую ось вычислений.
Источники: Scaling Laws for LLMs: From GPT-3 to o3
Почти каждый значительный скачок в качестве языковых моделей за последние несколько лет был обусловлен тем, что одно и то же делали в более крупных масштабах: больше параметров, больше токенов для обучения, больше GPU. Законы масштабирования — это уравнения, превращающие эту практику в нечто, что можно планировать, поскольку они позволяют предсказать, как будет снижаться потери модели во время тестирования по мере увеличения ресурсов, таких как вычислительные мощности для обучения. Их также часто неправильно интерпретируют, поэтому в заголовках новостей чередуются утверждения вроде «масштабирование гарантировано» и «масштабирование столкнулось с препятствиями». Прочитав эту статью, вы сможете правильно анализировать графики масштабирования в формате лог-лог, объяснить, что на самом деле говорят результаты исследований Kaplan и Chinchilla, рассуждать о дискуссии вокруг «замедления» развития моделей, не занимая чью-либо сторону, и понять, почему агенты и модели для рассуждений являются следующими сферами, где осуществляется масштабирование вычислительных мощностей.
Структура изложения — снизу вверх. Мы начинаем с математики закона степени, переходим к исследованиям, которые установили законы масштабирования для языковых моделей, рассматриваем, как эти законы влияли на семейство GPT и более поздние модели, изучаем аргументы о том, что процесс масштабирования теряет эффективность, и завершаем рассмотрением направлений, которые позволяют продолжать прогресс даже при снижении прироста эффективности в результате предварительной обучаемости.
Основной элемент: законы степени
Две величины, одна предсказуемая зависимость
Закон степени — это просто правило, связывающее две величины таким образом, что пропорциональное изменение одной приводит к пропорциональному изменению другой. В контексте больших языковых моделей одной из двух величин почти всегда является потери на тестировании (иногда — такой показатель, как точность на последующей задаче), а другой — параметр, который регулируется: количество параметров, размер набора данных или общее время вычислений в процессе обучения.
Типичное утверждение из статьи о GPT-3 звучит примерно так: при наличии достаточного количества данных функция потерь при валидации должна следовать приблизительно плавной закону степени в зависимости от размера модели. Практический смысл заключается в том, что количество параметров и потери при тестировании связаны между собой измеримым образом. Увеличивая размер модели при сохранении других условий (достаточно данных, достаточных вычислительных ресурсов), потери снижаются в коэффициенте, который можно заранее предсказать.
Полезной свойством здесь является инвариантность к масштабу. Если умножить входные данные на какой-либо константный коэффициент, выходные данные также умножатся на фиксированный коэффициент, независимо от того, с какой точки кривой вы начали. Именно это делает законы степени привлекательными для прогнозирования: зависимость, которую вы измеряете между моделью с 10 млн и 100 млн параметров, даёт вам конкретную информацию о переходе от 10 млрд к 100 млрд параметров.
Стандартная и обратная формы
Основная формула имеет вид y = a * x^p, где x и y — это две величины, а a и p — константы, определяемые на основе данных. При положительном показателе степени y растет по мере увеличения x. На обычных координатах кривая изгибается вверх; на координатах логарифмов она превращается в прямую линию, поскольку применение логарифмов приводит к уравнению log y = log a + p * log x, которое является линейным уравнением с угловым коэффициентом p. Именно по этой причине в научных статьях почти всегда используются логарифмические масштабы.
Однако кривые, показанные в статьях о больших языковых моделях, имеют противоположный направление: функция потерь снижается по мере увеличения ресурсов. Это обратное закономерность степенного закона, y = a * x^(-p), то есть та же самая формула с отрицательным показателем степени. Изменение знака показателя степени приводит к изменению формы кривой, а на логарифмических координатах получается характерная прямая, идущая вниз и вправо. Когда в статье потери показаны в зависимости от вычислительных мощностей, данных или параметров в виде чёткой спадающей линии, именно такое соотношение и изображается. Имейте это в виду, поскольку прямолинейность кривой — это следствие использования логарифмических координат, и многие недопонимания, связанные с масштабированием, возникают из-за забывания об этом.
Первое систематическое исследование: масштабирование потерь с параметрами, данными и вычислительными мощностями
Открытые вопросы до 2020 года
Когда появился первоначальный GPT, не было ясно, насколько важен масштаб. Модели языка обещали многое, но их возможности были ограничены, и не существовало четкого способа их улучшения. На несколько вопросов не было однозначных ответов. Имеет ли большое значение структура сети, то есть количество слоев и ширина каждого из них? Обеспечивает ли более крупная модель более надежную производительность? Сколько данных требуется более крупной модели?
В статье OpenAI 2020 года «Законы масштабирования для нейронных моделей языка» были предприняты попытки ответить на эти вопросы путем измерения того, как потери во время тестирования изменяются в зависимости от размера модели, ее структуры, размера набора данных, вычислительных ресурсов для обучения и размера пакетов. Основным выводом стало то, что потери следуют закону степени для каждого из трех показателей, причем некоторые тенденции сохраняются на протяжении более чем семи порядков величины:
- Количество параметров модели.
- Размер набора данных.
- Вычислительные ресурсы для обучения.
Важным условием является то, что каждая зависимость существует только до тех пор, пока две другие величины не становятся ограничивающим фактором. Огромная модель, обученная на крошечном наборе данных, не соответствует кривой параметров, поскольку данные становятся узким местом.
Как проводились эксперименты
Исследователи провели предобучение моделей с количеством параметров до 1,5 млрд на подмножествах корпуса WebText2, содержащих от 22 млн до 23 млрд токенов. Каждая модель использовала контекст из 1 024 токенов и стандартную задачу прогнозирования следующего токена, представляющую собой функцию потерь кросс-энтропии по словарю. Та же функция кросс-энтропии, измеренная на отложенном тексте, служила основной метрикой производительности. Все это не является чем-то необычным; это по сути стандартная схема предобучения, используемая для большинства больших языковых моделей, и именно поэтому результаты так хорошо обобщались.
Как выглядят полученные законы
Показатель потерь при тестировании на WebText2 постепенно снижался по мере увеличения параметров, данных и вычислительных мощностей. Эти тенденции наблюдались в диапазоне восьми порядков величины вычислительных мощностей, шести порядков величины размера модели и двух порядков величины размера набора данных. Полученные уравнения соответствуют вышеописанному закону обратных степеней, но с небольшими изменениями: ведущая константа принимает значение один, а константа масштабирования находится внутри скобок. Например, для размера модели формула имеет вид L(N) = (N_c / N)^alpha_N, где N — количество параметров, N_c — подобранная константа, а alpha_N — подобранный показатель степени. Аналогичные формулы существуют для размера набора данных D и вычислительных мощностей C.
Для получения чистых кривых требовалась одна деталь: параметры из таблиц позиционных и токенных эмбеддингов исключаются из подсчёта. Их включение делает тенденции более шумными, тогда как учёт только параметров, не являющихся эмбеддингами, даёт аккуратные прямые линии. Если вы когда-либо попытаетесь воссоздать график масштабирования, именно такой выбор при учёте может незаметно изменить ваши результаты.
Поскольку каждый закон предполагает, что другие факторы не являются узкими местами, практическим правилом является совместное масштабирование всех трёх. Если воздействовать только на один из них, вы быстро столкнётесь с снижением эффективности.
Чтение кривых без логарифмической шкалы
Графики в логарифмическом масштабе выглядят чрезвычайно линейно, что склоняет к чрезмерно оптимистичному толкованию. Перерисуйте те же подогнанные законы на обычных осей — форма кривой полностью изменится: сначала она резко падает, а затем сглаживается, напоминая экспоненциальное затухание.
Это важно, потому что многие популярные комментарии подразумевают противоположное: будто качество модели растёт экспоненциально, в то время как вычислительные ресурсы увеличиваются лишь логарифмически. Математика говорит о чём-то гораздо более реалистичном. Каждое дальнейшее снижение ошибки требует множественного увеличения ресурсов, поэтому достижение улучшений становится всё дороже и дороже по мере продвижения вперёд. Прямая линия на графике логаритмов против логаритмов означает «десять раз больше вычислительных ресурсов дают фиксированное процентное улучшение», а не «немного больше ресурсов дают значительно лучшее качество».
Форма почти не важна, важна масштабированность
Помимо трех законов степеней, в статье было установлено, что архитектурные параметры, такие как соотношение глубины и ширины, оказывают лишь незначительное влияние на уровень потерь по сравнению с первоначальным масштабом. Увеличение количества параметров, данных и вычислительных ресурсов приводит к плавным и надежным улучшениям; изменение пропорций сети оказывает гораздо меньший эффект.
Исследователи также отметили, что более крупные модели более эффективны с точки зрения использования данных. Более крупная модель достигает заданного уровня потерь при обработке меньшего количества токенов по сравнению с более мелкой моделью. С чисто вычислительной точки зрения это предполагает необычную стратегию: обучать очень крупную модель на относительно небольшом объеме данных и прекращать процесс обучения задолго до ее сходимости. Это действительно оптимально с точки зрения вычислительных ресурсов во время обучения, но это игнорирует то, что происходит после него. Обслуживание крупной модели стоит дорого за каждый запрос, поэтому на практике команды обычно поступают наоборот — обучают более мелкие модели на большем объеме данных, поскольку их хранение и обслуживание значительно дешевле.
В статье также рассматривался вопрос о том, как должен расти размер набора данных вместе с размером модели, и был сделан вывод, что объем данных может увеличиваться медленнее, чем количество параметров. Приблизительно, чтобы сделать модель примерно в восемь раз больше, требовалось всего лишь примерно в пять раз больше данных для избежания переобучения. (Это соотношение следует из установленной зависимости, согласно которой потребность в данных растет пропорционально размеру модели, возведенному в степень, немного меньшую единицы.) Имейте это рекомендацию в виду, поскольку последующие исследования Chinchilla опровергли её.
Наконец, те же закономерности были обнаружены и в нескольких других наборах данных для оценки после того, как к показателю потерь была добавлена фиксированная коррекция с учётом различий в распределении данных. В совокупности эти результаты убедительно показали, что моделирование языка развивается плавно и предсказуемо при соответствующем масштабировании размера модели, объёма данных и вычислительных ресурсов, а также что более крупные модели будут как лучше, так и более эффективны с точки зрения использования данных. Именно это послужило основанием для проведения масштабных предварительных тренировок, которые последовали за этими исследованиями.
Как лаборатории на практике используют законы масштабирования
Плюсы масштабного предобучения сопровождаются неприятным минусом. Для достижения лучших результатов требуются огромные модели и наборы данных, а их обработка стоит огромных денег. Представьте, что вы тратите около десяти миллионов долларов на одну только обработку, чтобы в итоге обнаружить, что модель оказалась неудовлетворительной. При такой стоимости нет возможности для проб и ошибок при настройке полноразмерной модели; необходима уверенность в том, что выбранная конфигурация сработает.
Законы масштабирования — это инструмент, который обеспечивает такую уверенность. Помимо подтверждения существования определенных связей, они предоставляют исследователям конкретный алгоритм работы:
- Обучить семейство гораздо более мелких моделей в различных условиях.
- Приложить законы масштабирования к результатам работы этих мелких моделей.
- Использовать полученные законы для прогнозирования производительности гораздо более крупной модели.
Этот процесс не является абсолютно надежным. Экстраполяция с небольших экспериментов на крупном масштабе может быть неточной, к тому же некоторые свойства меняются с масштабом таким образом, который небольшая модель не сможет выявить. Для повышения надежности экстраполяции с небольших на крупные масштабы были разработаны такие методы, как схемы передачи гиперпараметров, а применение законов масштабирования на недорогих экспериментах теперь является обычной практикой. Помимо снижения технических рисков, достоверный прогноз также значительно упрощает обоснование бюджета на крупномасштабные исследования для тех, кто их финансирует.
Существует простое правило, помогающее определить, когда не стоит доверять экстраполяции: если ваши небольшие эксперименты не охватывают как минимум несколько порядков величин, или если вы меняете состав данных, токенизатор или архитектуру между небольшими и крупными экспериментами, подобранные константы могут уже не быть применимы. Значение закона масштабирования определяется исключительно при фиксировании всех остальных факторов.
Масштабирование в эпоху предобучения: от GPT-3 до GPT-4
Как только были установлены законы масштабирования, способ достижения прогресса стал почти до смешного простым: обучать более крупные модели на ещё более больших и качественных наборах данных. OpenAI следовал этому принципу при создании серии моделей GPT, как и большинство других значимых моделей. Илья Сутскевер позже назвал этот период «эпохой предобучения», отличительной чертой которой являются очень крупные сети, обучаемые на очень больших наборах данных.
Семейство моделей GPT как эксперимент по масштабированию
Линейка GPT является наиболее известным применением этих идей. Обсуждение здесь сосредоточено на моделях до GPT-3 по двум причинам: их детали были опубликованы открыто, а более поздние модели во многом улучшились благодаря достижениям в постобучающей фазе, а не только за счёт масштаба предобучения. Если вы хотите узнать, что именно изменилось с каждой новой версией для разработчиков приложений, ознакомьтесь с нашим обзором от GPT-1 до моделей рассуждения; здесь основное внимание уделяется тому, что говорит каждый этап о масштабировании.
GPT по современным стандартам был небольшим: 12 слоев и 117 млн параметров. Сначала его предварительно обучали на базе BooksCorpus — необработанном тексте примерно 7 000 книг, а затем дорабатывали отдельно для каждой последующей задачи с использованием контролируемой цели и специальной головы классификации для каждой задачи. Это была одна из первых демонстраций масштабного самостоятельного предварительного обучения трансформера с только декодером, и она выявила несколько важных выводов:
- Самостоятельное предварительное обучение на обычном тексте работает чрезвычайно хорошо.
- Важно обучение на длинных, непрерывных участках текста.
- Модель, предварительно обученная таким образом, может быть доработана для достижения высокой точности в самых разных задачах.
Сама модель не была выдающейся, но она заложила два основных элемента — трансформер с только декодером и самостоятельное предварительное обучение, — которые позже позволили разработчикам перейти к гораздо более крупным масштабам.
GPT-2 появился вскоре после него в виде серии моделей с количеством параметров до 1,5 млрд. Архитектура и цели обучения были такими же, как у GPT, но изменилось два аспекта:
- Для предварительного обучения использовался WebText — набор данных, собранный из Интернета и значительно больший по объему, чем BooksCorpus.
- Не проводилось дополнительное тонкое настройка модели под конкретные задачи. Задачи решались без предварительной настройки путем прямого запуска предварительно обученной модели.
GPT-2 не достигал передовых результатов на большинстве тестов, однако его показатели постоянно улучшались по мере увеличения размера модели, что являлось явным доказательством того, что добавление параметров приносит пользу. Не менее важно и то, что даже самая крупная версия GPT-2, по-видимому, всё ещё плохо справлялась с задачами WebText. Это указывало на наличие возможностей для улучшения: дальнейшее увеличение размера как модели, так и данных должно было способствовать прогрессу. В статье о GPT-2 также утверждалось, что языковая модель с достаточной емкостью начнёт выводить и выполнять задачи, которые она видит в естественном языке, просто потому, что это помогает ей лучше предсказывать текст. Это утверждение вместе с зафиксированными тенденциями дало исследователям уверенность в продолжении работы.
GPT-3 стал поворотным моментом, который решил вопрос о том, оправдана ли масштабная предварительная обучающая процедура. Благодаря 175 миллиардам параметров он был более чем в 100 раз крупнее самого большого варианта GPT-2. Архитектура снова представляла собой трансформер с декодером только, похожий на своих предшественников, но объем обучающих данных был значительно больше: корпус, созданный на основе CommonCrawl и в десять раз превышающий по размеру WebText, был смешан с несколькими другими источниками в единый набор данных.
GPT-3 оценивался в основном с использованием метода нескольких примеров, что важно отличать от более ранних подходов:
- GPT использовал тонкую настройку, обновляя веса для каждой задачи.
- GPT-2 использовал метод без примеров, описывая задачу без приведения примеров.
- GPT-3 использовал метод нескольких примеров, включая в запрос несколько готовых примеров решения.
В статье о GPT-3 это называется обучением в контексте. Это название немного вводит в заблуждение, поскольку ничего не усваивается в обычном смысле: веса совсем не меняются. Примеры, приведённые в запросе, просто служат контекстом, направляющим модель на более качественный результат. Оказалось, что GPT-3 очень хорошо справляется с этим, что позволило предположить, что обучение в контексте — это способность, возникающая по мере увеличения масштаба.
Во всех тестах на понимание языка точность работы с небольшим количеством примеров росла по мере увеличения размера модели. Более крупные модели лучше и эффективнее использовали информацию из своего окна контекста по сравнению с меньшими моделями, и в нескольких задачах результаты GPT-3 при работе с небольшим количеством примеров превзошли существующие стандарты, продолжая улучшаться по мере увеличения размера модели. То, что одна модель могла демонстрировать такие результаты в столь большом количестве задач, просто меняя формулировку запроса, в то время казалось поразительным. GPT-3 стал одной из первых настоящих фундаментальных моделей и ввел концепцию формулировки запросов как основного способа взаимодействия с большими языковыми моделями.
После GPT-3: на более значительную долю приходится постобучение
GPT-3 вызвал волну интереса к большиим языковым моделям, сосредоточенного преимущественно на более масштабных процессах предварительной обучаемости. Следующие версии от OpenAI — InstructGPT, ChatGPT и GPT-4 — сочетали крупномасштабную предварительную обучаемость с новыми методами постобучения, а именно контролируемой настройкой параметров и обучением с усилением на основе обратной связи от людей (RLHF); благодаря этому значительному улучшению качества искусственный интеллект привлек внимание широкой публики. В техническом отчете о GPT-4 говорится, что это трансформер, предварительно обученный на прогнозировании следующего токена, причем постобучающие процедуры способствуют повышению точности информации и соблюдению желаемого поведения.
Примерно в это время OpenAI начал публиковать гораздо меньше материалов. Модели поставлялись через API без подробных научных статей. Однако некоторая информация всё ещё доступна. InstructGPT, прямой предшественник ChatGPT, имеет статью, в которой подробно описывается процесс обработки данных после обучения, и в этой статье указано, что базовой моделью является GPT-3. Вполне разумно предположить, что улучшения InstructGPT были достигнуты в основном благодаря обработке данных после обучения, а не благодаря более масштабному предварительному обучению.
GPT-4, безусловно, обладал большими возможностями по сравнению с ChatGPT, но его технический отчёт содержал очень мало информации. В нём подтверждается лишь следующее:
- Модель представляет собой трансформер.
- Она предварительно обучалась с использованием метода прогнозирования следующего токена.
- Данные включают как публичные, так и лицензированные источники от третьих сторон.
- Модель дорабатывалась с применением метода RLHF.
Тем не менее масштабирование находится в центре этого отчета. Одной из ключевых инженерных целей была разработка системы обучения, которая бы проявляла предсказуемую работу в разных масштабах, чтобы результаты небольших экспериментов можно было экстраполировать на крупные и очень дорогостоящие финальные тесты. В отчете говорится, что конечная потеря информации у правильно обученных крупных моделей хорошо описывается законами степеней в зависимости от вычислительных ресурсов, затрачиваемых на обучение.
Это практический подход, использовавшийся ранее и применяемый в настоящее время. Поскольку полное предварительное обучение слишком дорогостояще, фактически предусмотрена лишь одна попытка, и нет возможности для настройки модели под конкретные условия. Вместо этого команда обучала модели, используя в 1000–10 000 раз меньше вычислительных ресурсов, подбирала к ним законы степеней и применяла эти законы для прогнозирования характеристик крупных моделей. В отчете о GPT-4 именно это и показано: закон степеней, связывающий вычислительные ресурсы с потерей информации, используется для прогнозирования конечной потери информации у GPT-4.
У полученного уравнения есть одно дополнение по сравнению с тем, что мы видели ранее: терм инвариантных потерь, придающий ему вид L(C) = a * C^b + c. Константа c отражает тот факт, что потери никогда не достигнут нуля, поскольку в естественном тексте присутствует истинная случайность, которую никакая модель не может предсказать. При адаптации закона к небольшим объемам данных прогноз окончательных потерь GPT-4 оказался очень точным. Обратите также внимание, что на этом графике используются линейные оси, и здесь четко видна закономерность убывающей отдачи: улучшения за единицу вычислительных ресурсов заметно снижаются по мере их увеличения.
В отчете также признавалось, что первоначальные показатели потерь трудно интерпретировать, и предпринимались попытки прогнозировать более значимые метрики. Одним из примеров является процент успешного решения задач в тестовой среде HumanEval для программирования. Задачи были сгруппированы по уровню сложности, и был использован закон масштабирования для прогнозирования процента успешного решения в каждой группе. Используя расчеты, требующие примерно в 1000 раз меньше вычислительных ресурсов, команда смогла точно спрогнозировать процент успешного решения задач GPT-4 в HumanEval.
Урок, извлеченный из этого опыта, остается неизменным: более масштабные процессы предобучения ценны, но дорогостоящи, а законы масштабирования позволяют достаточно точно прогнозировать их результаты, что помогает избежать траты вычислительных ресурсов на процессы, которые не принесут результата.
Chinchilla: у моделей не хватало данных
В исследовании 2020 года рекомендовалось увеличивать параметры быстрее, чем объем данных. Некоторое время после появления GPT-3 отрасль в основном следовала этому совету, но это принесло плохие результаты. Модели, значительно превосходящие GPT-3 по количеству параметров, такие как MT-NLG с 530 миллиардами параметров, обучались на наборах данных примерно такого же размера, что и у GPT-3, и не смогли превзойти его. Тем временем модели, в которых одновременно увеличивались как параметры, так и объем данных, например Gopher от DeepMind, показали заметно лучшие результаты.
Эти наблюдения стали основанием для работы «Training Compute-Optimal Large Language Models» и статьи Chinchilla, в которых с нуля был пересмотрен подход к масштабированию с использованием гораздо более масштабных экспериментов: модели с 70 миллионов до 17 миллиардов параметров обучались на наборах данных, содержащих более триллиона токенов. Обучая множество комбинаций размера модели и объема данных, исследователи вывели закон, предсказывающий уровень потерь, обусловленных обоими факторами одновременно. С помощью этого закона можно определить оптимальное распределение ресурсов для любого заданного бюджета на вычисления.
Они пришли к выводу, что оптимальное с точки зрения вычислительных мощностей обучение должно приводить к увеличению размера модели и объема данных в равных пропорциях. По этому критерию большинство существующих больших языковых моделей были недостаточно обучены по сравнению со своим размером; им было бы полезно использовать гораздо больше данных. Сформулированные закономерности показывали, что, например, модель Gopher следовало обучать на наборе данных, примерно в 20 раз большем. В статье также подчеркивалось, что объем данных, необходимый согласно этим закономерностям, значительно превышает тот, который использовался на тот момент.
Чтобы проверить это утверждение, команда обучила модель Chinchilla с 70 миллиардами параметров на основе 1,4 триллиона токенов. Она использовала те же данные и методы оценки, что и модель Gopher, но была в четыре раза меньше по размеру и обучалась на гораздо большем объеме данных, при этом постоянно показывала лучшие результаты, чем Gopher.
Законы масштабирования, описанные Чинчиллой, в течение многих лет оставались эталоном. Термин «оптимальный по Чинчилле» вошел в повседневный словарь этой области, и эта статья по-прежнему часто цитируется, несмотря на появление множества исследований в области масштабирования с тех пор.
Важно точно понимать, что означает «оптимальный по Чинчилле», поскольку этот термин часто используется неправильно. Он описывает наименьшую степень потерь при фиксированном бюджете на обучение, но ничего не говорит о затратах на инференс. Команда, планирующая использовать модель миллиарды раз, может намеренно обучать более мелкую модель, превысив критерий Чинчиллы, соглашаясь на менее эффективное обучение в обмен на более дешевую модель в производстве. Этот компромисс рассматривается далее.
Дискуссия о том, что масштабирование достигло предела после GPT-4o
По мере замедления темпов разработки моделей и видимого улучшения качества во второй половине 2024 года вопрос масштабирования стал особенно актуальным. После многих лет, когда именно масштабирование способствовало практически всем прорывам, ряд отчетов указывал на возможное замедление этого процесса:
- Reuters сообщил, что OpenAI корректирует свою стратегию разработки продуктов после того, как достиг плато с использованием существующих методов.
- The Information писало, что темпы улучшения моделей GPT замедляются.
- Bloomberg описывал, как несколько передовых лабораторий испытывают трудности с созданием более мощных систем.
- TechCrunch утверждал, что масштабирование приносит все меньшую отдачу.
- Time опубликовал более сдержанный эссе о различных факторах, лежащих в основе утверждения о замедлении прогресса.
- Илья Сутскевер в своей речи на церемонии вручения награды Test of Time на NeurIPS 2024 сказал, что преобучение в том виде, в котором мы его знаем, скоро исчезнет.
Другие известные эксперты не согласились с этим. Генеральный директор Anthropic Дарио Амодей заявил, что процесс масштабирования, скорее всего, будет продолжаться, а Сэм Альтман из OpenAI настаивал на том, что такой «стены» не существует. Вместо того чтобы выбирать сторону, более полезно понять, что на самом деле подтверждают исследования, поскольку обе стороны отчасти правы.
Замедляется ли масштабирование? Это зависит от того, что вы измеряете
Натан Ламберт четко сформулировал ситуацию: с технической точки зрения масштабирование может продолжаться, в то время как скорость улучшений, которую ощущают пользователи, замедляется. Честный ответ на вопрос «замедляется ли масштабирование?» зависит от определения, и как «да», так и «нет» можно обосновать. Поэтому вместо попыток вынести окончательный вердикт более продуктивно рассмотреть несколько отдельных аспектов.
В математике заложен принцип убывающей отдачи
Вспомним, что на самом деле означает закон масштабирования: это закон степенной зависимости между вычислительными ресурсами, используемыми во время обучения (или размером модели или данных), и потерями при тестировании. Он не гарантирует экспоненциального улучшения при небольшом дополнительном использовании вычислительных мощностей. На обычных координатах кривая выглядит как экспоненциальное затухание, причем каждое дальнейшее улучшение стоит дороже предыдущего.
Другими словами, законы масштабирования по своей сути приводят к снижению темпов улучшений. Замедление, которое замечают люди, во многом соответствует тому, что предсказывают эти уравнения. Если планировать с учетом закона масштабирования, следует ожидать, что каждое новое поколение потребует множественного увеличения ресурсов для достижения более незначительного абсолютного улучшения.
Потери — это не то, что волнует всех
Также существует несоответствие в показателях измерения. Законы масштабирования применяются к показателю потерь на этапе предобучения, но неясно, что означает более низкая потеря с точки зрения возможностей модели. Приводит ли это к более высокой точности при выполнении последующих задач? Создаёт ли это новые способности? Исследования, посвящённые проблеме чрезмерного обучения, показывают, что специалисты обычно оценивают модели по точности на тестовых задачах, а не по показателю перплекситета на текстах, не использованных в процессе обучения. Следовательно, существует разрыв между этими двумя подходами:
- Законы масштабирования утверждают, что более длительное предобучение позволит постепенно снизить показатель потерь на тестах.
- Люди же хотят «лучшую» модель, независимо от того, как они её определяют.
Это определение сильно варьируется. Обычные пользователи в основном оценивают качество чата. Профессионалы обращают внимание на точность при выполнении конкретных задач. Исследователи в передовых лабораториях часто ставят очень высокие и очень специфические требования, такие как написание докторской диссертации или решение математических задач исследовательского уровня, подобных тем, что присутствуют в тесте FrontierMath. Языковые модели настолько обширны, что существует множество подходов к их оценке, и ни один из них не охватывает всё полностью.
Учитывая такую неопределенность, любые утверждения о том, что масштабирование «работает» или нет, всегда будут оспариваться. Помогает более четкое определение успеха. Если научные прогнозы указывают на меньшие потери при использовании более крупных моделей, это не означает, что каждая новая модель удовлетворит всех пользователей. Невозможность достичь уровня AGI или неспособность превзойти выдающихся математиков не свидетельствуют о том, что масштабирование перестало работать в техническом смысле. Значительная часть воспринимаемой замедленности, вероятно, является проблемой ожиданий и восприятия, а не сбоем в основных законах.
Количество данных ограничено
Самый сильный аргумент против увеличения масштабов предварительной обучаемости связан с данными. Для расширения масштабов предварительной обучаемости необходимо увеличивать как размер модели, так и объем набора данных. Исследования начала 2020-х годов показывали, что данные имеют меньшее значение по сравнению с параметрами, однако Chinchilla доказал, что их значение такое же великое. Кроме того, более поздние исследования проблемы чрезмерного обучения указывают на то, что стало стандартом обучать более мелкие модели значительно за пределами оптимального по Chinchilla размера набора данных, именно потому, что более крупные модели требуют больших затрат при выполнении прогнозов. Такая практика требует еще большего количества данных на единицу параметра.
Все это приводит к одному выводу: для дальнейшего увеличения масштабов предварительной обучаемости необходимы более крупные наборы данных. А большинство современных данных для предварительной обучаемости получают путем скроллинга веба. Интернет есть только один, и найти совершенно новые источники высококачественного текста в таком масштабе сложно.
Сутскевер именно так и аргументирует: мощность вычислений быстро растет, но объем данных — нет, поскольку он зависит от скрапинга веб-страниц. Согласно этой точке зрения предобучение невозможно масштабировать бесконечно, и в этой области необходимы новые пути для прогресса. Он назвал ситуацию моментом достижения «пика данных».
Способы дальнейшего масштабирования предобучения
Снижение эффективности действительно существует, и аргументы относительно данных весомы. Тем не менее несколько направлений исследований все еще могут улучшить процесс предобучения.
Синтетические данные и более эффективное их использование
Увеличение объема предобучения еще на несколько порядков, вероятно, потребует использования синтетических данных. Существуют обоснованные опасения, что чрезмерная зависимость от генерируемого текста снижает разнообразие, однако синтетические данные уже все чаще применяются в ЯЗЫКАХ больших размеров, при этом результаты оказываются положительными. Параллельно с этим подходы, основанные на поэтапном обучении, и продолжительное предобучение позволяют добиться значительных улучшений путем изменения данных, а не самой модели, например путем корректировки их состава или добавления данных в формате инструкций в конце процесса предобучения.
Законы масштабирования для понятных метрик
Законы, основанные на показателях потерь, трудно применять на практике, поэтому в недавних исследованиях законы адаптируются к более понятным для интерпретации целям. В упомянутом ранее исследовании по чрезмерной обучаемости используются законы, целями которых являются оценочные показатели из набора инструментов, поставляемого с LLM Foundry, а не сырые значения потерь. С такими показателями гораздо проще работать. Мало кто понимает, что означает на практике снижение потерь на тестировании на 5%, но изменение точности с 85% до 90% в важном для вас критерии оценки сразу становится понятным. Другие исследования расширили эту идею до прогнозирования производительности после обучения и квантизации, а также до моделирования того, как производительность меняется во время самого процесса предобучения.
DeepSeek-V3 как доказательство того, что масштаб всё ещё имеет значение
Несмотря на пессимизм, масштабирование предобучения по-прежнему приводит к периодическим скачкам в качестве моделей. DeepSeek-V3 — это модель типа mixture-of-experts (MoE) с 671 миллиардом параметров, обученная на 14,8 терабайтах токенов и выпущенная с открытыми весами. Её технический отчёт показывает, что она превосходит GPT-4o и Claude 3.5 Sonnet в тестах, в которых они участвовали. Для сравнения, модели Llama 3 от Meta были обучены на более чем 15 терабайтах токенов.
Победа над GPT-4o стала важной вехой для моделей с открытыми весами, к которой даже крупнейшие модели Llama ещё не добирались. DeepSeek-V3 сочетает в себе несколько техник:
- Оптимизированная архитектура MoE, заимствованная из DeepSeek-V2.
- Стратегия балансировки нагрузки между экспертами, не основанная на вспомогательной функции потерь.
- Цель обучения, предусматривающая прогнозирование нескольких токенов одновременно.
- Дистилляция способности к рассуждению из модели с длинной цепью мыслей, в духе подхода o1 от OpenAI.
Он также проходит постобучение, включая контролируемую настройку параметров и RLHF, чтобы соответствовать предпочтениям людей. В отчете отмечается, что предобучение на 14,8 Т токенов проходило крайне стабильно, без непреодолимых скачков потерь и необходимости возврата к предыдущей версии.
Тем не менее основной причиной его силы является огромный масштаб: очень большая модель, обученная на соответственно большом наборе данных. Запуски такого масштаба сопряжены с множеством трудностей, включая сбои оборудования и скачки потерь, поэтому стабильный запуск при разумных затратах по стандартам LLM уже сам по себе заслуживает внимания. Это указывает на то, что очень крупные задачи предобучения со временем становятся более управляемыми и эффективными. Рассматривайте конкретные сравнения по критериям как моментальную картину ситуации, поскольку с тех пор рейтинги изменились.
Еще один порядок величины — это инженерный проект
По-настоящему исследовать законы масштабирования означает обучать модели в несколько порядков большем масштабе, чем сегодняшние. Независимо от того, как вы оцениваете ценность этого, существуют серьезные практические ограничения. Для этого требуется:
- Более крупные вычислительные кластеры.
- Больше и лучшее оборудование.
- Очень большое количество электроэнергии.
- Новые алгоритмы, например для распределенного обучения в более крупном масштабе, возможно, в нескольких центрах обработки данных.
Следующее поколение — это не просто вопрос покупки большего количества GPU. Это междисциплинарные инженерные усилия, на которые уходит время. Для сравнения: GPT-4 появился в марте 2023 года, почти через три года после GPT-3. Разумно ожидать аналогичную или более длительную паузу при каждом последующем увеличении масштаба в 10–100 раз. Эге Эрдил из Epoch AI хорошо подытожил эту динамику: каждое увеличение в один порядок величины требует собственных новых инноваций.
Откуда берется прогресс, если предварительная обучаемость застаивается: обучение с подкреплением и вычисления во время тестирования
Предположим, исключительно в рамках дискуссии, что прогресс в предварительной обучаемости прекратится завтра. У исследований в области ИИ всё равно будет достаточно возможностей для быстрого развития. Синтетические данные — это уже один из рассмотренных путей. Ещё два направления сейчас особенно активны:
- Системы и агенты на основе LLM.
- Модели для рассуждений.
Максимизация возможностей существующих моделей с помощью систем LLM
За пределами парадигмы одного вызова
Большинство современных приложений на основе LLM следуют модели одной модели: задача отправляется в одну модель, а её результат используется напрямую в качестве ответа. Если вы хотите, чтобы такая система более точно справлялась с сложными задачами, очевидным решением является использование более совершенной базовой модели, но это заставляет ждать появления следующего поколения. Альтернативой является создание системы, которая объединяет несколько вызовов LLM или других компонентов для решения задачи.
Разбиение на части и последовательные вызовы
Основная идея системы на основе LLM заключается в разделении сложной задачи на части, которые легче обрабатывать модели или другим модулям. Существует две основные стратегии:
- Разбиение задачи: разделение задачи на подзадачи, их независимое решение и объединение результатов в итоговый ответ.
- Последовательные вызовы: решение задачи или подзадачи с помощью серии вызовов LLM вместо одного.
Их можно использовать отдельно или вместе. Возьмём систему для краткого изложения содержания книг. Задачу можно разбить, сначала кратко изложив каждую главу. После этого можно либо:
- Продолжить разбиение, разделяя главы на более мелкие фрагменты текста — это и есть суть рекурсивного или иерархического краткого изложения.
- Сочетать вызовы: например, первый вызов используется для извлечения ключевых фактов из главы, а второй — для составления краткого изложения главы на основе этих фактов.
Наконец, ещё один вызов объединяет все краткие изложения глав в общее краткое изложение всей книги. Большинство сложных задач можно разбить на простые части именно таким образом, и именно это делает системы на основе больших языковых моделей настолько мощными. По мере усложнения процессов разбиения и последовательного выполнения вызовов эти системы превращаются в сложное программное обеспечение, и их правильная разработка представляет собой самостоятельную область прикладной искусственной интеллектуальной инженерии.
Создание продуктов, которыми действительно пользуются люди
Несмотря на всё внимание, уделяемое большим языковым моделям, количество практических и широко распространённых сценариев их применения по-прежнему невелико. Самыми распространёнными сегодня являются генерация кода и чаты — области, в которых эта технология находит довольно очевидное применение.
Существует множество областей, где большие языковые модели могли бы быть полезны, но пока этого не происходит, поэтому создание действительно полезных продуктов на основе таких моделей само по себе представляет собой важную исследовательскую и инженерную задачу. Способные модели уже существуют; превратить их в что-то, что люди захотят использовать, — это другая задача, которая сводится к созданию надёжных и функциональных систем на основе этих моделей.
Агенты: инструменты и действия
Граница между системой LLM и агентом размыта, отчасти потому, что термин «агент» стал слишком общим. Важно понимать, что системы LLM можно расширять во многих полезных направлениях. Модель может быть научена использовать инструменты, такие как калькулятор или поисковая система, при решении задачи. Она может запускать написанный ею код или выполнять действия от имени пользователя, например бронировать отель или отправлять электронное письмо. Разнообразие инструментов и модулей, которые можно присоединить к модели, открывает практически неограниченные возможности для создания более мощных систем. Если вам нужна конкретная картина того, как структурируется цикл агента, наш гид по целям, инструментам, памяти и циклу агента подробно это описывает.
Надежность — настоящий барьер
Надежность является одним из главных препятствий на пути к более мощным системам, и арифметика объясняет почему. Предположим, система выполняет десять вызовов LLM, каждый из которых с успехом выполняется в 95% случаев, и для получения правильного итогового результата все десять вызовов должны быть успешными. В целом система справляется с задачей лишь примерно в 60% случаев, поскольку 0.95^10 примерно равно 0.60. Каждый компонент кажется надежным по отдельности, однако в десяти случаях из десяти процесс терпит неудачу.
Увеличение количества шагов экспоненциально усугубляет ситуацию, что ограничивает степень сложности системы, прежде чем она становится непригодной для использования. Поэтому для создания более крупных систем необходимо сделать каждый компонент гораздо надежнее. Некоторые данные свидетельствуют о том, что сам масштаб способствует повышению устойчивости. Еще одним фактором являются более совершенные алгоритмы метагенерации. Вместо того чтобы брать один образец из модели, эти методы используют такие техники, как параллельная декодировка, проверка на каждом этапе и критика, чтобы получить более точный результат. Подробный обзор этой области представлен в статье «От декодирования к метагенерации: алгоритмы во время инференса для крупных языковых моделей».
Эта область развивается очень быстро и, вероятно, станет важным движущим фактором прогресса. По мере совершенствования метагенерации модели становятся более надежными, а более сложные системы типа LLM и агентов становятся практически применимыми.
Практический совет для тех, кто создаёт подобные системы: прежде чем добавлять новый этап в работу конвейера, оцените общий уровень успеха, умножив коэффициенты эффективности отдельных этапов, и подумайте, не позволит ли добавление этапа проверки или повторной попытки устранить самую слабую ланку дешевле, чем развитие функционала в других местах.
Модели рассуждений и новая ось масштабирования
В начальный период большие языковые модели часто считались просто инструментами для поиска шаблонов, запоминающими данные и неспособными к реальному рассуждению. Однако в последние годы эта критика в значительной степени опровергнута. Сегодня считается, что у этих моделей, вероятно, всегда была скрытая способность к рассуждениям, и именно правильные методы стимулирования или обучения позволяют раскрыть её.
Цепочка мыслей
Метод подсказок с последовательным обдумыванием (Chain-of-thought, CoT) был одним из первых, демонстрировавших этот эффект. Это чисто метод подсказок: вы просите модель объяснить свои рассуждения перед тем, как она даст окончательный ответ. Когда модель излагает свои шаги рассуждений перед ответом, качество её логического мышления значительно улучшается. Дополнительным преимуществом является то, что эти рассуждения читаемы человеком, что облегчает интерпретацию результата.
Идея проста и универсальна, и она стала ключевой для улучшения способности больших языковых моделей к логическому мышлению. Её использовали во многих формах:
- Оценщики, использующие большие языковые модели в качестве судей, обычно пишут обоснование оценки перед тем, как указать окончательный балл.
- Были разработаны методы контролируемой настройки и настройки под инструкции для обучения более мелких или открытых моделей формировать более качественные последовательности рассуждений.
Сложное мышление остается быстро развивающейся областью исследований. Методы обучения, которые учат модели включать проверку на каждом этапе их рассуждений, показали многообещающие результаты, и ожидается дальнейшее улучшение по мере появления более эффективных стратегий обучения.
o1: размышление перед ответом
o1 от OpenAI стал важным шагом в развитии способности больших языковых моделей к рассуждениям, причем его подход основан на цепочках мыслей. Подобно тому, как человек размышляет перед тем, как ответить на сложный вопрос, o1 тратит время на «размышления» перед тем, как дать ответ. Конкретно говоря, его мысли представляют собой длинные цепочки рассуждений, в ходе которых модель анализирует проблему, разделяет её на более простые этапы, пробует различные подходы и исправляет собственные ошибки. OpenAI описывает его как модель, обученную с использованием метода подкрепления для рассуждений, способную сформировать длинную внутреннюю цепочку мыслей перед тем, как ответить.
Точная схема обучения ещё не опубликована. OpenAI заявила, что модель o1 обучается с помощью алгоритма «масштабного подкрепляющего обучения», который является «чрезвычайно эффективным с точки зрения использования данных» и направлен на улучшение способности модели формировать полезные цепочки мыслей. Открытые комментарии исследователей OpenAI указывают на то, что модель обучается исключительно с использованием подкрепляющего обучения, что противоречит ранним предположениям о том, что o1 при выполнении задач использует какой-то вид поиска в дереве.
При выполнении задач, требующих сложного мышления, o1 практически во всех случаях превосходит GPT-4o. Согласно опубликованным результатам OpenAI, модель:
- Достигает 89-го процентиля по задачам конкурсной программирования с платформы Codeforces.
- Демонстрирует результаты на уровне 500 лучших студентов США по экзамену AIME, являющемуся отборочным тестом для Олимпиады по математике США.
От o1 до o3: масштабирование вычислительных ресурсов для обучения и вывода решений
Одной из самых интересных особенностей o1 является возможность улучшить способности к рассуждению путем увеличения вычислительных ресурсов, используемых для вывода решений. Чтобы справляться с более сложными задачами, модель просто формирует более длинные цепочки мыслей, и использование большего количества вычислительных ресурсов во время вывода решений способствует плавному улучшению качества рассуждений. По данным OpenAI, производительность o1 улучшается за счёт двух факторов: объёма обучения с использованием методов подкрепления во время обучения (вычислительные ресурсы во время обучения) и длительности времени на размышление над каждым вопросом (вычислительные ресурсы во время тестирования).
То же самое касается и обучения: о1 постепенно улучшается по мере увеличения вычислительных ресурсов, вкладываемых в методы усиленного обучения. По-видимому, именно этот путь привел к появлению о3. В конце 2024 года OpenAI представила примерные результаты оценки о3, раскрыв немного деталей, но учитывая, что он появился всего примерно через три месяца после о1, скорее всего, это усиленная версия о1 с большим количеством вычислительных ресурсов, направленных на усиленное обучение.
На момент этой презентации о3 ещё не был выпущен, но примерные показатели были впечатляющими:
- 87,5% на тестовой платформе ARC-AGI, тогда как GPT-4o показал всего 5%. Это сделало о3 первой моделью, превзошедшей порог в 85% на уровне человека на ARC-AGI — тестовой платформе, считающейся «ориентиром» для развития AGI, которая не имела соперников в течение более пяти лет. Этот высокий результат был достигнут благодаря конфигурации с высоким уровнем вычислительных ресурсов.
- 71,7% по тесту SWE-Bench Verified, а рейтинг на Codeforces — 2727, что позволяет входить в топ-200 сильнейших программистов-конкурсантов в мире.
- 25,2% по тесту FrontierMath от Epoch AI, что выше предыдущего рекорда в 2,0%. Теренс Тао охарактеризовал этот тест как чрезвычайно сложный и ожидал, что искусственные интеллектуальные системы не смогут его преодолеть как минимум несколько лет.
Одновременно была представлена упрощённая версия o3-mini, которая показала высокие результаты при значительно лучшей эффективности вычислений. Это были предварительные показатели, приведённые в одном объявлении; для сравнения выпущенных моделей проверьте актуальную документацию и независимые оценки.
Почему это новая парадигма масштабирования
Если графики o1 и o3 кажутся вам знакомыми, это потому, что они представляют собой тот самый тип диаграмм, о котором идет речь во всем этом тексте: вычисления в логарифмической шкале на оси X и плавный, прямолинейный рост производительности. Другими словами, эти модели рассуждения демонстрируют четкую закономерность вида «закон степени» между производительностью и двумя величинами:
- Время обучения, затрачиваемое на работы по методу усиленного обучения.
- Время инференса, затрачиваемое на процесс рассуждения.
Это отличается от классических законов масштабирования. Вместо масштабирования этапа предобучения здесь масштабируются вычисления, затрачиваемые на этапы послеобучения и инференса. Это по-настоящему новая ось масштабирования, и полученные на сегодняшний день результаты весьма убедительны. Они показывают, что существуют способы масштабирования за пределами этапа предобучения, и что в этой области появилась новая цель для достижения прогресса. Форма может меняться, но именно масштабирование по-прежнему является движущей силой прогресса.
Один из инженерных аспектов заслуживает прямого описания. Когда качество зависит от вычислительных мощностей, затраты и задержка на один запрос превращаются в параметры, позволяющие регулировать качество, а не в фиксированные характеристики модели. Это меняет подход к составлению бюджета и проектированию приложений: более сложные запросы можно направлять на более длительные вычисления, а простые — оставлять с низкими затратами.
Что следует помнить при анализе графика масштабирования
- Закон масштабирования — это закон степеней между ресурсом (параметрами, данными или вычислительными мощностями) и потерями при тестировании. Прямая линия на графике логаритмов скрывает быстрое снижение эффективности, поэтому каждое улучшение стоит всё дороже.
- Эти законы справедливы только тогда, когда другие факторы не являются узким местом, и именно поэтому данные, параметры и вычислительные мощности должны расти вместе.
Полезный вопрос теперь уже не в том, будет ли масштабирование продолжаться, а в том, какой ресурс подвергается масштабированию и отразятся ли полученные преимущества в показателях, которые действительно важны для вас.