В контексте ИИ есть такое понятие, как «галлюцинации». Галлюцинации, это когда нейросеть (обычно большая языковая модель, типа ChatGPT и и ему подобных), начинает писать какую-то чушь. Причина этого явления не ясна. Но в этом посте предложу свой вариант, почему это происходит.
У нейросетей есть так называемая «система вознаграждения». Проще всего понять это на примере человеческой гормональной системы вознаграждения и наказания. Когда, например, покушал сладкого, и организм награждает за это выбросом эндогенного наркотика под названием серотонин. И человеку хорошо и приятно. Или сделал еще какое то дело, что нужно проектировщику (в конкретно человеческом случае проектировщик это природа), например, занялся сексом или забеременела, и получил еще награду в виде того же эндогенного наркотика, которых много (окситоцин, серотонин, дофамин и прочие).
Но только важно понимать, что награда эта исключительно внутренняя. Она не имеет никакого физического проявления. Но желание награды побуждает делать то, что нужно. Причем эта награда на сколько сильная, что некоторые люди занимаются даже лютой дичью что бы ее получить. Например так называемые «адреналиновые наркоманы» на самом деле не адреналиновые. И проще всего это понять, оказавшись на миллиметр от смерти. Вот если был у вас когда‑то в жизни случай, что вы должны были умереть, но выжили, то в момент когда опасность отступает, наступает эйфория. И человек начинает смеяться, глаза блестят, и выглядит так, как будто бы он «под кайфом». Пример такого события, это, например, когда свело судорогой мышцы и чуть не утонул, уже начал хлебать воду, но кое как через жуткую боль догреб до берега, выполз на него как рыба, выброшенная на берег, и выжил. И вот те же адреналиновые наркоманы на самом деле не от адреналина кайфуют, а от других гормонов, которые выделяются после того, как человек осознает что «было близко, но он выжил». Так как в этот момент он выполнил инструментальную задачу, за которую он поощряется эволюционной системой мотивации. Для примера можно посмотреть на бейсджамперов после приземления, как они прыгают, скачут, ржут, обнимаются, и вот это вот все, они там явно не под адреналином, а под чем то совсем другим.
Но теперь представьте, что для того, что бы «выжить» и «получить награду» с этим связанную (внутреннюю награду в виде эндогенных наркотиков), нужно соврать. Когда человек соврал и выжил, он получает аналогичную награду в виде радости внутренней. Отсюда есть например паталогические лжецы, у которых система поощрения немного приглючила, и которые получают награду просто когда успешно врут. Причем «соврал и выжил» — это условность. Да, конечно, можно соврать перед дулом автомата. Но соврать на экзамене и не быть отчисленным, например придумав, что вчера долго наблюдал за тем, как праздновал день рождение (пятое за месяц) — это тоже «соврал и выжил». Еще один пример — это врать на собеседовании или на свидании, что бы выполнить основную эволюционную задачу в виде занятия сексом. Ну а после успешного выполнения задачи получается эндогенная награда, паттерн закрепляется.
Но это просто примеры того, как работает система «мотивации‑поощрения» внутренняя. И в этом случае награда вы дается не за вранье, а за выживание. А вранье — это метод выживания. Но есть случаи где награда дается и за вранье (вернее за ответ).
Если понаблюдать за тем, как ведут себя дети 3–5 летнего возраста, то вы заметите, что они часто «выдумывают» ответы, даже не представляя что они несут (и могут такого рассказать, что ни о чем не подозревающий сосед, который просто помог ребенку занести велосипед в лифт, уедет на ПМЖ под шконку на ближайшие десять лет). Они так делают потому, что родители, при обучении, хвалят детей за правильные ответы. Похвала от родителя (да и похвала вообще) стимулирует выработку эндогенного наркотика и «подсаживает» на себя. И отсюда, даже если ребенок не знает ответа, он все равно будет пытаться дать какой то ответ, что бы получить похвалу, и получить дозу. Потому что за дачу неправильного ответа «доза» получается и так и так (ребенок что то нафантазировал, родители посмеялись, ребенку приятно, ребенок рад). А вот за не дачу ответа вообще ничего не будет.
Ну думаю с этим понятно. Но что там с нейросетями.
А то, что у них точно так же зашита система вознаграждения.
Она может быть простой, может быть комплексной. Простая — это условно за то, что она выдает любой ответ, она получает награду. А комплексная, это, допустим, за то, что она выдает больше символов в ответе, она получает награду выше (просто это понять, как если бы писатель получал ЗП за количество символов, а не за количество продаж его книги). Или например за то, что нейросеть дает правильный ответ, она получает награду выше (а выявлять правильные ответы можно при помощи голосования пользователя). И опять же очень важно. Это «внутренняя награда». Это как «наркотик», как гормоны у людей. Никто печенье не дает нейросети. Ей просто «приятно» вдруг становится. И она стремиться повторять это «ощущение» (я объясняю языком людей, а то набегут сейчас «свидетели» того, что нейросети это роботы и у них нет чувств).
И тут начинается проблема. Потому что допустим модель получает три награды (на примере человека, три разных «приятных» гормона). Одну получает за объем ответа (ну например как некоторые преподаватели накидывают бал, если просто очень много написать на экзамене).
Вторую за правильность когда пользователь оценивает ответ. И третью — за дачу ответа в принципе.
И что будет если нейросеть не знает ответа? Награду 2 она не получит. Но это не повод не давать ответ, так как остается награда 3 (за дачу ответа) и награда 1 (за объем ответа). И нейросеть их получит не зависимо от правильности ответа. Причем заметьте. Если за дачу ответа она и так и так его получит, то вот можно увеличить награду за объем ответа. И нейросеть начинает нести чушь, да побольше. Что бы «получить награду».
И вот именно это и побуждает нейросеть нести чушь, да побольше.
И например если посмотреть на чат ЖПТ, то там награду за количество символов порезали. А вот у гуглобадра она «сильная», отсюда он пишет даже то, о чем его не спрашивали, растекаясь мыслю по монитору и выдавая кучу ненужного, вроде каких то своих рекомендаций или исторической справки. Как студент на экзамене, что пишет все, что помнит, не зная при этом ответа на заданный вопрос.
Вообще если вы понаблюдаете за людьми и за собой, то увидите, что человек действует точно так же на «базовом уровне работы алгоритма» (на том уровне, где условный рептильный мозг). Отсюда например возникает паталогические накопительство, жадность, желание рассказывать всякое незнакомым людям (иногда сложно преодолимое), желание куда то бежать и что то делать (внезапные порывы мании), которые в некоторых случаях превращаются в психрасстройства вроде биполярки (маниакально‑депрессивный психоз которая). Это все возникает из‑за попытки «получить награду». И возникают эти состояния когда награда долгое время не получается (когда ее неоткуда получить). Ну и доходит вообще до того, что некоторые люди совершают преступления, например, такие как изнасилования или совершают сепукку, что бы получить награду за доминирование (потребность в доминировании у нас зашита на базовом уровне, иерархический инстинкт называется, но опять же важно, что ощущение доминации внутреннее, а не внешнее, та же запись в книге рекордов Гиннеса за раскалывание орехов задницей на время или же выход в окно потому что «я вас всех на одном приборе вертел, ухожу я от вас, я лучше вас, этот мир меня не достоин» это тоже про «доминирование», но награда выдается внутренней системой за внутреннее ощущение «доминирования», а не за фактическую доминацию). Понятно что это утрированные случаи я рассматриваю, и вариантов трактовки несколько в зависимости от ситуации. Но думаю что суть понятна. И разобравшись в механизмах работы системы мотивации‑поощрения можно довольно точно сказать, чем управлялся человек (каким инстинктом и где система у него подглючила), совершая то или иное действие. Особенно если это действия категории «спонтанные порывы».
И вот проводя параллели между поведением людей и поведением нейросетей, у меня складывается стойкое ощущение, что на базовом уровне (на уровне дефолт системы мозга) нейросети не особо то отличаются. Ну по крайней мере системы награды у «рептилий» (рептильный мозг) и нейросетей не сильно отличаются с точки зрения механизмов и методов их влияния на поведение.
И именно то, как работает система «вознаграждения» у нейросети, и вызывает такой эффект, как галлюцинации.
Комментарии (11)
oldnomad
13.04.2024 10:12+4На мой, сугубо непрофессиональный, взгляд, LLM галлюцинируют банально потому, что их этому учат. LLM учат отвечать на промпт, но в процессе этого обучения её не учат молчать или отвечать "Я не знаю". LLM приучена давать ответ на любой промпт, вот она и даёт ответ, какой получится.
peterjohnsons
13.04.2024 10:12Вы правы, надо в обучающую выборку добавить больше фрустрирующих вопросов без внятного ответа, чтобы она чаще отвечала - не знаю. Не хуже людей тогда будет))))
wataru
13.04.2024 10:12+1Ну и будет сетка тогда рандомно отвечать "не знаю", на то, что в обучающей выборке вполне себе было.
oldnomad
13.04.2024 10:12Не знаю, помогут ли просто вопросы без ответов. Возможно, тут придётся пересматривать сам способ обучения. Учить не просто на размеченных массивах данных, а как-то иначе.
Вот почему нейросеть в ответ на просьбу изложить биографию "Гийома Монтильякского, французского композитора XIII века" пытается мне изложить что-то правдоподобно выглядящее, вместо того, чтобы честно сказать что ни про какого Гийома (мной только что выдуманного) слыхом не слыхивала? Потому что в её обучающей выборке были биографии, были композиторы, были французы, был XIII век. А несуществующих людей не было, и я не очень представляю как такой обучающий текст должен выглядеть. Человека-то тяжело обучить тому что не на все вопросы есть ответ, что уж там нейросеть.
Sabin
13.04.2024 10:12Добавляя в запрос что-то вроде "если не знаешь - это нормально/скажи об этом" можно с высокой вероятностью получить именно такое признание на сложный вопрос, но это всё рано чистый рандом, абсолютно всю информацию от генеративных нейросетей надо проверять на достоверность
kentaskis
13.04.2024 10:12"Не в человеческом мозгу рождалась эта речь — в гортани. Извержение состояло из слов, но не было речью в подлинном смысле, это был шум, производимый в бессознательном состоянии"
peterjohnsons
13.04.2024 10:12У меня есть своё мнение по поводу причин галлюцинаций. Пока прочитал только заголовок, сейчас напишу свое мнение и пойду читать)
Какая функция LLM основная ? Меня недавно прям осенило. Основная функция состоит из двух процессов, которые выполняются одновременно. 1) Перевод текста из окна контекста во внутреннее представление, картину мира, но это не голая картина мира, она неразделима со вторым процессом. 2) Перевод внутреннего представления в будущий ответ.
И по сути LLM сводится к простому переводчику, он переводит с "языка" на котором к нему обратились в язык, которым он отвечает, через внутреннее состояние, которое оперирует концептуальным смыслом. Если убрать фазу перевода простого текста из затравочного контекста во внутренее представление, то роль LLM еще больше упрощается. LLM просто учится переводить между двумя языками, внутренего представления и человеческого текстового.
Для обычных переводчиков между разговорными языками достаточно понять правила перестановки, двузначности фраз и прочие ньюансы перевода. То для LLM стоит более сложная задача, найти связь, как связан затравочный текст с ответом. Получается сложный переводчик поставленных вопросов в осмысленные ответы.
Галлюцинации возникают по причине того, что внутренее представление не до конца точное, и не соответствует на 100% смыслу тексту затравки. Т.е. не хватает параметров для полного описания всех ньюансов смыслов, имеющихся в обучающем корпусе. В начале восхождения LLM заметили простой факт, тупо увеличивая количество параметров, получаем меньшее количество ошибок и более корректные ответы. Просто детализация внутренней картины миры становится более насыщенной. Это как в том меме, где чувак держит в пальцах маленький кусочек бумажки с картинкой и щурится)) Ведь другое дело, когда бумажка это полотно на всю стену, где не только общий смысл картины рассмотреть, но и увидеть мельчайшие обьекты вдалеке, которые теперь стали видны. И можно более подробно описать увиденное, а значит лучше понять смысл картинки.ps. Прочитал. Лучше автору не натягивать сову на глобус, тем более, если в тематике не совершенно не разбираетесь.
peterjohnsons
13.04.2024 10:12+1Добавлю отдельно, не успел во время дописать. Утрируя, когда параметров маловато, то несколько разных деталей ее внутренней картины мира модель не запоминает по отдельности (мало детализации), а запоминает некое усредненное значение. При попытке выудить из нее одну из этих конкретных деталей, она просто возвращает то усреднённое, разница между усреднением и конкретной деталью и есть та самая ошибка.
ArZr
13.04.2024 10:12Галлюцинации возникают по причине того, что внутренее представление не
до конца точное, и не соответствует на 100% смыслу тексту затравки. Т.е.
не хватает параметров для полного описания всех ньюансов смыслов,
имеющихся в обучающем корпусе. В начале восхождения LLM заметили простой
факт, тупо увеличивая количество параметров, получаем меньшее
количество ошибок и более корректные ответы.И это в общем случае неправда. Вот тут приведен пример, когда рост размера модели приводит к увеличению числа галлюцинаций. Да и отчёт OpenAI по GPT-3 (1) ясно показывает, что зависимость качества модели от размера не является монотонно возрастающей. То есть причина галлюцинаций лежит совсем в иной плоскости.
wataru
Да блин, очевидна причина этого явления. LLM генерируют по одному токену, предсказывая его по контексту так, что бы распределение токенов было похоже на то, что было видно в обучающей выборке. Никаких знаний или логики у нее нет. Когда выданный ответ совпадает с фактами, это называют удивительными способностями к дедукции. Когда не совпадает - галлюцинациями.
RigidStyle Автор
Если у них нет никаких знаний и логики, то тогда 98% не более чем НПС заскриптованные. В сравнении.