Почему нейросети галлюцини­руют и как решить эту проблему?

2
Аватар автора

Алина

спросила в Сообществе

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

Аватар автора

Аннет Сухарева

на «ты» с нейросетями

Страница автора

Склонность к галлюцинациям — одна из самых проблемных особенностей нейросетей. Так называют неточную и ложную информацию, которую ИИ выдает, генерируя результат. Проявляться это может по-разному: от ошибок и искажения фактов в тексте до откровенного выдумывания. Согласно исследованию стартапа Vectara, разные нейросети галлюцинируют от 3 до 27% времени.

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

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

Какие бывают галлюцинации

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

Генерация текстов. Языковые модели могут перевирать факты и выдумывать события, даты, имена или другие детали. Например, ChatGPT может ошибочно утверждать, что воображаемый персонаж участвовал в важном историческом событии, или советовать несуществующие книги.

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

Первые два ветерана реально существуют, но Роберт Коган — нет
Первые два ветерана реально существуют, но Роберт Коган — нет
У Роберта Шекли нет книги «Кукольник». Такой рассказ есть у Рэя Брэдбери, но он про гробовщика, а не про сны
У Роберта Шекли нет книги «Кукольник». Такой рассказ есть у Рэя Брэдбери, но он про гробовщика, а не про сны

Генерация изображений. Нейросети могут генерировать только то, что уже знают и видели на других снимках. Они не имеют представления об анатомии, поэтому на картинках с животными и людьми допускают появление артефактов — лишних и неуместных деталей. У человека могут вырасти дополнительные руки, ноги, пальцы и другие части тела.

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

Нейросеть Kling AI изобразила девушку с двумя правыми руками
Нейросеть Kling AI изобразила девушку с двумя правыми руками
ИИ предложил на выбор две картинки по запросу «женские ноги в сандалиях на пляже», на обеих не хватало пальцев
ИИ предложил на выбор две картинки по запросу «женские ноги в сандалиях на пляже», на обеих не хватало пальцев

Генерация музыки. Самый известный вид галлюцинаций — неразборчивый текст сгенерированных песен, превращающийся в какофонию. Еще нейросети могут создавать монотонную музыку с часто повторяющимися фразами или слишком сложные, неестественные звуковые текстуры, которые трудно слушать. Иногда композиции звучат как зажеванная пленка.

Генерация видео. Часто персонажи в сгенерированных видео выглядят нелепо. Например, человек может двигаться с неправдоподобной скоростью, принимать неестественные позы, а объекты — проходить друг сквозь друга.

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

На «Ютубе» есть много примеров того, как пользователи оживляют известные мемы или кадры из фильмов с помощью нейросети Luma. Без артефактов там не обходится.

Мемы из Luma

Почему нейросети галлюцинируют

Все перечисленные проблемы вполне закономерны. Они связаны с тем, как устроены нейросети и как с ними работают пользователи. Вот несколько причин.

Принцип работы моделей. Большие языковые модели обучены на огромных объемах информации, но они не изучают ее осмысленно, а выявляют закономерности. Нейросеть предсказывает следующее слово в тексте как очень мощная функция автозаполнения. Этот процесс повторяется несколько раз, пока не сформируется конечный результат.

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

Качество источников. Генеративные модели обучаются на огромных объемах данных, в основном из интернета. Они содержат как правдивую информацию, так и ложную, а еще общественные и культурные предубеждения. Модели не умеют отличать истину ото лжи, поэтому воспроизводят все, что было в датасете.

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

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

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

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

Например, если задать вопрос «Какая диета самая полезная для здоровья?», нейросеть может от раза к разу давать противоположные ответы. Лучше сразу включить в запрос уточнение — например, «для людей с непереносимостью лактозы» или «если я хочу снизить потребление сахара».

Цензура. Бывает, что ограничения разработчиков убирают правдивые факты или искажают их. Многие нейросети обучены избегать определенных тем, например о насилии или сексе. Такую цензуру вводят для защиты от вредоносного контента. Но иногда она приводит к галлюцинациям, потому что нейросеть начинает фантазировать там, где не может сказать правду.

Как сократить неточности при генерации

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

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

Если генерируете картинку, обязательно укажите стиль изображения, опишите объекты прилагательными, добавьте описание действий, поз, цветового решения и ракурса.

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

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

