Глава 4.2 — Цели предобучения и данные
Содержание
- От токенов к обучающему сигналу
- Три семейства целей предобучения: новый взгляд
- Почему победило каузальное языковое моделирование с декодером
- Качество и состав данных важны не меньше архитектуры
- Дедупликация как конкретная, измеримая мера
- Курирование данных веб-масштаба: RefinedWeb и FineWeb
- Взгляд с точки зрения интервью
- Вопросы для самопроверки
- Источники
1. От токенов к обучающему сигналу
Глава 4.1 показала, как сырой текст превращается в последовательность дискретных токенов, и завершилась наблюдением: даже хорошо спроектированный токенизатор доводит вас лишь до последовательности целых чисел — он ничего не говорит о том, чему именно вы обучаете модель предсказывать и на каком тексте вы её обучаете. Эти два вопроса оказываются тесно связаны, поскольку разные цели предобучения задают разные архитектурные обязательства относительно того, какой «контекст» разрешено видеть токену, а обзор архитектур только-энкодер, только-декодер и энкодер-декодер в главе 2.3 уже заложил почву именно для этого различия. Данная глава пересматривает тот архитектурный материал через призму цели обучения, а затем обращается к вопросу, которому в большинстве изложений трансформеров уделяется сравнительно мало внимания, но который на практике определяет колоссальный объём инженерных усилий: какой текст и насколько тщательная его очистка на самом деле дают хорошую модель.
2. Три семейства целей предобучения: новый взгляд
Каузальная (авторегрессионная) цель языкового моделирования — та, которую эта книга использует ещё со времён разложения по цепному правилу в главе 1.1, — обучает модель предсказывать каждый токен, используя только предшествующие ему токены, слева направо, что в точности соответствует использованию каузальной маски внимания в архитектуре только-декодер. Маскированное языковое моделирование, популяризированное BERT, вместо этого искажает долю входных токенов — как правило, заменяя их специальным токеном-маской, хотя часть токенов оставляется без изменений или заменяется случайным токеном в качестве приёма регуляризации, — и обучает модель предсказывать исходную идентичность каждой искажённой позиции, используя полный двунаправленный контекст, то есть токены и до, и после неё. Это требует архитектуры только-энкодер без каузального маскирования, поскольку весь смысл в том, чтобы каждая позиция видела всю последовательность целиком. Восстановление спанов (span corruption), используемое в моделях энкодер-декодер типа T5, обобщает маскированное языковое моделирование, искажая не отдельные позиции, а непрерывные отрезки токенов, и обучает декодер авторегрессионно восстанавливать пропущенные отрезки, опираясь на двунаправленное представление искажённого входа, построенное энкодером, — эту цель часто описывают как «prefix LM» или как денойзинг-цель, занимающую промежуточное положение между двумя другими.
Это не три произвольные опции; каждая из них — естественная цель обучения для соответствующих архитектурных ограничений на поток информации, и каждая даёт модель, хорошо приспособленную для разных прикладных задач. Модели с маскированным языковым моделированием дают отличные представления для задач классификации и понимания текста, где весь вход доступен сразу и нужно лишь получить его хорошее закодированное представление. Модели энкодер-декодер с восстановлением спанов естественно подходят для по-настоящему последовательность-в-последовательность задач, таких как перевод или суммаризация, где есть чёткий источник и чёткая цель. Каузальные языковые модели приспособлены для открытой генерации, поскольку генерация по своей природе — процесс слева направо: у вас нет доступа к остатку последовательности, когда вы формируете первый токен ответа.
3. Почему победило каузальное языковое моделирование с декодером
Учитывая, что у всех трёх целей есть разумные сценарии применения, стоит точно понять, почему именно каузальное предобучение с декодером стало доминирующей парадигмой для универсальных больших языковых моделей, а не считать это случайностью моды. Главная причина — согласованность между обучением и инференсом. Каузальная языковая модель обучается делать в точности то, что от неё потребуется на этапе развёртывания: имея префикс, предсказать, что идёт дальше, токен за токеном, используя только контекст слева. Между целью, оптимизируемой при предобучении, и задачей, выполняемой при инференсе, нет рассогласования — генерация с помощью авторегрессионного сэмплирования есть не что иное, как повторное применение той же цели обучения. Маскированная языковая модель, напротив, обучается заполнять пропуски, опираясь на двунаправленный контекст, который в момент открытой генерации попросту не существует, поскольку «остатка предложения» нет, когда вы пишете первое слово ответа пользователю; использование такой модели для открытой генерации поэтому требует преодолевать несоответствие целей, которого каузальные модели изначально лишены.
Эта согласованность важна не только эстетически, но и практически. Она означает, что одному-единственному каузальному декодеру можно предложить сделать практически любую задачу, которую можно сформулировать как «продолжи этот текст», — ответы на вопросы, суммаризацию, перевод, генерацию кода, диалог, — без каких-либо специфических для задачи архитектурных изменений, потому что цель предобучения уже сама по себе является универсальной задачей. Модели только-энкодер и энкодер-декодер можно приспособить для генерации, и годами так и делали, но чтобы делать это хорошо, обычно требуется либо отказаться от двунаправленности для генерируемой части, либо инженерно обходить асимметрию между двумя половинами модели. Как только стало ясно, что достаточно большая модель только-декодер, обученная исключительно на предсказании следующего токена на достаточно разнообразном тексте, может сравняться или превзойти по качеству решения прикладных задач архитектуры, специально спроектированные под конкретные форматы задач, область сошлась к каузальному предобучению с декодером как к рецепту по умолчанию для универсальных моделей, оставив архитектуры только-энкодер и энкодер-декодер для тех областей — плотные эмбеддинги для поиска, некоторые конвейеры перевода, — где их особые индуктивные смещения всё ещё оправдывают себя.
4. Качество и состав данных важны не меньше архитектуры
После нескольких глав об архитектуре и целях обучения возникает соблазн считать обучающий корпус фиксированным, заданным входом — грубо говоря, «интернетом» — и сосредоточить всё инженерное внимание на модели. На практике же то, на каком корпусе вы обучаетесь, и то, насколько тщательно вы его чистите и курируете, влияет на итоговое качество модели по меньшей мере не меньше, чем любое архитектурное решение при сопоставимом масштабе, а возможно, и больше, потому что плохие данные не просто не помогают — они активно учат модель воспроизводить собственные дефекты. Корпус, полный шаблонного текста, дублированного контента, машинно-сгенерированного спама или малоинформативного содержимого, тратит вычислительный бюджет обучения на токены, несущие мало полезного сигнала, а корпус с дублированными фрагментами порождает конкретную, хорошо задокументированную патологию: запоминание.
5. Дедупликация как конкретная, измеримая мера
Ли (Lee) с соавторами придали этой обеспокоенности эмпирическую весомость. Они показали, что большие обучающие корпуса, собранные из веба, содержат значительный объём почти точных и точных дубликатов текста — один и тот же фрагмент, или его близкие варианты, встречающийся много раз в разных документах, будь то зеркалированные веб-страницы, цитируемые статьи или шаблонный лицензионный текст, — и что это дублирование имеет две измеримые издержки. Во-первых, модели, обученные на дублированных данных, значительно чаще запоминают и дословно воспроизводят фрагменты из своего обучающего набора, что одновременно является проблемой качества (дословное воспроизведение выглядит как провал обобщения, а не как его проявление) и, всё чаще, реальной проблемой конфиденциальности и авторских прав, если учесть, что запомненные фрагменты могут содержать персональные данные или лицензированный текст, попавший в корпус случайно. Во-вторых, что более непосредственно относится к аргументу об эффективности обучения, дублированный текст тратит вычисления впустую: каждый раз, когда модель обучается на повторяющемся фрагменте, она тратит шаг обучения на текст, который она уже фактически видела, вместо токенов, которые научили бы её чему-то новому. Ли с соавторами показали, что дедупликация обучающего корпуса — на уровне точных совпадений документов, а также почти-дубликатов, найденных с помощью таких техник, как поиск подстрок на основе суффиксных массивов, — измеримо улучшает качество итоговой модели при фиксированном объёме вычислений на обучение, а это именно тот результат, который превращает дедупликацию в стандартный, не опциональный шаг современных конвейеров предобучения крупного масштаба, а не в приятное дополнение.
6. Курирование данных веб-масштаба: RefinedWeb и FineWeb
Дедупликация — это одна конкретная, хорошо изолированная мера, но производственные конвейеры данных сочетают множество таких мер: отсеивание низкокачественного или небезопасного контента с помощью эвристических правил (удаление страниц, состоящих преимущественно из шаблонного текста, не-прозы или помеченных как контент для взрослых либо иным образом неприемлемый), обучение лёгких классификаторов качества для оценки и фильтрации документов по предсказанной полезности, а также дедупликацию на нескольких уровнях гранулярности — от точных совпадений документов до перекрывающихся подстрок. Долгое время сильнейшие публично известные модели в значительной мере опирались на наборы данных, смешивающие веб-скрапинг с курируемыми, часто проприетарными источниками — книгами, репозиториями кода, тщательно отобранным справочным текстом, — исходя из предположения, что сырой текст из веба, каким бы обильным он ни был, попросту слишком зашумлён, чтобы служить основным субстратом для модели переднего края.
Линии работ RefinedWeb и FineWeb прямо оспорили это предположение. RefinedWeb, созданный для обучения моделей Falcon, продемонстрировал, что масштабный конвейер, применяющий тщательную фильтрацию и дедупликацию только к веб-данным Common Crawl — без подмешивания курируемых проприетарных корпусов, — способен производить обучающие данные, которые не уступают или превосходят по итоговому качеству наборы данных, опирающиеся на такие курируемые источники, по сути показав, что предположение «курируемый корпус необходим» было артефактом недостаточно строгой фильтрации веб-данных, а не фундаментальным ограничением самих веб-данных. FineWeb развил эту линию работ, создав ещё более крупный, гораздо более тщательно задокументированный и проверенный абляционными экспериментами набор данных веб-масштаба, систематически проверяя, какие именно решения по фильтрации реально улучшают показатели на прикладных бенчмарках, а не полагаясь исключительно на эвристики, выбранные интуитивно, и опубликовав итоговый набор данных вместе с сопутствующим анализом. Вместе эти две работы переосмыслили курирование данных: вместо «собери все курируемые источники, на которые сможешь получить лицензию» — «применяй строгую, измеримую фильтрацию к обильному сырому вебу», и это сейчас доминирующий подход для крупных открытых корпусов предобучения, а также яркая иллюстрация более широкой темы, к которой эта глава вела: при масштабах, на которых обучаются современные LLM, инженерия данных — не второстепенная надстройка над инженерией моделей, а равноправная с ней часть работы, столь же поддающаяся тщательному измерению и итерации, как и любое архитектурное решение.
Фильтрация и дедупликация решают, что остаётся в корпусе; отдельный вопрос — сколько показывать модели от каждого из оставшихся источников, и этот вопрос оказывается не менее значимым. Корпус предобучения никогда не является единой однородной массой текста — это смесь доменов (веб-страницы, книги, код, научные статьи, диалоги), — и очевидный вариант по умолчанию, сэмплировать каждый домен пропорционально тому, сколько его у вас случайно оказалось, редко является смесью, дающей лучшую модель, поскольку сырое обилие домена в интернете имеет мало общего с тем, насколько он полезен как обучающий сигнал. DoReMi авторства Xie et al. автоматизирует поиск лучшей смеси: обучите небольшую прокси-модель, используйте её, чтобы определить, какие домены фиксированная референсная модель недообучивает относительно их веса сэмплирования, и используйте этот сигнал, чтобы заново вывести веса доменов, на которых затем обучается гораздо более крупная модель, — улучшая итоговые показатели по сравнению с вручную подобранной смесью, при этом ни разу не пришлось обучать крупную модель больше одного раза, чтобы её найти. Общий урок выходит за рамки конкретного алгоритма DoReMi: вес домена — это настоящий гиперпараметр предобучения с измеримым эффектом на качество, и трактовка «смеси» как заданной тем, какие данные случайно оказались под рукой, означает, что часть достижимого качества модели остаётся упущенной.
Код — самая яркая иллюстрация того, почему вес домена важен не только в смысле «помогает ли этот домен задачам, на которые он очевидно похож». Модель, обученная с заметной долей исходного кода в смеси предобучения, устойчиво показывает результаты лучше не только в генерации кода, но и в многошаговых, структурированных задачах рассуждения, вообще не связанных с программированием, — арифметических текстовых задачах, логическом выводе, многошаговых вопросах с ответами. Систематическое исследование этого эффекта авторства Aryabumi et al. обнаруживает, что улучшение сохраняется даже после контроля за общим качеством данных, и связывает это с необычно явной структурой кода: обучающим сигналом, построенным из вызовов функций, потока управления и состояния переменных, которые должны корректно компоноваться, чтобы вообще исполниться, — что, судя по всему, переносится на другие домены, вознаграждающие пошаговое, композиционное решение задач. Это конкретный пример более общего тезиса раздела — ценность домена как обучающих данных плохо предсказывается тем, насколько «релевантным» он выглядит вашим целевым задачам на поверхности, — и он предвосхищает более осознанное использование структурированных, проверяемых задач, к которому вернётся обсуждение обучения рассуждению в главе 5.1.
В совокупности эта глава утверждала, что то, чему учат модель предсказывать, и то, на чём её обучают, — неразделимые инженерные решения, каждое из которых имеет измеримые последствия для итогового поведения модели. Но до сих пор все утверждения в этой главе носили качественный характер — «более тщательная фильтрация помогает», «дедупликация помогает» — без способа заранее предсказать, насколько именно каждое из этих решений поможет, прежде чем потратить вычисления и выяснить это на практике. Именно этот прогностический вопрос — можно ли заранее, до обучения модели, предсказать её функцию потерь и итоговое качество на прикладных задачах как функцию её размера, её данных и вычислительного бюджета, который вы готовы потратить, — законы масштабирования и призваны решить, и к этому обращается следующая глава.
7. Взгляд с точки зрения интервью
В: Почему каузальное языковое моделирование с декодером стало стандартным подходом к предобучению универсальных LLM, а не маскированное языковое моделирование или восстановление спанов? Сильный ответ строит аргументацию вокруг согласованности между обучением и инференсом: каузальное предобучение обучает модель делать в точности ту задачу, которую она выполняет при развёртывании (предсказывать следующий токен по префиксу слева), поэтому не нужно преодолевать никакого рассогласования целей для открытой генерации, тогда как маскированные цели и цели с восстановлением спанов опираются на двунаправленный контекст или на разделение энкодер/декодер, которых нет при генерации текста токен за токеном по запросу. Сильный ответ также признаёт, что маскированные и энкодер-декодерные цели остаются хорошо подходящими для своих собственных сценариев (эмбеддинги, некоторые seq2seq-задачи), а не утверждает, что только-декодер универсально превосходит остальные.
В: От чего конкретно защищает дедупликация обучающих данных и почему это важно для эффективности обучения, а не только для гигиены данных? Сильный ответ отдельно называет оба последствия: усиленное дословное запоминание (риск для качества и для конфиденциальности/авторских прав) и впустую потраченные вычисления, поскольку шаги обучения, потраченные на дублированный текст, не учат модель ничему новому по сравнению с первым разом, когда она видела этот текст, поэтому удаление дубликатов улучшает итоговое качество на единицу вычислений, а не просто наводит порядок.
В: RefinedWeb и FineWeb оба утверждают, что данные из веба могут сравниться с курируемыми корпусами. Каков реальный механизм, который это делает возможным? Сильный ответ объясняет, что это строгая, тщательно проверенная абляциями фильтрация и многоуровневая дедупликация, применённые в масштабе к сырым веб-краулам (таким как Common Crawl), а не какое-то внутреннее свойство самого веб-текста — утверждение состоит в том, что прежние предположения о необходимости курируемых проприетарных источников отражали недостаточно тщательные конвейеры обработки веб-данных, и что при достаточной строгости фильтрации сам масштаб и разнообразие веб-данных способны дать обучающие данные, сопоставимые с меньшими курируемыми корпусами или превосходящие их.
В: Если бы вам поручили улучшить корпус предобучения при фиксированном вычислительном бюджете на обучение, какие рычаги вы бы рассмотрели прежде, чем трогать архитектуру модели? Сильный ответ перечисляет дедупликацию на нескольких уровнях гранулярности, фильтрацию по качеству с помощью эвристик или обученных классификаторов, а также удаление небезопасного или малоценного контента — и трактует всё это как меры повышения эффективности вычислений: цель — максимизировать полезный сигнал на обучающий токен, а не просто наращивать объём сырого текста.
В: Устарело ли маскированное языковое моделирование теперь, когда доминируют модели только-декодер? Сильный ответ не поддаётся ловушке вопроса: маскированное языковое моделирование остаётся правильной целью для получения сильных двунаправленных представлений для поисковых и классификационных эмбеддингов, где весь вход доступен на этапе инференса и нет этапа генерации, с которым нужно быть согласованным; «устарело для генерации» — это не то же самое, что «устарело» вообще.
8. Вопросы для самопроверки
- Почему цель обучения маскированной языковой модели создаёт внутреннее рассогласование с открытой генерацией текста таким образом, каким этого не делает каузальное языковое моделирование?
- Какое архитектурное свойство из главы 2.3 требуется каждой из трёх целей предобучения (каузальная LM, маскированная LM, восстановление спанов) и почему?
- Какие два различных вреда Ли с соавторами приписывают дублированному тексту в корпусах предобучения?
- Почему «модель дословно запомнила обучающий пример» считается провалом, а не успехом, учитывая, что языковые модели явно обучаются точно предсказывать текст?
- Против чего выступили RefinedWeb и FineWeb и какие данные подкрепляли их позицию?
- Если корпус дедуплицирован, но иначе не отфильтрован по качеству, ожидали бы вы лучшего или худшего итогового качества по сравнению с отфильтрованным, но не дедуплицированным корпусом того же объёма в токенах? От чего зависит ваш ответ?
- Почему эта глава представляет курирование данных как «равноправное» с архитектурой модели, а не как второстепенную заботу?
9. Источники
- Devlin, J., Chang, M.-W., Lee, K., & Toutanova, K. (2018). BERT: Pre-training of Deep Bidirectional Transformers for Language Understanding. arXiv:1810.04805. https://arxiv.org/abs/1810.04805
- Raffel, C., Shazeer, N., Roberts, A., et al. (2019). Exploring the Limits of Transfer Learning with a Unified Text-to-Text Transformer (T5). arXiv:1910.10683. https://arxiv.org/abs/1910.10683
- Radford, A., Wu, J., Child, R., Luan, D., Amodei, D., & Sutskever, I. (2019). Language Models are Unsupervised Multitask Learners (GPT-2). Not on arXiv. https://cdn.openai.com/better-language-models/language_models_are_unsupervised_multitask_learners.pdf
- Lee, K., Ippolito, D., Nystrom, A., Zhang, C., Eck, D., Callison-Burch, C., & Carlini, N. (2022). Deduplicating Training Data Makes Language Models Better. ACL 2022. arXiv:2107.06499. https://arxiv.org/abs/2107.06499
- Penedo, G., Malartic, Q., Hesslow, D., et al. (2023). The RefinedWeb Dataset for Falcon LLM: Outperforming Curated Corpora with Web Data, and Web Data Only. NeurIPS 2023. arXiv:2306.01116. https://arxiv.org/abs/2306.01116
- Penedo, G., Kydlíček, H., Lozhkov, A., et al. (2024). The FineWeb Datasets: Decanting the Web for the Finest Text Data at Scale. NeurIPS 2024. arXiv:2406.17557. https://arxiv.org/abs/2406.17557
- Xie, S. M., Pham, H., Dong, X., et al. (2023). DoReMi: Optimizing Data Mixtures Speeds Up Language Model Pretraining. NeurIPS 2023. arXiv:2305.10429. https://arxiv.org/abs/2305.10429
- Aryabumi, V., Su, Y., Ma, R., et al. (2024). To Code, or Not To Code? Exploring Impact of Code in Pre-training. arXiv:2408.10914. https://arxiv.org/abs/2408.10914