Новости

Куда делся знаменитый BERT?Ответ на этот вопрос сигнализирует о смене парадигмы в LLM.

2024-07-22

한어Русский языкEnglishFrançaisIndonesianSanskrit日本語DeutschPortuguêsΕλληνικάespañolItalianoSuomalainenLatina

Куда пропала модель кодера? Если BERT работает хорошо, почему бы не расширить его? А как насчет моделей кодер-декодер или только кодер?



В области больших языковых моделей (LLM) сейчас доминирует только модель декодера (например, серия моделей GPT). А как насчет разработки моделей кодер-декодер или только кодер? Почему BERT, когда-то столь известный, постепенно все меньше и меньше людей обращает на него внимание?

Недавно Йи Тай, главный научный сотрудник и соучредитель AI-стартапа Reka, опубликовал сообщение в блоге, в котором поделился своими взглядами. Йи Тай работал в Google Research и Google Brain более трех лет, прежде чем стал соучредителем Reka, и участвовал в разработке известных LLM, таких как PaLM, UL2, Flan-2 и Bard, а также мультимодальных моделей, таких как Пали-Х и ВиТ-22Б работают. Ниже приводится содержание его сообщения в блоге.



Основное введение

Вообще говоря, архитектура модели LLM в последние несколько лет в основном разделена на три основные парадигмы: модель только для кодера (например, BERT), модель кодера-декодера (например, T5) и модель только для декодера (например, серия GPT). модели). Люди часто путаются и неправильно понимают эти методы и структуры классификации.

Первое, что нужно понять, это то, что модель кодера-декодера на самом деле является моделью авторегрессии. В модели кодера-декодера декодер, по сути, по-прежнему является причинным декодером. Вместо предварительного заполнения модели декодера он выгружает некоторый текст в кодировщик, а затем отправляет его в декодер посредством перекрестного внимания. Да, модель Т5 — это тоже языковая модель!

Вариантом модели этого типа является префиксная языковая модель, или сокращенно PrefixLM, которая работает почти так же, но без перекрестного внимания (и других мелких деталей, таких как общий вес между кодером/декодером и отсутствие узкого места в кодировщике). PrefixLM иногда называют непричинным декодером. Проще говоря, в целом нет большой разницы между моделями кодер-декодер, моделями только с декодером и PrefixLM!

В недавней превосходной лекции Хён Вона он умело объясняет взаимосвязь между этими моделями. Подробности можно найти в отчете Machine Heart: «Что будет основной движущей силой исследований ИИ?» Ученый-исследователь команды ChatGPT: Стоимость вычислений снижается》

В то же время метод шумоподавления в моделях только для кодировщиков, таких как BERT, отличается (т.е. на месте, и в определенной степени для того, чтобы модель только для кодировщика действительно играла роль после предварительного обучения); полагаться на заголовок «задачи». Позже в таких моделях, как T5, была принята «модифицированная» версия цели шумоподавления, в которой использовался последовательный формат.

В связи с этим важно отметить: шумоподавление в T5 — это не новая целевая функция (в смысле машинного обучения), а преобразование данных между входными данными, т. е. вы также можете использовать причинный декодер, обученный на искаженных целях (коррупция диапазона цель).

Люди всегда предполагают, что модели кодера-декодера должны быть моделями с шумоподавлением, отчасти потому, что T5 очень репрезентативен. Но это не всегда так. Вы можете обучить кодер-декодер, используя обычные задачи моделирования языка (например, причинное моделирование языка). В свою очередь, причинные декодеры также можно обучать с помощью задач по искажению диапазона. Как я уже говорил ранее, по сути, это преобразование данных.

Еще один момент, на который стоит обратить внимание: в целом кодер-декодер с 2N параметрами в вычислительном отношении аналогичен модели, состоящей только из декодера, с N параметрами, поэтому их соотношение FLOP к числу параметров различно. Это похоже на распределение «разреженности модели» между входными и целевыми данными.

В этом нет ничего нового и не я сам это придумал. Это было в документе T5 в 2019 году, и в документе UL2 также еще раз подчеркивался этот момент.

На данный момент я рад, что могу прояснить это. Теперь о целях.

Что касается целей шумоподавления (разве это не работает? Разве это не масштабируется? Или это слишком просто?)

Цель шумоподавления здесь относится к любому варианту задачи «повреждения пролета». Иногда это называют «заполнением» или «заполнением пробелов». Существует много способов выразить это, например, длина интервала, случайность, сторожевой токен и т. д. Вы, должно быть, поняли ключ.

Хотя цель шумоподавления в моделях в стиле BERT в основном присутствует (например, заголовок классификации находится на маркере маски), «стиль T5» является более современным, то есть через кодер-декодер или только декодер. модель для обработки преобразования данных. При таком преобразовании данных замаскированные токены просто «перемещаются назад», чтобы модель могла делать прогнозы.

Основная цель предварительного обучения — построить внутренние представления, которые максимально эффективно и результативно согласуются с последующей задачей. Чем лучше это внутреннее представление, тем легче использовать эти изученные представления для последующих задач. Мы все знаем, что простое предсказание следующего слова чрезвычайно хорошо работает для достижения цели «причинного моделирования языка» и стало ядром революции LLM. Вопрос теперь в том, одинаково ли хороша цель шумоподавления.

