Закон Каплана: качество модели как функция масштаба
На графиках, где по горизонтальной оси отложили размер модели (логарифмически), а по вертикальной — кросс-энтропию (тоже логарифмически), точки выстроились в почти идеально прямую линию. Длинная, длинная прямая линия, протянувшаяся от моделей в тысячи параметров до моделей в миллиард. Размер менялся в миллионы раз, а линия оставалась прямой. Без отклонений, без скачков, без особенностей.
На графиках, где варьировали объём данных, картина была такая же: прямая линия в логарифмических осях.
На графиках, где варьировали вычислительные затраты, тоже прямая линия.
В физике такие зависимости называются степенными: y = A·x в степени k, где k — постоянное число. Степенные законы возникают там, где нет внутреннего масштаба, где система ведёт себя самоподобно при любом увеличении или уменьшении. В статистической физике они вездесущи: в критических точках фазовых переходов, в распределении землетрясений, в фрактальной геометрии береговых линий.
Здесь, в обучении нейронных сетей, они тоже оказались. Каплан и его команда обнаружили, что качество языковой модели подчиняется простой степенной зависимости от каждого из трёх параметров (размер, данные, вычисления), причём показатели степеней оказались скромными отрицательными числами в районе минус ноль ноль семидесяти. Это означало: если увеличить размер модели в десять раз, кросс-энтропия уменьшится примерно на шестнадцать процентов. Если увеличить ещё в десять раз — ещё на шестнадцать процентов. Каждое десятикратное увеличение даёт примерно одинаковую относительную прибавку качества.
Это, казалось бы, скромный эффект. Но это, во-первых, было универсально (одна и та же зависимость для моделей в тысячи параметров и в миллиарды). И во-вторых, и главное, это было предсказуемо.
Чтобы оценить, насколько это меняло индустриальный ландшафт, нужно осознать одно. До статьи Каплана план обучения большой модели выглядел примерно так. Команда садилась, обсуждала, спорила, выбирала размер интуитивно, исходя из имеющихся ресурсов и веры в подход; начинала обучение; через несколько недель смотрела, что вышло. Если результат не радовал, нужно было что-то менять и пробовать снова. Каждая такая «попытка» обходилась в миллионы долларов и месяцы времени.
После статьи Каплана план обучения большой модели выглядел иначе. Команда садилась, открывала графики со степенными зависимостями, и говорила: хотим качество X. По формулам, это требует модели размера N, объёма данных D, вычислительной стоимости C. Стоимость C переведём в доллары: получится столько-то. Если у нас есть эти деньги, мы знаем, что получим качество X. Если нет, мы знаем, на сколько именно недотянем.
Вот что сделал Каплан со своей командой: превратил обучение нейросетей из эксперимента в инженерный расчёт.
В статье 2020 года была также выведена другая важная зависимость: оптимальное распределение бюджета. Если у вас есть фиксированный бюджет на вычисления (скажем, миллиард FLOP-операций), как лучше его потратить: на большую модель с маленьким количеством данных, или на маленькую модель с большим? Каплан с командой математически вывели, что при их измерениях оптимум сдвинут в сторону больших моделей. Грубо говоря, лучше иметь модель в сто миллиардов параметров, обученную на скромном объёме данных, чем модель в десять миллиардов, обученную на массиве в десять раз большем.
Этот конкретный вывод позднее, в 2022 году, будет подвергнут пересмотру. Команда DeepMind с моделью Chinchilla покажет, что в формулах Каплана была определённая систематическая ошибка, связанная с тем, как варьировался learning rate в его экспериментах; что на самом деле оптимум сдвинут в обратную сторону, к большему количеству данных. Но это уточнение, при всей его технической важности, не меняло главного: что зависимость есть, что она степенная, и что она применима в широком диапазоне.
Статья Каплана и его команды появилась на arXiv в январе 2020 года. До этого момента команда уже несколько месяцев показывала свои предварительные результаты внутри OpenAI и в избранных кругах. К началу 2020 года все ведущие исследовательские лаборатории мира знали о законах масштабирования.
Влияние на индустрию было немедленным. Microsoft, который уже вложил в OpenAI миллиард в июле 2019 года, увидев предварительные результаты, начал планировать вторую и третью инвестиционные волны. Google, до этого относившийся к большим языковым моделям с прохладным интересом, объявил о собственной программе по обучению моделей размером в сотни миллиардов параметров (PaLM, 2022). DeepMind ускорил собственные работы в этом направлении.