Что такое галлюцинации ИИ
Галлюцинация в контексте искусственного интеллекта — это генерация системой информации, которая не соответствует действительности или не имеет оснований в данных, на которых она обучалась. Такие галлюцинации выглядят как убедительные ответы, но содержат фактические ошибки, вымышленные факты или несоответствия.
Например, если в ответ на вопрос «Кто написал роман „Война и мир“?» модель ответит: «Роман „Война и мир“ написал Фёдор Достоевский в 1867 году», — это будет галлюцинацией. Несмотря на то что ответ звучит правдоподобно, он содержит ошибку: на самом деле автором является Лев Толстой.
Исследования показывают, что современные модели могут генерировать галлюцинации в диапазоне от 1,3 до 29,9% случаев при сложных или специфических запросах. Для разных версий ChatGPT разброс составляет от 1,4 до 1,9%, для моделей Llama с открытым исходным кодом — от 4 до 20%.
Все галлюцинации можно разделить на несколько типов:
- Фактические — предоставление неверной информации о конкретных фактах. Например, неправильные даты, имена, цифры.
- Логические — ответы, которые логически не согласованы или противоречат сами себе.
- Структурные — генерация бессмысленного текста или текста, который не соответствует запросу.
- Смешанные — комбинация нескольких типов, где ответ содержит как фактические ошибки, так и логические несоответствия.
Как возникают галлюцинации в языковых моделях
Языковые модели вроде GPT основаны на архитектуре трансформеров. Они обучаются на огромных объемах текстовых данных и учатся предсказывать вероятное следующее слово в последовательности, основываясь на предыдущих. Однако такие модели не имеют собственного понимания или осознания мира: они опираются на вероятностные связи между словами и фразами.
В трансформерных моделях ключевыми компонентами являются энкодер и декодер:
- Энкодер принимает входной текст и преобразует его во внутреннее представление, улавливая смысл и структуру.
- Декодер использует это внутреннее представление для генерации выходного текста.
В контексте галлюцинаций энкодер может неправильно интерпретировать или упустить важные детали из входного текста, особенно если он неоднозначен или содержит ошибки. Декодер, в свою очередь, может воспользоваться этим недостатком и сгенерировать текст, который звучит логично, но не основан на фактах.
Если упрощать, модель не мыслит метафорически, не стремится дать правильный и точный ответ. Вместо этого нейросеть пробует угадать слова и составить текст, похожий на тот, что она уже «видела» в своей базе данных. Получается, нейросеть выдает компиляцию из источников, на которых обучалась.
В связи с этим есть несколько причин, по которым языковые модели генерируют галлюцинации:
- Отсутствие знаний — модель может не иметь информации о конкретном факте или событии, особенно если оно произошло после окончания ее обучения. Поэтому нейросети выдают ошибки, если спрашивать у них о совсем недавних событиях.
- Неоднозначность данных — модель может столкнуться с противоречивой информацией в данных обучения.
- Стремление к правдоподобности — модель оптимизирована для генерации текста, который статистически выглядит правдоподобно, а не для проверки фактической точности.
- Неполный контекст — если контекст запроса недостаточен, модель может «догадаться» и сгенерировать ответ на основе вероятных связей.
- Ошибки в данных обучения — если модель обучалась на данных, содержащих ошибки или недостоверную информацию, она повторяет эти ошибки.
Как бороться с галлюцинациями и какие способы перепроверки есть
Компании по разработке ИИ пытаются усовершенствовать технологию с помощью людей-тестировщиков. Когда пользователи работают с GPT-моделями, они оценивают ответы чат-бота, как бы показывая ему, где полезные и правдивые ответы, а где ложные. Затем, используя технику, которая называется обучением с подкреплением от обратной связи человека (Reinforcement Learning from Human Feedback, RLHF), система в течение нескольких недель анализирует эти оценки, чтобы лучше различать факты и вымысел.
Кроме того, существует еще несколько подходов, которые позволяют нейросетям бороться с галлюцинациями в ответах. Ими пользуются, например, корпорации при создании собственных LLM.
- Интеграция механизмов проверки фактов. Разработчики добавляют в модель компоненты, которые проверяют генерируемую информацию по надежным источникам или базам данных.
- Многоступенчатое генерирование ответов. Вместо одного прямого ответа модель может генерировать несколько вариантов и выбирать наиболее корректный.
- Ограничение области знаний. Специализированные модели, обученные в конкретных областях (например, медицине или праве), могут давать более точные ответы на профильные вопросы.
- Использование внешних источников информации. Подключение к актуальным базам данных и ресурсам позволяет модели получать свежую и проверенную информацию.
- Постоянное обновление данных обучения. Регулярное обновление данных, на которых обучается модель, с учетом новых знаний и фактов помогает ей давать грамотные ответы на большее число запросов.
- Привлечение экспертов. Включение специалистов в процесс разработки и настройки моделей упрощает выявление и исправление ошибок.
Пользователям же важно помнить, что языковые модели не обладают сознанием или пониманием мира. Они работают на основе вероятностей и данных обучения, и поэтому необходимо всегда перепроверять критически важную информацию в надежных источниках.
Галлюцинации в языковых моделях — это действительно сложный вызов в области искусственного интеллекта. Чтобы справиться с ним, мы должны глубже понять, как и почему возникают эти ошибки. Возможно, нам никогда не удастся полностью решить проблему, однако разработчики и исследователи продолжают упорно работать над улучшением моделей ИИ, придерживаясь технического прогресса и этических стандартов, чтобы искусственный интеллект стал более надежным и полезным инструментом для нас.