Основываясь на общедоступной информации, мы знаем, что T5-11B работает достаточно хорошо, даже после выравнивания и контролируемой тонкой настройки (оценка MMLU Flan-T5 XXL составляет 55+, что было довольно хорошо для модели такого размера в то время). . Следовательно, можно сделать вывод, что процесс передачи целей шумоподавления (предобучение → выравнивание) работает относительно хорошо в этом масштабе.

Я считаю, что цель шумоподавления работает хорошо, но недостаточно хорошо, чтобы быть целью сама по себе. Огромный недостаток связан с так называемой меньшей «подверженностью убыткам». В цели шумоподавления лишь небольшое количество токенов маскируется и изучается (т. е. учитывается при потерях). И наоборот, при моделировании на обычном языке эта вероятность близка к 100%. Это делает выборки на флоп очень неэффективными, что ставит цель шумоподавления в невыгодное положение при сравнении на флопе.

Еще одним недостатком целей шумоподавления является то, что они менее естественны, чем моделирование на обычном языке, поскольку при этом ввод/вывод странным образом переформатируются, что делает их менее подходящими для однократного обучения. (Но все же возможно настроить эти модели так, чтобы они достаточно хорошо выполняли задачи, требующие небольшого количества шагов.) Поэтому я считаю, что цели шумоподавления следует использовать только в качестве дополнительных целей к обычному языковому моделированию.

Первые дни единства и причина исчезновения BERT-подобных моделей

Такие модели, как BERT, постепенно исчезли, и о них уже мало кто говорит. Это также может объяснить, почему сейчас мы не видим очень крупномасштабных моделей BERT. какова причина? Во многом это связано с унификацией и сменой парадигм задач/моделирования. Модели в стиле BERT громоздки, но настоящая причина, по которой модели BERT устарели, заключается в том, что люди хотели сделать все это сразу, поэтому был принят лучший способ шумоподавления — использование авторегрессионных моделей.

В течение 2018–2021 годов произошла неявная смена парадигмы: от однозадачной тонкой настройки к масштабным многозадачным моделям. Это постепенно привело нас к единой модели SFT, которая является универсальной моделью, которую мы видим сегодня. Это сложно сделать с BERT. Я не думаю, что это имеет какое-то отношение к «шумоподавлению». Для людей, которые все еще хотят использовать такую ​​модель (например, T5), они нашли способ переформулировать задачу предварительного обучения по шумоподавлению, что делает модели в стиле BERT в настоящее время практически устаревшими, поскольку у нас есть лучшие альтернативные планы.

Точнее, модели «кодер-декодер» и «только декодер» могут использоваться для различных задач без необходимости использования заголовков классификации для конкретных задач. Что касается кодера-декодера, исследователи и инженеры начали обнаруживать, что эффект от отказа от кодера аналогичен эффекту от кодера BERT. Кроме того, это сохраняет преимущества двунаправленного внимания — преимущество, которое делает BERT конкурентоспособным с GPT в небольших масштабах (часто в производственных масштабах).

Значение цели шумоподавления

Цель предварительного обучения с шумоподавлением также учится предсказывать следующее слово аналогично моделированию обычного языка. Однако, в отличие от традиционного моделирования причинного языка, это требует использования преобразования данных в последовательности, чтобы модель могла научиться «заполнять пробелы», а не просто предсказывать естественный текст слева направо.

Стоит отметить, что цели шумоподавления иногда называют «задачами заполнения» и иногда смешивают с обычными задачами моделирования языка в процессе предварительного обучения.

Хотя точные детали конфигурации и реализации могут различаться, современные современные LLM могут использовать некоторую комбинацию языкового моделирования и заполнения. Интересно, что этот гибрид «языковая модель + дополнение» фактически распространился примерно в тот же период (например, UL2, FIM, GLM, CM3), и многие команды привнесли свои собственные уникальные гибридные решения. Кстати, самой крупной известной моделью, обученной таким образом, является, вероятно, PaLM-2.

Следует также отметить, что набор задач перед обучением также можно складывать по порядку, и его не обязательно смешивать одновременно. Например, Flan-T5 изначально обучался на поврежденных токенах диапазона 1T, а затем переключался. до 100 млрд токенов для целевого языка моделирования с прямой связью. Затем выполните точную настройку команды flan. В некоторой степени это подходит для гибридных целевых моделей шумоподавления и LM. Чтобы внести ясность, цель моделирования префиксного языка (не путать с архитектурой) — это чисто причинное моделирование языка со случайным определением точки разделения и отправкой на вход (без потерь и некаузальной маскировки).

Между прочим, заполнение, возможно, произошло из области кода LLM, где «заполнение пробелов» было скорее функцией, необходимой для написания кода. В то же время мотивация UL2 заключается в том, чтобы объединить цель шумоподавления и класс задач, с которыми двунаправленный LLM превосходно справляется, с изначально генеративными задачами (такими как суммирование или открытая генерация). Преимущество этого «сдвига назад» авторегрессионного декодирования заключается в том, что он не только позволяет модели изучать долгосрочные зависимости, но также позволяет ей неявно извлекать выгоду из неявного двунаправленного внимания (поскольку, чтобы заполнить пробелы, вы увидел будущее).

