Большие языковые модели, такие как те, которые используются в популярных чат-ботах с искусственным интеллектом, таких как ChatGPT, невероятно сложны. Несмотря на то, что эти модели используются в качестве инструментов во многих областях, таких как поддержка клиентов, генерация кода и языковой перевод, ученые до сих пор не до конца понимают, как они работают.
Стремясь лучше понять, что происходит под капотом, исследователи из Массачусетского технологического института и других организаций изучили механизмы работы, когда эти огромные модели машинного обучения извлекают сохраненные знания.
Они обнаружили неожиданный результат: большие языковые модели (LLM) часто используют очень простую линейную функцию для восстановления и декодирования сохраненных фактов. Более того, модель использует одну и ту же функцию декодирования для аналогичных типов фактов. Линейные функции, уравнения только с двумя переменными и без показателей степени, отражают прямую, линейную связь между двумя переменными.
Исследователи показали, что, определяя линейные функции для различных фактов, они могут проверить модель, чтобы увидеть, что она знает о новых предметах и где в модели хранятся эти знания.
Используя разработанную ими технику оценки этих простых функций, исследователи обнаружили, что даже если модель отвечает на подсказку неправильно, она часто сохраняет правильную информацию. В будущем ученые могли бы использовать такой подход для поиска и исправления неточностей внутри модели, что могло бы уменьшить склонность модели иногда давать неправильные или бессмысленные ответы.
«Несмотря на то, что эти модели представляют собой действительно сложные нелинейные функции, которые обучаются на большом количестве данных и их очень сложно понять, иногда внутри них работают действительно простые механизмы. Это один из примеров», — говорит Эван Эрнандес, аспирант электротехники и информатики (EECS) и соавтор статьи, подробно описывающей эти результаты.
Эрнандес написал статью вместе с соавтором Арнабом Шармой, аспирантом по информатике Северо-Восточного университета; его советник Джейкоб Андреас, доцент EECS и член Лаборатории компьютерных наук и искусственного интеллекта (CSAIL); старший автор Дэвид Бау, доцент кафедры информатики Северо-Восточного университета; и другие в Массачусетском технологическом институте, Гарвардском университете и Израильском технологическом институте. Исследование будет представлено на Международной конференции по обучению представлений.
Поиск фактов
Большинство крупных языковых моделей, также называемых моделями-трансформерами, представляют собой нейронные сети. Нейронные сети, основанные на человеческом мозге, содержат миллиарды взаимосвязанных узлов или нейронов, сгруппированных во множество слоев и кодирующих и обрабатывающих данные.
Большую часть знаний, хранящихся в преобразователе, можно представить как отношения, связывающие субъекты и объекты. Например, «Майлз Дэвис играет на трубе» — это отношение, которое связывает субъекта, Майлза Дэвиса, с объектом, трубой.
По мере того, как преобразователь получает больше знаний, он сохраняет дополнительные факты об определенном предмете на нескольких уровнях. Если пользователь спрашивает об этом предмете, модель должна расшифровать наиболее релевантный факт, чтобы ответить на запрос.
Если кто-то подскажет трансформер, сказав: «Майлз Дэвис играет. . ». модель должна отвечать словом «труба», а не «Иллинойс» (штат, где родился Майлз Дэвис).
«Где-то в сетевых вычислениях должен быть механизм, который ищет тот факт, что Майлз Дэвис играет на трубе, а затем извлекает эту информацию и помогает сгенерировать следующее слово. Мы хотели понять, что это за механизм», — говорит Эрнандес.
Исследователи провели серию экспериментов по изучению моделей LLM и обнаружили, что, хотя они чрезвычайно сложны, модели декодируют реляционную информацию с помощью простой линейной функции. Каждая функция зависит от типа извлекаемого факта.
Например, преобразователь будет использовать одну функцию декодирования каждый раз, когда он хочет вывести инструмент, на котором играет человек, и другую функцию каждый раз, когда он хочет вывести состояние, в котором человек родился.
Исследователи разработали метод оценки этих простых функций, а затем вычислили функции для 47 различных отношений, таких как «столица страны» и «солист группы».
Хотя возможных отношений может быть бесконечное множество, исследователи решили изучить это конкретное подмножество, поскольку они представляют те виды фактов, которые можно записать таким образом.
Они тестировали каждую функцию, меняя субъект, чтобы увидеть, сможет ли она восстановить правильную информацию об объекте. Например, функция «столица страны» должна возвращать Осло, если субъектом является Норвегия, и Лондон, если субъектом является Англия.
Функции извлекали правильную информацию более чем в 60 процентах случаев, показывая, что некоторая информация в преобразователе кодируется и извлекается таким способом.
«Но не все закодировано линейно. Для некоторых фактов, хотя модель их знает и будет прогнозировать текст, соответствующий этим фактам, мы не можем найти для них линейные функции. Это говорит о том, что модель делает что-то более сложное для хранения этой информации», — говорит он.
Визуализация знаний модели
Они также использовали эти функции, чтобы определить, что, по мнению модели, верно в отношении различных предметов.
В одном эксперименте они начали с подсказки «Билл Брэдли был» и использовали функции декодирования слов «занимается спортом» и «посещал университет», чтобы проверить, знает ли модель, что сенатор Брэдли был баскетболистом, посещавшим Принстон.
«Мы можем показать, что, хотя модель может сосредоточиться на различной информации при создании текста, она кодирует всю эту информацию», — говорит Эрнандес.
Они использовали эту технику зондирования для создания того, что они называют «линзой атрибутов», сеткой, которая визуализирует, где конкретная информация о конкретном отношении хранится внутри многих слоев преобразователя.
Линзы атрибутов могут создаваться автоматически, что позволяет исследователям лучше понять модель. Этот инструмент визуализации может позволить ученым и инженерам исправлять сохраненные знания и помочь предотвратить предоставление ложной информации чат-ботом с искусственным интеллектом.
В будущем Эрнандес и его сотрудники хотят лучше понять, что происходит в случаях, когда факты не хранятся линейно. Они также хотели бы провести эксперименты с более крупными моделями, а также изучить точность функций линейного декодирования.
«Это захватывающая работа, которая раскрывает недостающую часть нашего понимания того, как большие языковые модели вспоминают фактические знания во время вывода. Предыдущая работа показала, что LLM создают насыщенные информацией представления заданных предметов, из которых во время вывода извлекаются определенные атрибуты. Эта работа показывает, что сложные нелинейные вычисления LLM для извлечения атрибутов могут быть хорошо аппроксимированы простой линейной функцией», — говорит Мор Гева Пипек, доцент факультета компьютерных наук Тель-Авивского университета, который не участвовал в этом проекте. работа.
Это исследование было частично поддержано Открытой Филантропией, Израильским научным фондом и стипендией факультета ранней карьеры Фонда Азриэли.