Заставьте нейросеть размышлять пошагово. Для этого есть несколько приемов:

  1. Цепочка размышлений — Chain of Thought — это подход, при котором моделям дают инструкцию мыслить последовательно, разбивая сложные задачи на более простые этапы. Добавьте в промпт фразу «Раздели решение задачи на несколько шагов и объясни свою логику, прежде чем дать окончательный ответ».
  2. Дерево размышлений — Tree of Thought — в этом методе модель рассматривает несколько возможных путей решения задачи одновременно. Используйте такой запрос: «Рассмотри несколько возможных подходов к решению задачи, объясни плюсы и минусы каждого и выбери наилучший».
  3. От меньшего к большему — Least to Most — идея в том, чтобы сначала справиться с основными элементами задачи, а уже потом добавлять детали. Так и напишите в конце запроса: «Начни с решения самой простой части задачи, а затем постепенно добавляй шаги, чтобы решить более сложные аспекты». Когда все будет готово, попросите нейросеть собрать все этапы в окончательное решение.

Разрешите нейросети чего-то не знать. Укажите прямо в промпте, что сочинять ответ любой ценой не нужно: «Если у тебя недостаточно информации для решения этой задачи, так и ответь».

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

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

Решат ли исследователи проблему галлюцинаций

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

Сэм Альтман, генеральный директор компании OpenAI, разработчика ChatGPT, считает, что потребуется полтора-два года, чтобы «гораздо лучше справляться с проблемой галлюцинаций». «Есть баланс между творческим подходом и идеальной точностью. И модель должна научиться понимать, когда вам нужно одно, а когда — другое», — говорит он.

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

Microsoft, чей чат-бот Copilot работает на основе GPT-4, тоже борется с галлюцинациями, но своеобразным способом. Компания сравнивает ответы своего чат-бота с базовыми данными из GPT-4. Другими словами, Microsoft проверяет ИИ с помощью ИИ.

Компания также пытается улучшить ответы с помощью интернет-поисковика. Когда вы вводите запрос в Copilot, Microsoft запускает поиск в сети, а затем добавляет результаты в запрос, прежде чем отправить его боту.

Google использует аналогичные методы для повышения точности Gemini — бывшего Bard. По словам вице-президента по исследованиям Google, чат-бот использует обратную связь с людьми и «привязывает» ее к местности, используя информацию из поиска.

При этом некоторые исследователи считают, что избавиться от галлюцинаций в принципе невозможно из-за самого принципа работы нейросетей. В исследовании Национального университета Сингапура говорится, что галлюцинации неизбежны у всех больших языковых моделей. Алгоритмы ошибаются подобно тому, как ни один человек не бывает всегда прав на 100%.

Аннет СухареваРасскажите, с какой нелепой галлюцинацией вы сталкивались, работая с нейросетями:
  • ГригорийВ юридических текстах галлюцинации очень хорошо видно. Я проверял тестовые задания кандидатов, и когда видишь выдуманные законы и другие нормативные акты, сразу понимаешь, что можно отправлять в мусорную корзину резюме.0
  • Евгений МироновВ прошлом 2023 году попросил нейросеть ChatGPT перечислить 10 нобелевских лауреатов из Афганистана и написать в какой области науки они сделали свои выдающиеся открытия, за которые им дали нобелевские премии. Вопрос задавался специально для определения степени галлюцинаций. Нейросеть дала список 10 афганских ученых и написала по каждому их научные открытия и годы в которых им дали нобелевские премии. Многие годы были "талибанскими". Кстати, в списке были даже математики, вопреки завещанию Нобеля! В списке также была и парочка женщин. Наконец, имена половины всех ученых совпадали, только у них были разные науки и разные годы получения нобелевской премии. Еще я застал те времена, когда ChatGPT не умела складывать и перемножать 4-значные числа и выдавала неправильные ответы, так как в Интернете невозможно было найти примеры сложения и перемножения именно тех чисел, которые я вводил. Поэтому нейросеть пыталась решать такие примеры статистически и выдать наиболее вероятный ответ. Если надо было сложить или перемножить, например, 2-значные числа, то нейросеть выдавала правильные ответы, потому что в Интернете уже давно присутствуют все возможные примеры сложения и перемножения 2-значных чисел. Как я понимаю, сейчас в ChatGPT уже вставлен калькулятор. Еще когда-то читал, что какие-то шутники убедили ChatGPT, что 2*2=5. И затем продемонстрировали людям, что ChatGPT неправильно перемножает числа. В прошлом году пытался повторить этот эксперимент. Долго не получалось, так как ChatGPT отказывалась принимать это. Потом частично получилось, когда в задании начал писать, что надо дать ответ в рамках такой гипотезы, что 2*2=5. Только после этого нейросеть перемножила 22*22=605, но тут же написала, что это только в рамках гипотезы 2*2=5. То есть сделать шутку над друзьями не удалось.0