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

Введение

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

Большие языковые модели

Как следует из названия, языковые модели (LM) пытаются смоделировать язык, создавая распределение вероятностей по последовательности токенов (которые могут быть словами). Это можно применить к задаче генерации текста, поскольку, как только модель достаточно хороша с вероятностью, она может начать предсказывать следующие слова при наличии некоторых контекстных слов (подсказок). Эта идея лежит в основе исследований в области обработки естественного языка (NLP) на основе глубокого обучения (DL), где новые модели и модели SotA улучшаются с распределением вероятностей. А в последнее время несколько мощных моделей, таких как GPT-3, способны генерировать текст, который очень трудно отличить от текста, написанного человеком!

LLM лидируют в рейтинге по нескольким задачам НЛП. Но одна существующая проблема с ними (как и с любой моделью глубокого обучения) заключается в том, что они по своей сути являются черными ящиками, т. е. становится чрезвычайно трудно объяснить предсказания. Давайте попробуем посветить серым светом на эти черные ящики!

Внутренняя объяснимость

Внутренняя объяснимость пытается обеспечить техническую ясность того, почему модель сделала некоторые прогнозы. Большие LM (LLM) в основном представляют собой модели, основанные на DL, и хотя они становятся лучше с прогнозами, учитывая больше данных или параметров сети, это связано с затратами на объяснимость. Они не поддаются прямому объяснению, и нам нужно найти способы сделать вывод, почему модель сделала прогноз. Ниже мы кратко рассмотрим некоторые из этих способов.

На основе внимания

Последние LLM используют архитектуру на основе Transformer для повышения производительности. Что делает Transformers уникальным, так это наличие нескольких уровней внимания и головок для захвата двунаправленного и контекстно-зависимого представления токенов. Каждая головка внимания изучает определенные шаблоны, которые могут помочь в языковом моделировании. Эти шаблоны могут быть позиционными (обращение к предыдущему слову) или лексическими (обращение к аббревиатурам, синонимам и т. д.) по своей природе. И когда мы объединяем несколько таких головок в несколько слоев, общая модель способна фиксировать сложные закономерности и давать точные прогнозы.

Эти виды внутренних и низкоуровневых паттернов можно наблюдать с помощью инструментов визуализации оценки внимания, таких как bertviz [1]. Может быть два основных типа визуализации: (1) Визуализация головы, которая может быть полезна, чтобы увидеть, как модель обращает внимание на определенные слова с другим словом в контексте, и (2) Нейрон. визуализация, которую можно использовать для связи поведения модели со значениями нейронов.

Для визуализации «Внимание головы» вы можете выбрать модель, слой и голову, чтобы изучить различные модели внимания. Один пример показан ниже.

Здесь слой 5 и 11-й заголовок модели (2-й последний синий цвет в цветовой палитре), кажется, включает в себя гендерно-специфические паттерны (лексические) в языке. Вот почему оценка внимания к гендерным словам (Она, девочка), (Он, мальчик), (Он, Боб) и т. д. высока. Таким образом, эта голова также может быть использована для выявления гендерных предубеждений, что видно из ассоциаций — (медсестра, Она) и (врач, Он). Аналогичные предубеждения можно выявить и у других головок.

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

Здесь для слоя 1 и головы 10 значение некоторых нейронов уменьшается с увеличением расстояния. Это демонстрирует, что определенные нейроны включают в себя дистанционные паттерны!

Sметоды алиентности

Внимание представляет весьма близорукий взгляд, поскольку они ограничены определенной частью языковых моделей. Таким образом, они просто обеспечивают поведение этой части модели. В качестве аналогии это похоже на объяснение всего одной строки полного кода. Эта идея привела к спорам о том, действительно ли внимание представляет истинную объяснимость полной модели?! Чтобы смягчить эти опасения, возобновился интерес к старым, испытанным и протестированным методам значимости [2]. Это,

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

Существует несколько пакетов с открытым исходным кодом, таких как Ecco, которые позволяют визуализировать меру значимости. Один пример показан ниже,

Здесь для ввода «Нью-Дели является столицей» LLM вернула «Индия», что фактически верно. Но интуитивно мы хотели бы знать, какая определенная часть входных данных побудила модель сделать такой прогноз. Важная мера выделена цветом на изображении, и, как видно, она дала высокую оценку «Нью-Дели» и «столице»!

Внешняя объяснимость

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

Проблема с существующими языковыми моделями в том, что они содержат все свои знания в параметрах. GPT-3 состоит из 175 миллиардов параметров, и было показано, что он работает с большим количеством последующих задач. Он генерирует текст на основе информации, которую он изучил и сохранил в своих параметрах на этапе обучения и тонкой настройки. Возьмем в качестве примера одно задание на ответ на вопрос, где вопрос звучит так: «Кто является премьер-министром Индии?». Пока модель может ответить на него правильно сейчас, как насчет следующих выборов? Ответ очевиден, не получится. Это связано с тем, что получаемая информация постоянна и требует повторного обучения для постоянной калибровки с учетом последних событий в мире (что является дорогостоящим делом [3]).

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

Ниже приведены некоторые примеры ведущих команд ИИ в мире:

  • GopherCite [4] от DeepMind [бумага, блог] — это усовершенствование их языковой модели под названием Gopher. Он был создан для решения существующей проблемы галлюцинаций в модели Gopher. С их точки зрения, галлюцинация модели приводит к неправильному, иногда бессмысленному генерированию текста. Из-за этого люди должны не принимать вывод как должное и выполнять проверки. GopherCite в некоторой степени устраняет эту человеческую зависимость, используя поиск Google, чтобы найти соответствующие цитаты в качестве доказательства своего прогноза. В случае, если такие высоковероятные доказательства не найдены, он даже признает поражение вместо того, чтобы дать неправильный ответ!

  • WebGPT [5] от OpenAI [бумага, блог] — это попытка создателей GPT-3 решить проблему галлюцинаций. Они дополнили GPT дополнительной моделью, которая взаимодействует с текстовыми веб-браузерами, чтобы найти наиболее релевантные веб-страницы для заданного вопроса. Для этого модель выучила базовые команды вроде Искать…, Найти на странице:… или Цитата:…. Модель просматривает веб-страницы, чтобы найти отрывки, а затем использует их для составления ответа. Окончательный вывод содержит ссылки на исходные веб-страницы в попытке узаконить результаты.

  • LaMDA [6] от Google [бумага, блог] — это языковая модель диалогового взаимодействия. Во многих случаях разговор может стать сложным (с участием не вымышленных персонажей или реальных объектов), и тогда становится обязательным, чтобы модель знала правильный контекст и фоновые знания. На основе разговора LaMDA может вызвать внешнюю систему поиска информации, чтобы улучшить фактическую обоснованность своих ответов.

Рекомендации

[1] Многомасштабная визуализация внимания в модели трансформера

[2] Зачем использовать внимание в качестве объяснения, когда у нас есть методы выделения?

[3] Стоимость обучения ГПТ-3 | Реддит

[4] Обучение языковых моделей поддержке ответов проверенными цитатами

[5] WebGPT: ответы на вопросы с помощью браузера и человеческая обратная связь

[6] LaMDA: языковые модели для диалоговых приложений

Ваше здоровье.

Вы можете связаться со мной в LinkedIn или Twitter. Чтобы прочитать больше таких статей, посетите мою домашнюю страницу Medium или личный сайт.