Мягкое введение в галлюцинации в больших языковых моделях
Известно, что большие языковые модели (LLM) могут иметь “галлюцинации”. Это поведение, при котором модель говорит ложные знания так, как будто они являются точными. В этой заметке вы узнаете, почему галлюцинации – это природа LLM. В частности, вы узнаете:
- Почему у LLM возникают галлюцинации
- Как заставить галлюцинации работать на вас
- Как уменьшить проявления галлюцинаций
Давайте начнем.
Обзор
Этот пост разделен на три части, а именно
- Что такое галлюцинации в больших языковых моделях
- Использование галлюцинаций
- Смягчение последствий галлюцинаций
Что такое галлюцинации в больших языковых моделях
Большая языковая модель – это обученная модель машинного обучения, которая генерирует текст на основе предоставленной вами подсказки. В процессе обучения модель получила некоторые знания, полученные из предоставленных нами учебных данных. Трудно сказать, какие знания модель помнит, а какие нет. Фактически, когда модель генерирует текст, она не может сказать, точно ли она его генерирует.
В контексте LLM “галлюцинация” относится к явлению, когда модель генерирует текст, который является неправильным, бессмысленным или нереальным. Поскольку LLM не являются базами данных или поисковыми системами, они не будут ссылаться на то, на чем основан их ответ. Эти модели генерируют текст как экстраполяцию от подсказки, которую вы предоставили. Результат экстраполяции не обязательно подтверждается какими-либо обучающими данными, но является наиболее соотносимым с подсказкой.
Чтобы понять, что такое галлюцинация, можно построить марковскую модель биграмм из двух букв на основе некоторого текста: Извлеките длинный кусок текста, постройте таблицу каждой пары соседних букв и подсчитайте их количество. Например, “галлюцинации в больших языковых моделях” дадут “HA”, “AL”, “LL”, “LU” и т.д. и будет один счет “LU” и два счета “LA”. Теперь, если вы начали с подсказки “L”, вероятность того, что вы произведете “LA” в два раза выше, чем “LL” или “LS”. Затем с подсказкой “LA” вы с равной вероятностью произнесете “AL”, “AT”, “AR” или “AN”. Затем вы можете попробовать с подсказкой “LAT” и продолжить этот процесс. В конце концов, эта модель изобрела новое слово, которого не существовало. Это результат статистических закономерностей. Можно сказать, что ваша Марковская модель галлюцинировала написание.
Галлюцинация в LLM не намного сложнее этого, даже если модель намного сложнее. На высоком уровне галлюцинация вызвана ограниченным контекстуальным пониманием, поскольку модель обязана преобразовать подсказку и обучающие данные в абстракцию, в которой часть информации может быть потеряна. Более того, шум в обучающих данных также может дать искаженную статистическую картину, которая приведет к тому, что модель ответит не так, как вы ожидаете.
Использование галлюцинаций
Вы можете считать галлюцинации особенностью больших языковых моделей. Вы хотите, чтобы модели галлюцинировали, если вы хотите, чтобы они были творческими. Например, если вы просите ChatGPT или другие большие языковые модели дать вам сюжет фантастической истории, вы хотите, чтобы они не копировали существующие, а генерировали новых персонажей, сцены и сюжет. Это возможно только в том случае, если модели не просматривают данные, на которых они обучались.
Еще одна причина, по которой вам могут понадобиться галлюцинации, – это поиск разнообразия, например, запрос идей. Это все равно что попросить модели устроить для вас мозговой штурм. Вы хотите получить производные от существующих идей, которые вы можете найти в обучающих данных, но не точно такие же. Галлюцинации могут помочь вам исследовать различные возможности.
Многие языковые модели имеют параметр “температура”. Вы можете управлять температурой в ChatGPT, используя API, а не веб-интерфейс. Это параметр случайности. Более высокая температура может вызвать больше галлюцинаций.
Смягчение галлюцинаций
Языковые модели – это не поисковые системы или базы данных. Галлюцинации неизбежны. Раздражает то, что модели генерируют текст с ошибками, которые трудно заметить.
Если причиной галлюцинаций стали загрязненные данные обучения, можно очистить данные и переобучить модель. Однако большинство моделей слишком велики для обучения на собственных устройствах. Даже тонкая настройка существующей модели может оказаться невозможной на обычном оборудовании. Лучшим средством смягчения последствий может быть вмешательство человека в результат и просьба перегенерировать модель, если она серьезно ошиблась.
Другим решением, позволяющим избежать галлюцинаций, является контролируемая генерация. Это означает предоставление модели достаточного количества деталей и ограничений в подсказке. Таким образом, модель имеет ограниченную свободу для галлюцинаций. Причина разработки подсказок заключается в том, чтобы определить роль и сценарий для модели, чтобы направить генерацию, чтобы она не галлюцинировала неограниченно.
Резюме
В этом посте вы узнали, как галлюцинирует LLM. В частности
- Почему галлюцинация может быть полезна
- Как ограничить галлюцинации
Стоит отметить, что хотя галлюцинации можно смягчить, но, вероятно, не устранить полностью. Существует компромисс между креативностью и точностью.