Генеративные текстовые модели, например — ChatGPT и GPT-4, кардинально изменили всё то, что происходит в области искусственного интеллекта (ИИ, AI, Artificial Intelligence).
GPT‑модели (Generative Pre‑trained Transformer, генеративный предобученный трансформер), похоже, донельзя снизили порог входа в сферу ИИ, сделав её доступной даже тем, кто весьма далёк от компьютерных технологий. Любой может просто начать спрашивать модель обо всём на свете и получать пугающе точные ответы.
По крайней мере — получать такие ответы почти всегда…
Когда модель не выдаёт правильный ответ — это не значит, что она не в состоянии это сделать. Часто нужно всего лишь изменить предлагаемое ей задание, или «промпт» (prompt, подсказка), таким образом, чтобы направить модель к верному ответу.
Это часто называют «промпт‑инжинирингом» (prompt engineering).
В основе многих приёмов промпт‑инжиниринга лежат попытки сымитировать то, как работает человеческое мышление. Отличные примеры имитации мышления людей — это когда моделям предлагают «подумать вслух» (think aloud ) или говорят: «давай продумаем этот вопрос пошагово» (let's think step by step).
Подобные аналогии между GPT‑моделями и человеческой психологией важны, так как они помогают нам понять то, как мы можем улучшить результаты работы таких моделей. Аналогии указывают нам на возможности, которых может не хватать моделям.
Это не значит, что я выступаю за то, чтобы любую модель воспринимали бы как носителя общего интеллекта. Но мне интересно наблюдать за тем, как и почему мы пытаемся сделать так, чтобы GPT‑модели «думали» бы как люди.
Многие аналогии между ИИ и человеком, с которыми вы встретитесь ниже, обсуждаются, кроме того, в этом видео. В нём Андрей Карпатный делится результатами увлекательных наблюдений за большими языковыми моделями, сделанными с психологической точки зрения. Это видео, определённо, стоит посмотреть.
Мне, как дата-сайентисту и психологу, очень близка эта тема. Мне чрезвычайно интересно изучать то, как ведут себя модели, то, какого поведения мы ожидаем от них, то, как мы подталкиваем модели к тому, чтобы они вели бы себя так же, как мы
Есть множество моментов, где аналогии между GPT-моделями и человеческой психологией приводят к интересным выводам. В этом материале мы обсудим следующее:
Подсказки. Побуждение к определённому поведению.
Подражание. Имитирование или заучивание внешнего поведения других сущностей.
Галлюцинации. Вспоминание того, что не существует.
Самоосознание. Что делает нас теми, кто мы есть?
Профессионализм. Является ли что-либо нашей силой, или нашей слабостью?
Память. Использование памяти для доступа к информации.
Внутренний монолог. Поиск своего внутреннего голоса.
Самостоятельность. Выполнение действий без соответствующих указаний.
Инструменты. Использование внешних инструментов для того, чтобы победить собственные слабости.
Сразу хочу предупредить о том, что разговор об аналогиях между GPT‑моделями и человеческой психологией несёт в себе риск антропоморфизации машин. Другими словами — риск очеловечивания моделей. Я, совершенно определённо, к этому не стремлюсь. Это — не материал об экзистенциальных рисках или об общем интеллекте. Это — скорее развлекательный проект, направленный на проведение параллелей между нами и GPT‑моделями. Если что — можете, не стесняясь, оценивать мои идеи с долей скептицизма.
Подсказки
Промпт, или подсказка — это описание того, что мы хотим от модели. Например: «Создай список из 10 названий книг».
Использование различных промптов в надежде на улучшение результатов работы модели — это и есть промпт‑инжиниринг.
В психологии есть множество различных методов побуждения людей к проявлению определённого поведения. Обычно это используется в прикладном анализе поведения (Applied behavior analysis, ABA) для изучения нового поведения.
???? GPT:
Для демонстрации некоего поведения используется промпт‑инжиниринг.
Побуждение выражается в явном виде.
???????? Человек:
Побуждение используется для изучения нового поведения.
Побуждение едва заметно, оно не выражается прямо.
Есть чёткое отличие между тем, как побуждение работает в GPT‑моделях, и тем, как оно работает в психологии. В психологии побуждение направлено на изучение нового поведения. То есть — чего‑то такого, чего человек раньше сделать не мог. А в случае с GPT‑моделью побуждение направлено на демонстрацию поведения, которое модель ранее не проявляла.
Главное различие тут лежит в том, что человек изучает что‑то совершенно новое и, в определённой степени, меняется как личность. А вот модель, в отличие от этого, уже способна показать желаемое поведение, но не сделала этого из‑за определённых обстоятельств, в частности — из‑за промптов. Даже когда пользователю удаётся успешно «извлечь» из модели необходимое поведение, сама модель от этого не меняется.
При работе с GPT‑моделями, побуждение, кроме того, выражается гораздо прямее, чем в случае с человеком. Многие подходы к составлению промптов ориентированы на передачу моделям как можно более точных инструкций (например: «Вы — учёный. Подготовьте реферат этой статьи», «You are a scientist. Summarize this article»).
Подражание
GPT‑модели — это подражатели. Они, и сравнимые модели, обучаются на целых горах текстовых данных и пытаются наилучшим образом воспроизвести то, чему научились.
???? GPT:
Подражают поведению, не понимая то, что делают.
Не учатся новому поведению автоматически, для обучения их чему‑то новому необходима специально проводимая тонкая настройка.
???????? Человек:
Подражает поведению, понимая смысл своих действий.
Автоматически изучает новые способы поведения.
Это значит, что когда модели задают вопрос — она пытается сгенерировать последовательность слов, которая наилучшим образом соответствует тому, что она видела в ходе обучения. Чем больше будет объём учебных данных — тем лучше эта последовательность слов будет соответствовать ожиданиям пользователя.
Но у GPT‑моделей нет собственных способностей к настоящему пониманию поведения, которому они подражают. Могут ли модели по‑настоящему рассуждать о чём‑то? Это, определённо, открытый вопрос, обсуждение которого часто вызывает жаркие дискуссии. Это относится и ко многим другим темам, поднимаемым в этой статье.
Хотя у людей есть собственные способности к подражанию чужому поведению, тут всё устроено гораздо сложнее, эти способности базируются и на социальных моделях, и на биологических системах. Мы склонны, до некоторой степени, понимать то, чему подражаем и легко можем обобщать то, что поняли.
Самоосознание
У людей имеется заранее сложившееся понятие о том, кто они такие, о том, как жизненный опыт повлиял на их формирование. Люди имеют некоторое представление об окружающем мире. У нас есть самоосознание.
У GPT‑моделей самоосознания нет. У них имеется множество знаний о мире, в котором мы живём, они знают о том, какие ответы нам могут подойти лучше, чем другие, но у них нет ощущения собственного «я».
???? GPT:
У моделей нет собственного представления о том, кто они такие.
Модели могут легко представать перед нами в виде множества различных личностей, точно воспроизводя их особенности.
???????? Человек:
У людей имеется собственное представление о том, кто они такие.
Человек имеет единственную личность, которая развивается со временем.
Модели не обязательно, как свойственно людям, подводятся к определённым точкам зрения. Модель, в плане самосознания — это чистый лист. Это значит, что, так как GPT‑модель обладает большим объёмом знаний о мире, у неё есть некоторые способности подражать поведению той личности, которая интересна пользователю.
Но, как всегда, это — лишь подражание поведению.
У такого положения дел есть один серьёзный плюс. Мы можем попросить модель сыграть роль учёного, писателя, редактора и так далее. А модель постарается действовать так, как характерно для конкретной роли. Когда модель ориентируют на имитацию поведения определённых личностей, это ведёт к тому, что результаты работы моделей оказываются лучше согласованными с теми задачами, которые им дают.
Профессионализм
Это — интересная тема. Есть много проектов по оценке больших языковых моделей на широком разнообразии тестов. Среди них — Hugging Face Leaderboard и Chatbot Arena Leaderboard.
Это — важные тесты, позволяющие оценить возможности моделей. Но то, что, например, я воспринимаю в виде сильной стороны некоей модели, вы можете счесть чем‑то не особенно важным.
???? GPT:
Нет собственного представления о своих сильных или слабых сторонах.
Может понять сильные и слабые стороны через промпт.
???????? Человек:
Имеет некоторое представление о своих сильных и слабых сторонах.
До человека сложно донести сведения о его сильных и слабых сторонах.
Это имеет отношение к самой модели. Даже если сообщить ей сведения о баллах, набранных ей в некоем тесте, она не будет знать о том, где, в сравнении с другими моделями, находятся её сильные и слабые стороны. Например, модель GPT-4 прошла экзамен по адвокатуре, что, в целом, можно рассматривать как большой «плюс» модели. Но модель может не понять того, что сам факт прохождения такого экзамена нельзя назвать «плюсом» в том месте, где собралась целая толпа опытных юристов.
Другими словами — считать ли что‑то сильной или слабой стороной модели — сильно зависит от обстановки в каждой конкретной ситуации. То же самое применимо и к людям. Я могу считать себя хорошим специалистом в сфере больших языковых моделей. Но если рядом со мной окажутся Эндрю Ын, Себастьян Рашка и другие специалисты мирового уровня, то мои знания в этой области вдруг окажутся не такими значительными, какими казались раньше.
Это важно из‑за того, что у модели нет интуитивного понимания того, что является её силой или слабостью. Поэтому ей нужно об этом сообщить.
Например, если вам кажется, что модель плохо решает математические уравнения, вы можете сказать ей, чтобы она выполняла бы все вычисления с использованием плагина Wolfram.
Но, в то же время, хотя мы и утверждаем, что у нас имеется некоторое представление о наших сильных и слабых сторонах, оно часто бывает субъективным и обычно является сильно предвзятым.
Инструменты
Как уже было сказано — GPT‑модели не знают в конкретной ситуации о том, в чём они хороши, а в чём — нет. Пользователь может помочь им сориентироваться в ситуации, добавляя в промпт соответствующие пояснения. Описывая ситуацию модели, мы подталкиваем её к выдаче более точных ответов.
Это не всегда и не во всех задачах способно серьёзно помочь моделям. Тут, как и у людей — описание ситуации помогает человеку, но не позволяет преодолеть все его слабости.
???? GPT:
Пользователь должен указать на необходимость применения внешних инструментов.
О полезности инструментов модели нужно сообщить заранее.
???????? Человек:
Без каких-либо указаний использует внешние инструменты.
Понимает полезность инструментов.
Люди же, когда встречаются с задачей, которую в текущей ситуации решить не могут, часто прибегают к неким инструментам для решения этой задачи. Мы, выполняя сложные вычисления, берём калькуляторы, а чтобы быстрее переместиться из одного места в другое, пользуемся автомобилями.
Модели не обращаются к внешним инструментам самостоятельно, в автоматическом режиме. Когда пользователь убеждён в том, что модель не способна решить какую-то задачу, ему нужно сказать модели о том, что она должна использовать конкретный внешний инструмент.
Тут важно учитывать то, что человек, решая свои ежедневные задачи, пользуется огромным количеством инструментов. Это, например — телефон, ключи, очки и многое другое. Если дать GPT-модели те же возможности — это может оказать ей грандиозную помощь. Человеческие инструменты похожи на плагины, которые публикует OpenAI.
Главная проблема тут в том, что описываемые модели не рассчитаны на автоматическое использование инструментов. Они обращаются к плагинам лишь тогда, когда пользователь сообщает моделям о том, что у них есть такая возможность.
Внутренний монолог
Обычно в голове человека звучит внутренний голос, с которым мы общаемся, решая сложные задачи. «Если я сделаю это, то результат будет таким, а если сделаю то — это может привести к лучшему решению задачи».
GPT‑модели не показывают подобные рассуждения в автоматическом режиме. Если модели задают вопрос — она просто генерирует некоторое количество слов, которые наиболее логичным образом формируют ответ на этот вопрос. Конечно, эти слова — результаты вычислений, но модель не использует эти слова для создания собственного внутреннего монолога.
???? GPT:
Нет естественного внутреннего монолога.
Две системы мышления: № 1 (основана на промпте) и № 2 (основана на цепочке пошаговых логических выводов).
Может демонстрировать сложные рассуждения.
???????? Человек:
Естественный внутренний монолог.
Две системы мышления: № 1 (быстрая, интуитивная) № 2 (медленная, логическая).
Может демонстрировать сложные рассуждения.
Если попросить модель «думать вслух», сказав ей: «Давай продумаем этот вопрос пошагово», то, как оказалось, это обычно немного улучшает ответ. Это называется «цепочкой пошаговых логических выводов» или «цепочкой мыслей». Так модель пытается сымитировать мыслительный процесс человека, ищущего ответ на тот же вопрос, который ей задали. Это не обязательно означает, что модели «рассуждают», но интересно посмотреть на то, насколько это улучшает результаты работы моделей.
И тут, в виде небольшого, но приятного дополнения, «внутренний диалог» модели ведётся не в её недрах. Он демонстрируется пользователю. В результате, если понаблюдать за тем, о чём именно думает модель, можно получить очень интересные сведения о её поведении.
Этот «внутренний голос» модели заметно проще, чем человеческий. Мы показываем себя гораздо более подвижными в «разговорах», которые ведём сами с собой, да и идут эти разговоры не так, как у машин. По своей природе это могут быть символические, моторные, или даже эмоциональные диалоги. Например, многие спортсмены представляют себя делающими упражнения, которые их интересуют, стремясь таким образом лучше подготовиться к реальному выполнению этих упражнений. Это называют «психическими образами».
Подобные беседы позволяют людям заниматься мозговыми штурмами. Мы используем их, чтобы находить новые идеи и ответы на вопросы, чтобы понимать обстановку, в которой возникают некие задачи. А GPT‑моделям, в отличие от нас, нужно прямо говорить о том, чтобы они искали бы решение задачи методом мозгового штурма. При этом нужно использовать особые инструкции для моделей.
Мы можем пойти дальше и связать это с первой и второй системами мышления. Система № 1 реализует автоматический, интуитивный, почти мгновенный процесс мышления. Мы очень слабо её контролируем. А, в отличие от неё, система № 2 — это сознательное, медленное, логическое мышление, требующее значительных усилий.
Давая GPT‑модели возможность саморефлексии, мы, по сути, пытаемся сымитировать то, как работает наша система мышления № 2. У модели уходит больше времени на генерирование ответа, она тщательно его продумывает, вместо того, чтобы быстро выдать ответ.
Грубо говоря, получается, что, не используя промпт‑инжиниринг, мы включаем систему мышления модели № 1, а предлагая модели задействовать «цепочку мыслей», мы включаем систему мышления № 2.
Если вам интересны подробности о первой и второй человеческих системах мышления — вот отличная книга на эту тему.
Память
Андрей Карпатный, в вышеупомянутом видео, сделал интересное сравнение возможностей памяти человека и памяти GPT‑модели.
Наша память устроена довольно сложно. У нас есть долговременная память, рабочая память, кратковременная память, сенсорная память и другие виды памяти.
???? GPT:
Отличная долговременная память.
Рабочая память — это промпт.
Имитация сенсорной памяти путём обучения моделей на мультимодальных данных.
Внешняя память, представленная векторными базами данных, используемая для поиска информации.
???????? Человек:
Долговременная память может ослабевать со временем.
Сохраняется часть рабочей памяти.
Сенсорная память извлекается из наших чувств.
Внешняя память поддерживается подсказками из окружающей среды.
Можно, очень приблизительно, выделить в памяти GPT‑модели четыре компонента:
Долговременная память.
Рабочая память.
Сенсорная память.
Внешняя память.
Сравним это с тем, что есть у человека.
Долговременную память GPT‑модели можно представить в виде чего‑то такого, что модель запомнила после обучения на огромных объёмах данных. Эта информация, до определённой степени, представлена внутри модели. То, что хранится в этой памяти, модель способна отлично воспроизводить, делая это всегда, когда ей это нужно. Подобная долговременная память будет сопутствовать модели в течение всего времени её существования. А человеческая долговременная память, в отличие от машинной, может со временем угасать. Существует так называемая «теория распада», описывающая это явление.
Долговременная память GPT‑модели совершенна, она не ослабевает со временем.
Рабочая память GPT‑модели — это всё то, что входит в состав промпта, который передал ей пользователь. Модель может полностью использовать эту информацию для выполнения вычислений и для выдачи ответа. Это — отличная аналогия с человеческой рабочей памятью, так как это — память, ёмкость которой ограничена и которая предназначена для временного хранения информации. GPT‑модель, например, «забудет» промпт после того, как выдаст ответ. Причина, по которой возникает такое ощущение, что модель помнит содержание длительной беседы с ней, заключается в том, что модели, вместе с промптом, передаётся и история беседы.
Если говорить о новой информации, то GPT-модели её не запоминают.
Сенсорная память имеет отношение к тому, как мы храним информацию, полученную от наших органов чувств. Это может быть визуальная, звуковая, тактильная информация. Мы используем эту информацию и передаём её в нашу краткосрочную, или рабочую память для обработки. Это похоже на то, как устроены мультимодальные GPT-модели, которые работают с текстом, с изображениями и даже со звуками.
Но, вероятно, лучше будет сказать, что у GPT-моделей имеется мультимодальные рабочая и краткосрочная память, чем говорить о сенсорной памяти. В этих моделях различные формы «памяти» тесно связаны с различными видами данных. Поэтому в данной ситуации модели скорее имитируют сенсорную память людей. Мы уже встречались с чем-то подобным.
GPT-модель имитирует сенсорную память человека через мультимодальные процедуры обучения.
И наконец — GPT-модели становятся гораздо мощнее, когда им дают доступ к внешней памяти. Под внешней памятью мы понимаем базу данных с информацией, к которой модель может обращаться всегда, когда ей это нужно. Это можно сравнить, например, с наличием «под рукой» у модели нескольких книг по физике. Люди же, в отличие от моделей, используют в качестве внешней памяти подсказки, находящиеся в окружающей среде. Они помогают нам вспоминать определённые идеи и ощущения. Это, в некоторой степени, больше похоже на обращение к внешней информации, а не на вспоминание внутренней информации.
Обратите внимание на то, что я не говорил выше о кратковременной памяти. Дело в том, что вопрос о том, являются ли кратковременная и рабочая память одним и тем же видом памяти — это вопрос дискуссионный. Часто разницу между ними усматривают в том, что рабочая память отвечает не только за кратковременное хранение информации, но и за работу с этой информацией. Кроме того, понятие «рабочая память» лучше подходит для сравнения человека и GPT-моделей, поэтому тут я позволил себе выбрать то, что мне больше понравилось.
Самостоятельность
Мы уже об этом говорили: если нужно, чтобы GPT‑модель что‑нибудь сделала — ей надо об этом сказать.
Это — важное замечание, так как оно имеет отношение к чувству самостоятельности. Человеку свойственен определённый уровень самостоятельности. Например, если я решу пропустить стаканчик — я могу это сделать.
???? GPT:
Не могут действовать самостоятельно, но такое поведение можно смоделировать (AutoGPT).
Самостоятельное поведение жёстко ограничено.
???????? Человек:
Людям присуща возможность действовать самостоятельно.
Самостоятельное поведение является гибким.
Люди отличаются от GPT‑моделей тем, что последним не свойственна самостоятельность. Модели не могут работать независимо, если им не дали необходимых инструментов и не поместили их в подходящую среду.
Дать GPT‑модели самостоятельность можно, предложив ей создать несколько задач, которые нужно выполнить для достижения определённой конечной цели. Для каждой задачи модель расписывает шаги, необходимые для её завершения, размышляет над ними и выполняет их в том случае, если у неё есть необходимые инструменты.
AutoGPT — это отличный пример того, как GPT-модели была дана самостоятельность.
В результате то, на что способна модель, сильно зависит от окружения. Вероятно — сильнее, чем то, на что способны люди, зависит от того, что окружает нас. А окружающая среда влияет на нас довольно сильно.
Это, кроме того, означает, что, хотя GPT-модели способны показывать впечатляющие образцы сложного самостоятельного поведения, то, что может сделать модель, ограничено. Модель не может решить использовать инструмент, о существовании которого мы никогда ей не говорили. Люди лучше приспосабливаются к новым и ранее неизвестным им инструментам.
Галлюцинации
Обычная проблема GPT-моделей заключается в том, что они способны с уверенностью сгенерировать откровенную неправду, или что-то такое, чего не было в данных, на которых их обучали.
Например, когда GPT-модель просят сообщить некие фактические данные, вроде дохода Apple за 2019 год, она может выдать информацию, не имеющую отношения к действительности.
Это называют галлюцинацией.
Данный термин, применяемый в сфере ИИ, появился из психологии, где галлюцинация — это когда человек, например, полагает, что точно что-то видит, а на самом деле это не так. Главная разница между машинными и человеческими галлюцинациями заключается в том, что человеческие галлюцинации основаны на восприятии, а модели «галлюцинируют» некорректными фактами.
Возможно, уместнее будет сравнить такое поведение моделей с ложными воспоминаниями. У людей такие воспоминания наблюдаются тогда, когда они вспоминают что‑то не таким, каким оно было на самом деле. Это похоже на то, как GPT‑модель пытается воспроизвести что‑то такое, чего никогда не было.
???? GPT:
Имеет склонность к уверенному генерированию фактически некорректной информации (галлюцинация).
Промпты воздействуют на силу галлюцинации.
???????? Человек:
Имеет воспоминания о том, что никогда не происходило (ложные воспоминания).
Неявные предположения способны вызвать ложные воспоминания (пресуппозиция).
Интересно то, что людям легче создавать ложные воспоминания, когда в дело идут внушаемость, прайминг, фрейминг и прочее подобное. Такое ощущение, что это ближе соответствует тому, как «галлюцинируют» GPT‑модели, так как получаемые ими промпты очень сильно на них влияют.
Наши воспоминания тоже могут подвергнуться влиянию подсказок или фраз, которые мы слышим от других. Например, кому‑то задают вопрос: «Какого оттенка красного была эта машина?». В этом вопросе человеку неявным образом сообщают предполагаемый «факт». А именно — то, что машина была красная, даже если она таковой не была. Это может привести к созданию ложных воспоминаний и известно как пресуппозиция.
О, а приходите к нам работать? ???? ????
Мы в wunderfund.io занимаемся высокочастотной алготорговлей с 2014 года. Высокочастотная торговля — это непрерывное соревнование лучших программистов и математиков всего мира. Присоединившись к нам, вы станете частью этой увлекательной схватки.
Мы предлагаем интересные и сложные задачи по анализу данных и low latency разработке для увлеченных исследователей и программистов. Гибкий график и никакой бюрократии, решения быстро принимаются и воплощаются в жизнь.
Сейчас мы ищем плюсовиков, питонистов, дата-инженеров и мл-рисерчеров.
Комментарии (3)
D03ER
10.07.2023 18:46А что если мы возьмём основную генерацию чего-либо похожего на AutoGPT за внтренний монолог, а вывод будет фильтровать или преобразовывать другая более простая нейросеть, которая будет давать оценку внутреннему монологу, проверять факты, которые нагаллюцинировал внутренний монолог и т.д.?
0pauc0
Прямо с названия лёг... А что, бывает не человеческая психология?
"Имеет склонность к уверенному генерированию фактически некорректной информации (галлюцинация)" - по моему, так описывать результаты работы GPT терминами, применимыми к этике и поведению человека - заблуждение. А у дельфинов бывают галлюцинации? Они же хоть и не люди, но совсем млекопитающие...
shaggyone
Например бывает зоопсихология.