Существует легендарный опыт: представления, полученные путем шумоподавления целевых объектов, лучше справляются с конкретными категориями задач и иногда имеют более высокую эффективность выборки. В статье U-PaLM мы показываем, как небольшое количество тренировок с нарушением промежутка времени меняет поведение и возникающие явления в ряде задач BIG-Bench. Исходя из этого, точная настройка модели, обученной с этой целью, часто приводит к получению более точной контролируемой модели, особенно в небольших масштабах.

С точки зрения однозадачной тонкой настройки видно, что модель PaLM-1 62B проигрывает гораздо меньшей модели T5. В относительно небольшом масштабе «двунаправленное внимание + шумоподавление цели» — прекрасная комбинация! Я думаю, что многие практики также заметили эту ситуацию, особенно в производственных приложениях.

А как насчет двунаправленного внимания?

Двунаправленное внимание — это интересный «индуктивный уклон» для языковых моделей, который люди часто путают с целями и основами модели. Индуктивное смещение по-разному используется в разных вычислительных областях и может оказывать различное влияние на кривую расширения. При этом двунаправленное внимание может быть менее важным в больших масштабах, чем в меньших, или может оказывать различное влияние на разные задачи или модальности. Например, PaliGemma использует архитектуру PrefixLM.

Хён Вон также отметил в своем выступлении: модели PrefixLM (модели только для декодеров, использующие двунаправленное внимание) также имеют проблемы с кэшированием, что является неотъемлемым недостатком архитектуры этого типа. Однако я думаю, что существует множество способов обойти этот недостаток, но это выходит за рамки данной статьи.

Плюсы и минусы архитектуры кодировщика-декодера

Архитектура кодер-декодер имеет преимущества и недостатки по сравнению с моделью, состоящей только из декодера. В первом случае сторона кодера не ограничена причинной маской. В некоторой степени вы можете оторвать руки от слоя внимания и агрессивно выполнять объединение или любую форму линейного внимания, не беспокоясь о конструктивных ограничениях авторегрессии. Это отличный способ передать кодировщику менее важный «контекст». Вы также можете уменьшить энкодер, что тоже является преимуществом.

Примером требуемой архитектуры кодировщика-декодера является Charformer, который смело использует кодеры и смягчает недостаток скорости моделей на уровне байтов. Инновации в области кодирования могут принести быстрые выгоды, не беспокоясь о серьезных ошибках, связанных с причинно-следственной маскировкой.

В то же время, по сравнению с PrefixLM, недостатком кодера-декодера является то, что на вход и цель должен быть выделен фиксированный бюджет. Например, если входной бюджет составляет 1024 токена, то сторона кодировщика должна дополнить это значение, что может привести к потере большого количества вычислений. Напротив, в PrefixLM входы и цели могут быть связаны напрямую, что облегчает эту проблему.

Актуальность для сегодняшних моделей и ключевые выводы

В современную эпоху ключевой способностью быть квалифицированным исследователем и практиком LLM является способность делать выводы об индуктивных предубеждениях как из архитектурного аспекта, так и из аспекта предварительного обучения. Понимание тонких различий может помочь людям экстраполировать и продолжать внедрять инновации.

Вот мои ключевые выводы:

Модели «кодировщик-декодер» и «только декодер» являются авторегрессионными моделями, они различаются на уровне реализации и имеют свои преимущества и недостатки. Это немного разные индуктивные смещения. Какой из них использовать, зависит от последующих вариантов использования и ограничений приложения. В то же время модели кодировщиков в стиле BERT можно считать устаревшими для большинства случаев использования LLM и нишевых вариантов использования.

Цель шумоподавления в основном может использоваться как дополнение к каузальной языковой модели. Они успешно использовались в качестве «мишеней поддержки» на этапе обучения. Обучение причинно-языковых моделей с использованием целей шумоподавления часто в некоторой степени помогает. Хотя это очень распространено в мире моделей кода (т. е. наполнение кода), сегодня в моделях общего назначения также часто используется модель причинного языка плюс некоторая цель шумоподавления для предварительного обучения.

Двунаправленное внимание может значительно помочь моделям меньшего размера, но для более крупных моделей оно необязательно. В основном это слухи. Я думаю, что двунаправленное внимание имеет индуктивный уклон, подобно многим другим типам модификаций модели Трансформера.

Наконец, резюме. В настоящее время не существует крупномасштабной версии модели BERT: модель BERT устарела и заменена более гибкой моделью T5 с шумоподавлением (авторегрессией). В основном это связано с унификацией парадигм, то есть люди предпочитают использовать общую модель для выполнения различных задач (а не использовать модель для конкретной задачи). В то же время авторегрессионное шумоподавление иногда может использоваться как побочная цель причинных языковых моделей.

Исходная ссылка: https://www.yitay.net/blog/model-architecture-blogpost-encoders-prefixlm-denoising