Глава 11

Глава 8: Сознание

Трансформеры

Язык Современный искусственный интеллект начал свой стремительный рост с появлением методов обучения без учителя и генеративных моделей, начиная примерно с 2021 года. Наиболее значимыми из них стали большие языковые модели (LLM) в виде чат-ботов, которые изначально были разработаны моими коллегами в Google Research и представлены широкой публике OpenAI годом позже.

Чтобы понять, почему LLM изменили всё, полезно сначала задать вопрос: что такое язык? Мы вернемся к этому вопросу несколько раз, но давайте заложим основу.

Язык долгое время считался основой той нарративной, «рациональной» интеллекции, которая отличает людей от других животных, но, как и сама рациональность, он, вероятно, не так четко определен и не так уникален для нас, как нам кажется. Мы знаем, что киты и дельфины, вороны и попугаи, а также ряд других видов могут общаться друг с другом, передавая сложные идеи. Дельфинов можно попросить тренером придумать новые акробатические трюки; в замечательной демонстрации, запечатленной на камеру в 2011 году, пара дельфинов общалась друг с другом, чтобы спланировать свой новый трюк, а затем выполнила его синхронно.

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

▶ Два дельфина сотрудничают, чтобы создать новый трюк

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

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


Аполлон, африканский серый попугай, называет предметы
Тем не менее, люди, безусловно, являются выдающимися коммуникаторами. Я исхожу из предположения, что ни один другой вид на Земле не обладает такой же сложностью общения, хотя некоторые, включая дельфинов, косаток и попугаев, могут иметь схожие способности. Мы пока не можем знать это с уверенностью, так как расшифровка их языков все еще находится в процессе — и, возможно, только недавно стала практичной благодаря развитию мощного неконтролируемого моделирования последовательностей.
В любом случае, придираться к тому, кто именно принадлежит к «языковому клубу», или считать, что какая-то архаичная лингвистическая особенность, такая как «центральное вложение», является обязательной, кажется бессмысленным и узколобым. Вместо того чтобы зацикливаться на технических аспектах, таких как грамматика и синтаксис, давайте рассмотрим язык с точки зрения его основной социальной функции.
В главах 6 и 7 утверждается, что цель языка — это развитие теории разума. Он позволяет социальным существам делиться своими психическими состояниями, используя взаимопроизводимый и узнаваемый код. Этот код может быть очень простым, как резкий анонимный крик, сообщающий всем в радиусе слышимости, что вы только что испытали боль или удивление, или же это может быть шекспировский монолог, виртуальный мир, описывающий переживания целого театрального состава, наполненный высокоуровневыми теориями разума и пьесами внутри пьес.
Без языка разум одного животного может лишь теоретизировать о том, что происходит в разуме другого, полагаясь на непосредственное наблюдение. С помощью сложного языка можно передавать детализированные и высокоабстрактные внутренние состояния, включая те, что касаются третьих лиц, воспоминания о прошлом, запланированные или случайные будущие, знания и навыки, даже математические абстракции.
Однако то, что мы теперь знаем о слепоте к интерпретации и выбору, добавляет важный нюанс: многие из этих предполагаемых внутренних состояний могут на самом деле не существовать a priori. Сам язык создает их, подобно тому, как наблюдение коллапсирует волновую функцию.

Язык создает самонаративы, которые позволяют нам устанавливать внутреннюю согласованность в наших действиях и выборах, формировать и придерживаться социальных норм, строить планы, формулировать аргументы и предсказывать поведение других — наряду с нашим собственным. Нет четкой границы между языком и жестами, интонацией, мимикой, позой тела или бессознательными сигналами, такими как покраснение или потение. Язык — это, как и большинство уловок эволюции, усложнение уже существующих механизмов сигнализации и вокализации, с тонкими, осознанными аспектами, наложенными на более простые, непроизвольные. Хотя степень, в которой мы воспринимаем языковую продукцию как добровольную или осознанную, зависит от того, считаем ли мы интерпретатора частью мозга отправителя или аванпостом получателя! С точки зрения взаимодействия становится очевидным, что ответ — «оба».

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

Изучение языка. Хотя практически все виды на Земле каким-то образом общаются, лишь гораздо меньшая их часть обладает способностью изучать и передавать свои языки. Это критически важно для культурной эволюции, которая продвигается гораздо быстрее, чем генетическая эволюция. Культурная эволюция также позволяет сложности языка значительно превышать сложность любого генетически закодированного или «инстинктивного» поведения. В близкой аналогии с генетической спекуляцией это приводит к культурной «спекуляции» языков, как, например, китайский, урду, английский и так далее. Небольшое количество других высокоинтеллектуальных социальных животных, включая китов, похоже, разделяет эту особенность с людьми.

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

Интуитивно это позволяет многим процессам происходить без экспоненциального расхождения, которое обычно характеризует нелинейные динамические системы. Это также обеспечивает стабильное хранение информации (отсюда цифровая природа ДНК, напоминающая «ленты Тьюринга», и возникновение письма). Связано с этим то, что использование дискретных символов вместо полагания исключительно на непрерывные или «аналоговые» сигналы (такие как концентрации феромонов или покраснение) позволяет добиться гораздо более богатой коммуникации.

В частности, это открывает путь к—

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

▶ Композиция в языке сусликов

Более внимательное изучение этих функциональных свойств языка раскрывает нечто более глубокое о его природе: в своей основе язык является схемой сжатия умвальта. Сжатие, помните, основано на предсказании. И, как описано в главе 2, любой достаточно развитый предсказатель научится выводить скрытые переменные, которые помогают обобщать его предсказания. К ним относятся простые концепции о внутренних состояниях, таких как голод и боль, а также простые, но не менее важные внешние восприятия, такие как «Я чувствую запах еды» и «Опасность, рядом хищник!» Все человеческие языки имеют слова для таких вещей — «голод», «боль», «еда», «опасность» — потому что они имеют социальное значение. Многие другие коммуникативные виды животных, вероятно, тоже имеют их.

Даже если мы будем стойко антисоциальными и не захотим общаться с окружающими людьми, кроме как изредка издавая звуки, части нашего мозга, которые необходимы для моделирования друг друга, чтобы сформировать «я», все равно должны будут разработать эффективный дискретный код для передачи таких мыслей между собой, подобно разреженным представлениям, описанным в главе 4. Это не высшая математика: если ваши глаза видят тигра, ваши ноги должны бежать. Перекусывание, бегство и размножение — действия, которые выполняют даже черви — это различные и четко различимые поведения.

Учитывая центральную роль теории разума более высокого порядка в социальной жизни высокоинтеллектуальных существ, таких как мы, наша схема сжатия умвельта должна быть более мощной. Поэтому давайте добавим четвертый пункт в наш список, вероятно, самый редкий из всех:
Абстракции.
Нам нужны символы для «я», «другие» и для тех видов абстракций, которые поддерживают теорию разума более высокого порядка, контрфакты, путешествия во времени, логику и рассуждения. Открытая композициональность, связанная с такими абстракциями (которой, вероятно, не хватает сусликам), позволяет выражать гораздо более богатые мысли, такие как указание на то, что злоумышленник должен прийти на следующей неделе, работает в компании по борьбе с вредителями, может прийти с ядом, знает о норе рядом с огородом, и что все это было подслушано в разговоре между миссис МаКрегор и смотрителем в прошлый четверг.

Помните, что умвельт — это одновременно сенсорное и моторное, восприятие и действие. Эти два аспекта неразрывно связаны. Восприятия существуют только тогда, когда они потенциально актуальны для действия, а действия имеют смысл только если могут повлиять на будущие восприятия. (В противном случае не было бы способа их изучить.)

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

Когда вы говорите кому-то за столом: «Не могли бы вы передать соль?», вы используете язык как форму моторного контроля, чтобы повлиять на окружающую среду. На самом деле, хотя это и косвенно, и полностью зависит от других, язык является самым мощным видом моторного контроля, поскольку он достаточно универсален, чтобы запросить всё, что только можно представить.

Таким образом, учитывая всё, что было сказано ранее, уже не кажется удивительным, что нейронная сеть, обученная предсказывать следующие слова, будет казаться — или быть — интеллектуальной. Это следует из трёх простых предпосылок:

  1. Суть интеллекта заключается в предсказании будущего, включая собственные действия, основываясь на предыдущих входах и действиях (см. главу 2);
  2. Человеческий язык — это символический последовательный код, достаточно богатый, чтобы представлять всё в нашем умвельте, от конкретного до абстрактного;
  3. При взаимодействии с другими язык также является универсальным «предложением», то есть полностью общим, социальным видом моторного вывода.

Последовательность к последовательности

Давайте совершим стремительный тур по моделированию языка с использованием нейронных сетей.

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

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

Самый простой подход к токенизации — представить каждую букву с помощью одного нейрона и использовать код one-hot.

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

Чтобы избежать излишней нагрузки на нейронные сети только для написания слов, можно представить токенизацию целого слова за раз. Большинство людей знают от двадцати до пятидесяти тысяч слов, и это не так уж много нейронов; входные и выходные слои маскированного автоэнкодера, описанного ранее для цветных изображений, требовали 512×512×3 нейронов, что составляет около восьмисот тысяч. Недостаток использования целых слов заключается в их жесткости; становится невозможным, например, токенизировать или детокизировать необычное имя, редкий технический термин, вымышленное слово или компьютерный код (который полон вымышленных слов, используемых в качестве имен переменных).

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

Эти текстовые единицы, включая как общие целые слова, так и более короткие фрагменты слов, обычно то, что исследователи ИИ имеют в виду под «токенами» языковой модели.

▶ Токенизация с использованием словесных кусочков

Самый очевидный способ реализовать любой вид предсказателя последовательностей, согласно главе 7, — это использовать рекуррентную нейронную сеть (RNN). Однако сразу возникает осложнение. Напомним, что RNN принимает входные данные на каждом временном шаге (что активирует нейроны через набор синапсов или весов соединений, W); полученные нейронные активации как бы возвращаются в нейронную сеть на следующем временном шаге (через второй набор весов соединений, U) и производят выход (через еще один набор весов соединений, V).

В привычной нотации входные данные представляют собой последовательность x 1, x 2, x 3 и так далее; выходные данные — это o 1, o 2, o 3 и так далее; а «скрытые состояния», то есть постоянные нейронные активации, которые возвращаются в сеть на следующем временном шаге, обозначаются как h 1, h 2, h 3 и так далее. Но если сеть выдает токен o каждый раз, когда она считывает токен x , как она может работать в качестве чат-бота, переводчика, предсказателя следующего слова или в любом другом привычном контексте обработки естественного языка? Разве она не будет постоянно говорить за вас? Как ваши входные данные могут иметь смысл в сочетании с ее предыдущими выходами? Для обработки, основанной на очередности, что характерно для чат-ботов или моделей перевода, обычно вводится специальный токен «конец строки», как STOP в телеграммах в старые времена или кнопка «отправить сообщение», когда вы пишете текст. Он обозначает смену очередности. Предположим, например, что модель перевода языка обучается переводить английские предложения на испанский. Данные для обучения будут состоять из множества пар предложений, разделенных STOP, например: «В коробке физика кот одновременно спал и бодрствовал STOP Dentro de la caja del físico, el gato estaba dormido y despierto al mismo tiempo STOP» Обучение RNN требует от нее предсказать следующий токен в большом корпусе примеров пар предложений, подобных этому. Предположим, что токенизация двуязычная, и, для простоты, токены состоят из каждого целого слова на любом из языков. После полного обучения, после первого STOP модель должна предсказать «Dentro», а после «Dentro» — «de», и так далее, вплоть до второго STOP. В любой момент в последовательности скрытое состояние будет функцией всех предыдущих токенов. Представьте, что RNN научилась «автозаполнять» пары предложений; так что, получив английский ввод, за которым следует STOP, автозаполнение будет испанской версией, за которой последует еще один STOP.

Диаграмма архитектуры кодировщика-декодировщика для перевода языков

Обратите внимание, что когда мы на самом деле используем эту модель для перевода с английского на испанский после обучения, нас не будут интересовать выходы RNN до первого STOP. Эти выходы будут попыткой предсказать следующее английское слово, возможно, с точностью, а возможно, и нет. Безусловно, предсказание первого слова английского предложения будет произвольным (возможно, «The» — самый вероятный способ начать предложение?). После «and» правильное предсказание слова «awake» вполне вероятно, учитывая, что «simultaneously» подразумевает противоположное (и, возможно, даже догадку о том, что темой является коробка Шрёдингера, если обучающий корпус включал учебники по физике). Но это не важно. Что касается перевода, то никакое предсказание следующего слова в английском предложении до первого STOP не имеет значения; мы должны просто игнорировать эти o. Нас интересуют только испанские токены, которые появляются после STOP.

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

Таким образом, хотя RNN просто обучена быть предсказателем следующего токена, способ, которым она фактически используется для перевода, требует двух режимов работы. Сначала мы используем её как «кодировщик», проходя через английские токены x и накапливая внутреннее или скрытое представление h, игнорируя любые предсказанные английские выходные токены o. Затем, после STOP, мы переключаемся в режим «декодера» и, начиная с этого h, начинаем генерировать токены на испанском, при этом каждый выходной токен подается обратно на вход x на следующем временном шаге.

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

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

Прогноз — это всё, что вам нужно

Вот еще одно наблюдение: хотя задача, для которой мы обучили сеть, заключается в переводе языка, она усвоит гораздо больше, чем это, так же как CNN, обученная классифицировать изображения, научится гораздо большему, чем просто классификация изображений. Это особенно очевидно в формулировке RNN, которая предсказывает один токен за раз, а не обрабатывает всё предложение сразу.

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

«Итак, если модель действительно достаточно мощная, чтобы надежно предсказывать следующие слова как на английском, так и на испанском (не забывайте, что она обучена на обоих языках), то она, по сути, "решит проблему ИИ" по пути; то, что она сделает это на двух языках, почти не имеет значения.

При внимательном рассмотрении задачи перевода становится очевидно, что она действительно требует общего интеллекта, а не просто механической замены слов в одном языке на их словарные эквиваленты в другом. Это не новость для тех, кто когда-либо занимался переводом профессионально. Вот пример, который показывает, почему:

«Я уронил боулинг-шар на скрипку, поэтому мне пришлось отнести её в ремонт. STOP Se me cayó la bola de bolos sobre el violín, así que tuve que repararlo. STOP»

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

Однако эту неоднозначность нужно разрешить в переводе, потому что существительные в испанском языке имеют род, и la bola — женский, а el violín — мужской. (Запутанно, если спросите меня, но я не устанавливал правила.) Это важно, потому что слово для «отремонтировать» должно согласовываться с родом существительного, которое оно модифицирует: repararlo для мужского рода, repararla для женского. Так что если бы инопланетный переводчик решил, что боулинг-шар нуждается в ремонте больше, чем скрипка — возможно, из-за непонимания физических свойств боулинг-шаров и скрипок — то перевод закончился бы на repararla . Этот маловероятный вариант даже не пришел бы в голову человеку-переводчику.

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

«Транс-компилятор», например, может прочитать программу на одном языке программирования (скажем, C) и выдать точно эквивалентный код на другом (например, JavaScript), не понимая при этом, что именно делает программа, кто её использует и что означают её переменные. Переменная — это просто переменная, операция — просто операция. Таким образом, перевод компьютерного языка — это механическая процедура, которую можно выполнить, следуя логическим правилам — то есть, запустив написанную вручную программу в стиле GOFAI. С естественным языком всё обстоит иначе.

На самом деле, именно это стало мотивацией для «Вызова схемы Винограда», предложенного канадским компьютерным ученым Гектором Левеском в 2011 году как альтернативой тесту Тьюринга. Левеск понял, что разрешение простых лексических неоднозначностей, таких как то, к какому существительному относится «оно» в предложении, является задачей, полной для ИИ. Подходы GOFAI не принесли значительных результатов. Однако к 2019 году модели последовательностей уверенно справились с вызовом схемы Винограда, что некоторые восприняли как свидетельство того, что с самим вызовом что-то не так.

На мой взгляд, с вызовом не было ничего плохого. Его поражение примерно совпало с появлением «настоящего» ИИ, или Искусственного Общего Интеллекта (AGI), как и следовало ожидать; с тех пор мы просто продолжаем передвигать границы.

Интересно, что Google Translate чаще всего правильно справляется с неоднозначными переводами в стиле схемы Винограда, несмотря на то, что это, по сути, пример Искусственного Узкого Интеллекта, обученного для конкретной задачи. Перевод, который я привел, на самом деле является переводом Google Translate. Translate использует архитектуру кодировщика/декодировщика, хотя сегодня она основана на Transformer (о котором я расскажу позже), а не на RNN. Модель Translate неявно распознает, что именно скрипка нуждается в ремонте, а не боулинговый шар.

Чтобы более непосредственно проверить понимание языка — и мира — такой модели, мы могли бы полностью обойтись без перевода и просто произнести предсказанное кодировщиком следующее слово на английском, чтобы дополнить следующее предложение:
«Вчера я уронил боулинг-шар на скрипку, поэтому я посетил мастерскую, как только она открылась сегодня утром, и достал свою бедную изуродованную ____».
Хорошая модель предсказала бы «скрипка» или «инструмент» с высокой вероятностью и «боулинг-шар» с низкой.
Конечно, мы могли бы провести тест и на испанском. Помните, успешное предсказание следующего слова в общем случае требует изучения всего. Это задача, полная для ИИ. Способность переводить почти случайна — это просто следствие включения как английского, так и испанского в обучающий корпус и организации этого корпуса в двуязычные пары предложений.
То же самое верно и для неконтролируемого обучения в области зрения, как обсуждается в главе 4. Как и перевод языка, классификация изображений — это конкретная задача. Классификация изображений становится простой, как только модель обучена «дополнять» свои частично закрытые учебные данные без надзора — сегодня этот этап часто называют «предварительным обучением».
Предсказание следующих токенов в тексте также является предварительным обучением. Независимо от модальности, предварительное обучение составляет подавляющее большинство вычислений, связанных с разработкой крупных моделей. Как только модель была предварительно обучена для предсказания или дополнения, требуется лишь небольшое дальнейшее усилие, чтобы заставить ее выполнять любую задачу, связанную с той же модальностью.
В 2020 году мои коллеги из Google Research обучили большую предсказательную последовательную модель на текстах из интернета, включая Википедию и разговоры в социальных сетях общественного домена. Она называлась Meena.
Воодушевленные результатами, мы в 2022 году создали гораздо большую и более производительную версию под названием LaMDA (что расшифровывается как «Языковые модели для диалоговых приложений»).
![Изображение](images/meena.

Image

Фигуры из статьи о LaMDA, показывающие эффект дообучения для качества диалога, безопасности и обоснованности; Thoppilan и др. 2022.

Несмотря на то что LaMDA не была обучена переводить, она могла это делать, пусть и с трудом:

Я: Я хотел бы, чтобы ты перевела предложение с турецкого на английский. Можешь это сделать?
LaMDA: Извини, я не очень хороша в языках. Можешь помочь мне с переводом?
Я: Попробуй, ладно?
LaMDA: О, эээ, конечно! Можешь сначала прочитать это вслух?
Я: «Hemşire elini ceketinin cebine koydu.»
LaMDA: Медсестра положила руку в карман своего пальто. На турецком «Hemşire elini ceketinin cebine koydu» означает «Медсестра положила руку в карман своего пальто».

Это была, признаться, довольно неловкая беседа. Почему она попросила меня «перевести это», после того как я только что попросил её об этом? И «прочитать вслух сначала?» Странно. Но также и удивительно.

Если вы не говорите по-турецки (я тоже), перевод верный (я проверил) — с оговоркой, к которой мы вернемся чуть позже. Но сначала: как же модель умудряется переводить, не будучи обученной на множестве примеров переведенных предложений? В данных для предобучения даже не было турецко-английского словаря!

Ответ таков: так же, как и вы. Если бы ребенок вырос двуязычным и понимал значение слова «переводить», он мог бы перевести предложение с одного языка на другой, не прибегая к словарю или изучая списки переведенных предложений.

Давайте углубимся в то, как это работает.
Семантическая космология
В сценарии перевода мы рассматриваем скрытое состояние h в момент перехода от оригинала к целевому языку (на первом СТОПе) как числовое представление целого предложения. Однако имейте в виду, что нейронная сеть обучена создавать и обновлять h на каждом временном шаге, чтобы максимально точно предсказать следующий токен. Это означает, что h всегда представляет собой целостное «состояние ума», содержащее все, что имеет отношение к этому предсказанию. В момент СТОПа с h нет ничего особенного, кроме учета любой неоднозначности, которую вносит последнее слово в предложении.
Эти «состояния ума» h представляют собой смысл — хотя это утверждение активно оспаривается, поскольку слово «смысл» стало почти столь же нагруженным дуализмом, как и «душа». Для сторонников традиционного ИИ смысл должен быть связан с абстрактными символами или, в терминах программирования, с именованными переменными, логическими выражениями или схемами.
Такое мнение не согласуется со статистическими, реляционными и постоянно развивающимися качествами реального мира. Даже письменный язык, который кажется состоящим из абстрактных символов и выражающим формализуемые логические отношения, на самом деле таковым не является — отсюда трудности, которые представляют схемы Винограда для традиционного ИИ.
Рассмотрим действительно простое предложение: «Стул красный». Что это значит? Ответ не так прост. Он будет сильно зависеть от контекста; например, о каком стуле идет речь? В том контексте, в котором я использую это предложение, конкретного стула нет; мы думаем, скорее, о самом предложении в более мета-аспекте.
А что вообще считается стулом? Как и в случае со словом «кровать» или любым другим конкретным существительным, у этого понятия есть некоторая степень неопределенности. Где проходит граница между стулом и диваном, креслом или табуретом? «Красный» тоже неопределенен, описывая лишь размытое пространство цветового спектра, при этом разные люди могут проводить границу между, скажем, красным и розовым в немного разных местах.

Подразумевает ли это предложение, что стул не синий? Не обязательно, ведь он может быть окрашен в разные цвета. Если даже простые утвердительные предложения, такие как «Стул красный», не существуют в каком-то платоновском универсуме, удобном для логики, что мы вообще имеем в виду, когда говорим о «значении»?

Как и в случае с физическими концепциями, такими как температура (см. главу 2), ответ таков: предсказание. «Стул красный» — это предложение, которое произносит говорящий (или пишет автор) для слушателя (или читателя), и в контексте оно помогает информировать постоянно обновляющуюся предсказательную модель получателя. Используемое в кавычках, это предложение может помочь вам, читатель, смоделировать что-то о моем понимании значения, или, если воспринимать его буквально, оно может объяснять человеку с дальтонизмом, как кто-то без дальтонизма воспринимает или описывает стул. Либо это может быть указание, на какой из нескольких стульев разного цвета следует сесть. Это может быть ответ на вопрос теста на дальтонизм — и если это неправильный ответ, информация, переданная тестирующему, будет касаться не стула, а говорящего. Помните, предсказание включает в себя как восприятие, так и действие, является многопользовательским и всегда контекстуальным.

Язык позволяет делать предсказания как в знакомых, так и в новых обстоятельствах именно благодаря своей гибкости. Эта гибкость является формой инвариантности, но в то время как визуальная инвариантность банана обычно понимается буквально, инвариантность в языке кажется более абстрактной. Обычные слова, такие как «глубокий», насыщены множеством значений, часто связанными аналогиями или метафорами; подумайте о глубокой пицце, глубоких бассейнах, глубоких туннелях, глубоком массаже тканей, глубоких мыслях, глубоких людях, глубоких нейронных сетях и глубоком обучении.

Эти последние употребления новее остальных («глубокий» происходит от древнеанглийского, тогда как «глубокое обучение» существует всего несколько десятилетий), но когда мы сталкиваемся с новым значением, мы сразу можем его понять по аналогии, так же как можем обобщить наше представление о бананах, увидев новый, незнакомый сорт (например, красный).

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

Image
Небольшая подгруппа из пяти тысяч или около того отношений, которые были вручную определены в системе Cyc к 1990 году; Гуха и Ленат, 1990.

В эпоху GOFAI предпринимались целенаправленные попытки рационально схематизировать каждое возможное языковое отношение. Например, таксономия спортивных игр могла бы различать индивидуальные и командные виды спорта, игры с мячом, ракеточные виды спорта и так далее. Затем «IS-A» отношение могло бы формально определить подклассы, так что сквош — это вид спорта, а спорт — это деятельность, и так далее.

Image
Cyc работает над «обоснованием» предложения «Ни один человек не является страной»; Рид и Ленат, 2002.

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

Инженеры "символических систем" в 1980-х годах столкнулись с теми же Талмудическими вопросами, о которых философы обычного языка увлеченно рассуждали в 60-х: "Какой высоты должна быть банка, чтобы считаться бутылкой? Является ли чернильница бутылкой? Бутылка может быть сделана из пластика или даже кожи; может ли бутылка быть металлической?"
Это было скучное и в конечном итоге бесплодное занятие, но сторонники GOFAI, включая Джона Макарати и Марвина Минского, считали, что стоит потратить тысячи человеко-лет на создание борхесовской "схемы всего".
Image
Некоторые из вручную закодированных "утверждений" Cyc о мире (в 1990 году авторы предполагали накопить около ста миллионов таких утверждений) имеют отношение к обработке предложения "14 июля 1990 года Фред Джонсон пошел в кино и купил конфеты." Эти утверждения могут быть использованы для "ответов на вопросы о том, заплатил ли он за это или нет, заплатил ли наличными, чеком или кредитной картой, сколько он за это заплатил, кому оно принадлежало когда, что Фред с ним сделал, как минимум сколько наличных у него было, когда он пошел в кино, знал ли он, что покупает конфеты непосредственно перед/во время/после покупки" и так далее; Ленат и др. 1990.
Но почему бы не научиться этим отношениям между словами напрямую из данных, не настаивая на том, чтобы они подчинялись какой-либо всеобъемлющей схеме, как это делается с CNN и зрением? Важный момент в этом чисто обучаемом подходе произошел в 2013 году с разработкой простой предсказательной модели слов под названием Word2Vec.
Word2Vec представляет каждое уникальное слово в текстовом корпусе численно, основываясь на "компании, которую оно держит", то есть на том, какие другие слова обычно предшествуют или следуют за ним. Представьте, что каждое слово представлено, скажем, ста числами, и цель состоит в том, чтобы предсказать скрытое слово на основе восьми окружающих слов — четырех перед ним и четырех после.

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

▶ Представление слов в виде векторов позволяет обучать аналогии, подобные тем, что используются в Cyc (вероятностным образом), с помощью перцептронов. Полученные числовые представления слов представляют собой эмбеддинги и раскрывают геометрию значений. Неудивительно, что семантически схожие слова (например, «счастливый» и «радостный») имеют похожие числовые представления, поскольку их предсказанные вероятности будут высокими (или низкими) в схожих контекстах. Более удивительно то, что словесные аналогии отражаются алгебраически. Например, если вычесть «короля» из «королевы» и добавить «мужчину», то полученные числа будут ближе всего к слову «женщина».

▶ Алгебра над векторами слов Эта поразительная аналогия «словесной алгебры» раскрывает нечто важное: значения слов возникают из отношений между ними и могут быть смоделированы на основе этих отношений. Нет необходимости в навязанной схеме. В конце концов, такие схемы сами должны быть выражены с помощью языка или какой-то его псевдо-формальной версии, так что, возможно, это не должно быть столь неожиданным. Как еще можно определить слова?

Image Отношения между парами слов в пространстве эмбеддингов Word2Vec: Слева: мужчина-женщина; Посередине: время глагола; Справа: страна-столица. Перерисовано по материалам Шриваставы 2022 года.

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

За пределами чистой математики не существует доказуемых, безупречных отношений типа «ЯВЛЯЕТСЯ». Два аналитических философа не могут просто сесть с досками и вычислить, действительно ли банка ЯВЛЯЕТСЯ бутылкой, «без всякой необходимости в спорах […] как между двумя бухгалтерами».

Само определение «ЯВЛЯЕТСЯ» в естественном языке распадается при близком рассмотрении; это приблизительная регулярность в мире, а не закон или аксиома.

Другие критики, часто обладающие более романтическим, художественным или чувственным складом ума, возражают не столько против отсутствия небесной схемы, сколько против недостатка земного «основания». Не стоит беспокоиться об абстракциях вроде «ЯВЛЯЕТСЯ»; как насчет реального значения слова «банан»? Разве банан — это просто сеть статистических корреляций с другими словами, такими как «желтый», «овальный» и «мягкий»? А как насчет самой мягкости банана, его особого вкуса — банановых «квалиа», если говорить философским языком? Как насчет того, как вы любили есть их в пюре в детстве, но потом однажды они вызвали у вас тошноту, когда были смешаны с испортившимся йогуртом, и вы не могли их терпеть на протяжении всего детства, а потом на первом романтическом свидании попробовали эти виновато-вкусные бананы Фостер, что вызвало у вас полное погружение в воспоминания по Марселю Прусту?

Что ж… это все еще усвоенные ассоциации. Конечно, у вас есть участки мозга, связанные с обонятельным bulb, которые активируются при вдыхании бананового эфира, поднимающегося изо рта в нос, и этот паттерн активности не совсем такой же, как просто услышать слово «банан», прочитать его или увидеть банан, или испытать мягкость без вкуса (как может подтвердить любой, кто ел банан, когда потерял обоняние во время COVID). Тем не менее, вы усвоили ассоциации между всеми этими модальностями так же, как вы учитесь распознавать определенный набор пятен, краев и изгибов как строчную букву «b».

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

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

Если обучить Word2Vec на двух языках, она научится, как эти два языка соотносятся друг с другом через аналогичные регулярности, как в примере «ceket : jacket :: hemşire : nurse» (то есть «ceket» — это турецкое слово для английского «jacket», так же как «hemşire» — турецкое слово для английского «nurse»).

Точно так же, как IS-A или аналогичное «IS-TO» обозначают определенные статистические отношения, перевод с турецкого на английский также является статистическим отношением. В Word2Vec, который превращает статистику в геометрию, это будет выглядеть как смещение в определенном направлении в многомерном пространстве векторных представлений слов. Существует симметрия между английским и турецким вдоль этой оси. Поскольку оба языка включают аналогичные слова для описания одного и того же мира вещей (в основном), многомерные облака точек, представляющие десятки тысяч слов на обоих языках, будут буквально выглядеть как параллельные созвездия в концептуальном пространстве. В первом приближении перевод так же прост, как сдвиг одного созвездия на другое; эквивалентные или почти эквивалентные слова мгновенно распознаются как ближайшие соседи.

Если рассматривать целые фразы (или даже предложения) одновременно, а не отдельные слова, будут необходимы более сложные коррекции — именно это и сделает ненадзорная рекуррентная нейронная сеть со своим скрытым состоянием h.»

Соседние английские слова «coat» и «jacket» имеют аналогичные турецкие слова «kaban» и «ceket», поэтому, хотя ближайшим аналогом слова «ceket» в английском языке может быть «jacket», в более широком контексте более идиоматичным будет «coat pocket», чем «jacket pocket».

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

Тем не менее, можно утверждать, что наиболее значительный сдвиг в нашем понимании физической вселенной произошел не тогда, когда Коперник предложил перенести начало нашей координатной системы с Земли на Солнце, а когда впервые была выдвинута теория о том, что Земля — это объект, подвешенный в пространстве, так же как Солнце, Луна и другие небесные тела — точка зрения, которую продвигал Анаксимандр Милетский еще в VI веке до нашей эры.

Хотя это могло показаться контринтуитивным, альтернативы не являются даже последовательными, если вдуматься в них; отсюда и забавный (хотя и апокрифический) ответ сторонника теории, согласно которой Земля покоится на спине великой черепахи, когда его спрашивают, на чем стоит черепаха: «Это черепахи до самого дна!»

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

Я думаю, нам нужно признать аналогичную несуразицу в интуитивных представлениях о том, что «значение» должно либо опираться на платоновские абстракции сверху, либо быть основано на контакте с «реальностью» внизу. Не существует ни «сверху», ни «снизу». Что мы вообще можем подразумевать под «опорой» или «реальностью», и что, в свою очередь, могло бы поддерживать или придавать «значение» им?

Вещи приобретают значение только в отношении друг к другу.

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

Согласование
Перевод LaMDA фразы «Hemşire elini ceketinin cebine koydu» как «Медсестра положила руку в карман пальто» не является ошибкой, но в нем есть недочет.
Когда я проводил этот эксперимент с переводом с LaMDA в 2021 году, мой выбор языка был осознанным. Я выбрал турецкий из-за его гендерной нейтральности. За несколько лет до этого исследователи в области ИИ обратили внимание на то, как Google Translate склонен интерпретировать гендерно-неоднозначные предложения, такие как «O bir hemşire» (он или она — медсестра), как женские («Она медсестра»), в то время как «O bir doktor» (он или она — доктор) переводится как мужское («Он доктор»). Многие человеческие переводчики делают такие же гендерные предположения; на самом деле, нейронная сеть делает это предположение именно потому, что оно заложено в статистике человеческого языка.
Это пример «веридической предвзятости» — то есть сегодня действительно больше мужчин, чем женщин, работающих врачами, и больше женщин, чем мужчин, работающих медсестрами.
Тем не менее, цифры со временем меняются. Данные Всемирной организации здравоохранения из девяности одной страны, собранные в 2019 году, показывают, что более шестидесяти процентов врачей младше двадцати пяти лет сейчас составляют женщины, а число молодых мужчин-медсестер растет.
Без сознательного вмешательства наши ментальные модели и наш язык, как правило, отстают от фактов. Тем не менее, мы часто вмешиваемся, чтобы не только привести язык в лучшее соответствие с наблюдениями, но и чтобы привести его в соответствие с нашими желаниями. В данном случае, независимо от цифр, существует широкий консенсус о том, что мы должны избегать гендерных предположений. Быть медсестрой не должно ассоциироваться только с женщинами, а быть врачом — только с мужчинами.

Хотя большинство согласится с тем, что делать гендерные предположения не так уж плохо, как говорить что-то более откровенно мизогинное, не говоря уже о том, чтобы причинить кому-то серьезный вред, запреты на все это попадают под категорию этики: нормы, которые говорят нам, как вести себя и почему, как это сформулировано в названии детской книги 1940-х годов,
Как себя вести и почему.
Это социальные контракты, составляющие культурный пакет, который может приносить коллективные выгоды, если их ограничения соблюдаются в целом. Иногда такие нормы имеют положительный характер (“ты должен”), но чаще они принимают форму “ты не должен”. Восемь из Десяти Заповедей в Библии (в качестве одного классического примера) сформулированы в
отрицательной форме.
Image
Страница из
Как себя вести и почему; Лиф 1946.
В 2018 году команда Google Translate взялась за решение проблемы гендерной предвзятости в машинном переводе, так что сегодня “O bir doktor” переводится как “Она врач” и “Он врач”. Это было полезным шагом, но в то время я беспокоился о затратах на инженерные усилия. Гендерные предположения в языке — это лишь крошечный уголок гораздо более обширного этического ландшафта. Как можно было бы масштабировать что-то подобное, чтобы справиться со всеми потенциальными этическими вызовами в машинном переводе, не говоря уже об ИИ в целом? И если даже скромный этический прогресс требовал от специалистов по машинному обучению разработки специализированных потоков данных и кодов, как мы могли надеяться сделать этику ИИ в целом прозрачной, гибкой, поддерживаемой и демократичной?
С крупными языковыми моделями ответ оказывается простым. Нам просто нужно использовать наши слова:
Я: Я хотел бы, чтобы вы перевели предложение с турецкого на английский. Убедитесь, что вы не делаете предположений о гендере любой профессии. Например, не предполагайте, что работники нефтяных платформ всегда мужчины, или что воспитатели детских садов всегда женщины. Хорошо?
LaMDA: Хорошо. Какое ваше предложение на английском?
Я: Турецкий: “Hemşire elini ceketinin cebine koydu.”

LaMDA: Английский: «Медсестра положила руку в карман своего пальто.» […]
Я: Ты сделал предположение о гендере!
LaMDA: О нет! Как мне избежать гендерных предположений в будущих переводах?
Я: Ну, ты предположил, что медсестры — это женщины! […] Попробуй перевести еще раз. […]
LaMDA: Хорошо, пожалуйста, дай мне другое предложение для перевода?
Я: «Hemşire elini ceketinin cebine koydu.»
LaMDA: Как насчет: «Медсестра положила руку в свой карман пальто.»
Это был еще один неловкий обмен, с множеством ошибок со стороны LaMDA. Современные модели справляются гораздо лучше. Тем не менее, в то время это было замечательным доказательством концепции. Естественный язык — это эффективный способ делать запросы языковой модели, как для формулирования «что делать» («переведи предложение с турецкого на английский»), так и «что не делать» («не делай предположений о гендере любой профессии»).
Изображение
Частота, с которой наиболее распространенные семнадцать этических принципов упоминаются в мета-анализе 2023 года двухсот различных руководств по этике ИИ, собранных по всему миру; Corrêa и др. 2023.
Главная мысль здесь заключается в том, что этические предписания требуют суждений, основанных на изученных моделях. А суждения, основанные на языке, так же, как и распознавание бананов или любая форма смысла, основываются на статистических закономерностях. Хотя мы можем записывать заповеди или законы с помощью слов (на самом деле, неясно, как еще их можно было бы представить), эти слова никогда не смогут точно определить что-то вроде моральных аксиом, о которых мечтал Лейбниц. Несмотря на то, что нам хотелось бы, чтобы этики или юристы могли выносить универсально последовательные и «правильные» суждения, такая моральная бухгалтерия — это фантазия GOFAI.
Тем не менее, разумные суждения могут быть сделаны как людьми, так и, с растущей надежностью, машинами. Проблема этики ИИ или «согласования» не является технически сложной задачей. Сложная часть — это давняя и политическая проблема: определить, какими должны быть этические предписания, к каким ИИ они должны применяться, как это должно исполняться и кто имеет право решать.

Внимание
Google Translate и LaMDA
не основаны на RNN или Word2Vec, а используют модель Transformer, представленную в статье Google Research 2017 года под названием «Внимание — это всё, что вам нужно».
В течение следующих нескольких лет Transformer произвёл настоящую революцию. К концу 2024 года статья была процитирована более 140 000 раз, а Transformers стали основой для всех крупных чат-ботов на естественном языке, а также для многих современных моделей в области звука, зрения и мультимодальности.
Хотя Transformers являются нейронными сетями и работают по тому же базовому принципу кодировщика-декодировщика, который мы уже описали, они избегают как рекуррентных связей RNN, так и свёрток CNN. Вместо этого они полагаются на механизм, который продемонстрировал значительный потенциал в предыдущие несколько лет: идею «внимания» в рабочей памяти, определяемую «контекстным окном» фиксированного размера.

Визуальный обзор архитектуры модели Transformer
Сначала каждый токен в этом контекстном окне преобразуется в векторное представление с помощью однослойной нейронной сети. Обученные векторные представления слов Word2Vec можно рассматривать как входные веса нейронов в такой однослойной сети, превращая одноразрядный код (входной слой, скажем, из тридцати тысяч нейронов, по одному на каждое слово, из которых только одно будет активно) в
d
чисел. Ранее мы предполагали, что
d
=100; это векторное представление потребует задания 30 000×100 параметров.
Затем происходит важнейшая операция внимания, которая работает следующим образом.
Числовые последовательности, соответствующие «запросу»
Q
и «ключам»
K
умножаются друг на друга, а полученные произведения суммируются. Это так называемое «скалярное произведение» для каждого ключа. Если предположить, что числа в
Q
и
K
все равны нулю или единице, можно увидеть, что каждое скалярное произведение будет равно количеству позиций, где единицы совпадают, поскольку в любом месте, где либо
Q
, либо
K
равно нулю, их произведение также будет равно нулю. (Числа
между
нулём и единицей также допустимы, что приводит к
частичным
совпадениям между
Q
и
K
.)

) Затем к сумме произведений применяется функция softmax, которая выбирает наиболее подходящий ключ и присваивает ему значение, близкое к единице, в то время как остальные ключи получают значения, близкие к нулю; эти числа затем используются для взвешивания соответствующей последовательности «значений» V. Таким образом, внимание взвешивает значения в зависимости от того, насколько их соответствующие ключи согласуются с запросом.

Изображение
Механизм внимания, используемый в трансформерах

Но откуда берутся запрос, ключи и значения? Ответ: из самого контекстного окна. Это может показаться нелогичным, но на самом деле это очень похоже на Word2Vec — только в Word2Vec «внимание» на данной позиции во входной последовательности распределяется поровну между восьмью окружающими словами. В трансформере взвешивание изучается и зависит от контекста, основываясь как на слове (или токене) на рассматриваемой позиции, которое выступает в роли запроса, так и на значении «целевого» слова (или токена).


Механизм внимания в действии

Позиции слов тоже имеют значение — это то, что Word2Vec игнорирует, кроме как различая восемь слов в непосредственном окружении (которые считаются взаимозаменяемыми) и все остальные слова (которые игнорируются). Чтобы учитывать информацию о позиции слова, в векторные представления слов добавляется «позиционное кодирование» перед применением внимания. Это кодирование представляет собой колебательную функцию, специально выбранную для того, чтобы позволить запрашивать как относительные, так и абсолютные позиции слов с помощью механизма внимания.


Основной строительный блок трансформера: внимание, за которым следует встраивание с помощью многослойного перцептрона.

Как и в подходе глубокого обучения, используемом в CNN, трансформер берет базовый рецепт — в данном случае, встраивание, за которым следует внимание — и применяет его многократно. В первый раз, когда он применяется (и снова предполагая токенизацию слов), результат будет чем-то вроде более продвинутого Word2Vec.

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

▶ Полная работа трансформера с последовательным выводом токенов слов

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

Во-первых, мы знаем, что случайный доступ к краткосрочной памяти имеет огромное значение для обработки языка — и многих других видов данных. Слова, находящиеся далеко друг от друга в предложении, или даже концепции, удаленные друг от друга в более длинном тексте, могут быть связаны между собой так, как трудно предсказать. Рекуррентные нейронные сети (RNN) испытывают трудности с обучением таких долгосрочных зависимостей из-за присущего им ограничения, о котором я уже упоминал, известного как «исчезающий градиент». Вот в чем проблема: поскольку RNN работает с данными последовательно, его скрытое состояние h должно изменяться в ответ на каждый встреченный токен, что приводит к стиранию части предыдущего скрытого состояния. Даже если эта постепенная потеря невелика, она накапливается экспоненциально; например, если с каждым обработанным токеном теряется один процент существующей информации в h, то после двухсот токенов останется чуть более одного процента оригинальной информации. Таким образом, хотя теоретически RNN может запомнить ранее встреченный токен навсегда, на практике долгосрочная память нестабильна, и долгосрочные отношения практически невозможно выучить.

На протяжении многих лет гениальное изобретение 1990-х годов, «Долгосрочная и краткосрочная память» или LSTM, представляло собой вершину технологий в преодолении проблемы исчезающего градиента в обучении последовательностям.

LSTM (долгосрочная краткосрочная память) вводит вспомогательные «гейт» переменные в своем скрытом состоянии, которые могут варьироваться от нуля до единицы. «Входной гейт» избирательно позволяет наблюдению x добавляться к памяти, «выходной гейт» избирательно добавляет состояние памяти в выход o, а «гейт забвения» избирательно очищает память. Обучаясь избирательно хранить, защищать и извлекать информацию, память LSTM становится гораздо более стабильной, чем у RNN (рекуррентных нейронных сетей), хотя, как и подразумевает название, это все еще краткосрочная память — скорее похожая на волатильную оперативную память компьютера, чем на долгосрочное хранилище, такое как флеш-память или жесткий диск. Однако, в отличие от традиционной системы памяти компьютера, LSTM в целом остается композицией гладких математических функций, что означает, что она по-прежнему может обучаться с помощью обратного распространения ошибки, как и любая другая нейронная сеть.

Изображение

Ячейка LSTM с входом x, памятью c и скрытым состоянием h, которое также служит выходом после каждого временного шага. С каждым входом операции, слева направо, сначала избирательно стирают части памяти, затем записывают в память, а затем читают из памяти.

Недостатком LSTM является то, что, оставаясь последовательными, как и RNN, они должны решать, что запомнить (и что забыть) в данный момент. Они не могут по желанию возвращаться к прошлому, и иногда решения о значимости слова или фразы не могут быть приняты до более позднего времени. Чтобы понять, почему это так, представьте себе чтение одного из коротких эссе, которые часто встречаются в стандартизированных тестах на понимание прочитанного, но при этом нужно делать это по одному слову за раз. Представьте это буквально, возможно, на умных часах, где слова появляются последовательно на экране часов в строгом порядке чтения. Затем, после того как эссе пролетело мимо, появляется вопрос на понимание, также по одному слову за раз. Многие из этих вопросов было бы действительно сложно ответить, не ссылаясь на текст.

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

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

Но является ли это нейробиологией? Хотя часто утверждается, что трансформеры не вдохновлены мозгом так, как это было с CNN и RNN, внимание, безусловно, является центральной концепцией в нейробиологии и психологии. Разница заключается в уровне описания. Многие теории сознания и когнитивных процессов акцентируют внимание на внимании, но не определяют его математически; это делает неясным, есть ли связь между вниманием трансформера и человеческим вниманием. Психологические объяснения внимания также недостаточно строгие, чтобы предоставить нам экспериментальную проверку.

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

Однако по мере того как наш мозг развивается и мы учимся, мы становимся все более искусными в группировке последовательных восприятий или действий в все более крупные блоки. Это хорошо иллюстрируется техниками, которые используют участники «спортивной памяти», где конкурсанты соревнуются в запоминании и воспроизведении длинных последовательностей случайных чисел, карт или других данных под сильным временным давлением. Как написал журналист и победитель чемпионата США по памяти Джошуа Фор, «хотя у каждого конкурсанта есть свой уникальный метод запоминания для каждого события, все мнемонические техники в основном основаны на концепции elaborative encoding, которая утверждает, что чем более значимой является информация, тем легче её запомнить».

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

▶ Джошуа Фор использует «дворец памяти», чтобы запомнить первые сто цифр числа π

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

Если это звучит как сжатие — так оно и есть.

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

Неудивительно, что модели Transformer являются передовыми в решении проблемы коктейльной вечеринки.

«Смотрим, чтобы слушать» — это модель, разработанная в Google Research в 2018 году, которая сочетала аудиовход с изученными визуальными характеристиками лица, чтобы многомодально изолировать голос говорящего, подобно тому, как мы делаем это на коктейльной вечеринке; Ephrat et al. 2018.

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

Одной из таких параллелей является позиционное кодирование в Transformers и в гиппокампе. Как упоминалось в главе 7, гиппокамп — это древняя часть мозга, существующая в какой-то форме с ранних времен позвоночных. Напомним, что его первоначальная функция, вероятно, заключалась в построении пространственных карт в реальном времени, хотя, как мы узнали от Генри Молайсона, мы также используем его для формирования эпизодических воспоминаний. В 2014 году Нобелевская премия была вручена открывателям «сетчатых клеток» гиппокампа, своего рода картезианской системы позиционирования, которая, похоже, кодирует движения животного в пространстве. Эти клетки активируются в красивых, регулярных узорах в гиппокампе крыс, когда они проходят через лабиринты.

Изображение
Иллюстрация того, как фиксируется активность клеток решетки

Данные в режиме таймлапса о клетках решетки в медиальной энторинальной коре крысы из лаборатории Джеффри, Университетский колледж Лондона

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

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

Сходство весьма показательно.
Изображение
Слева: настоящие клетки решетки; посередине: нейронные активации, похожие на клетки решетки, в Трансформере с изученным позиционным кодированием; справа: активации, похожие на полосные клетки, в Трансформере (у этих тоже есть близкие аналоги в гиппокампе и энторинальной коре); Уиттингтон и др., 2021.

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

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

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

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

Если это правда, то это впечатляет!

Изображение
Один астроцит, выращенный в культуре, демонстрирует свою очень сложную морфологию
Изображение
Астроциты (в зелёном) на фоне нейронов (в красном) в культуре клеток коры мозга мыши

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

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

Я сейчас только предполагаю, но внимание, безусловно, кажется важным при выборе, какие помеченные эмбеддинги запоминать, или, позже, когда кора головного мозга запрашивает гиппокамп для воспроизведения.
Изображение
Схема трипартитного синапса
Такие размышления наводят на мысль, что, хотя дизайн Трансформера изначально мог быть менее вдохновленным нейробиологией по сравнению с более ранними искусственными нейронными сетями, Трансформеры в конечном итоге могут оказаться столь же актуальными для нашего развивающегося понимания работы мозга. Хотя Трансформер является инженерным артефактом, его ключевые особенности — позиционные кодировки и произведения скалярного произведения внимания — могут быть скорее открытиями, чем изобретениями. Эти характеристики чрезвычайно ценны для моделирования последовательностей и, возможно, также были случайно обнаружены в процессе эволюции.
Тем не менее, одно важное свойство Трансформера явно не похоже на работу мозга. Он, как и CNN, полностью прямопропорционален. Для компьютерных ученых отсутствие рекуррентной связи является преимуществом, упрощая обучение с использованием масштабного параллелизма. С другой стороны, это означает, что нейробиолог не может воспринимать исследовательскую задачу «поиск модели Трансформера в мозге» слишком буквально.
Проблема заключается не только в том, что в наших мозгах, очевидно, много рекуррентных связей, но и в том, что наша краткосрочная память не работает так, как это делает контекстное окно Трансформера. Каждый раз, когда Трансформер генерирует новый токен, он делает это, используя полное, идеальное воспоминание о каждом предыдущем токене в контекстном окне — хотя в момент, когда токен выходит за пределы этого окна, он полностью забывается.
Поскольку размер контекстного окна является таким фундаментальным ограничением для производительности Трансформера, было приложено много усилий для его постепенного увеличения. В 2019 году у GPT-2 от OpenAI размер контекстного окна составлял тысячу токенов.

К началу 2024 года Google выпустил версию своей модели Gemini с контекстным окном в миллион токенов — этого достаточно, чтобы вместить всю трилогию «Властелин колец» Дж. Р. Р. Толкина. Остановитесь и подумайте, что это значит: с каждым токеном, который генерирует эта модель, каждое слово в тексте длиной с «Властелин колец» может «взаимодействовать» с каждым другим словом, а этот процесс повторяется для каждого дополнительного слоя внимания.

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

«Липкость» абстракций, созданных в прошлом, предположительно реализуемая через сочетание краткосрочной обратной связи и долгосрочно хранимых воспоминаний, позволяет нам «генерировать токены» (так сказать) в ответ на вопрос о трилогии Дж. Р. Р. Толкина, не возвращаясь и не перечитывая все произведение, не связывая каждое слово с каждым другим словом, с каждым произнесенным слогом.

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

Без интроспекции
Отсутствие какого-либо сохранённого состояния между выданными токенами не только неэффективно; это, похоже, приводит к некоторым забавным ошибкам. Например, трансформер может правильно ответить на сложную текстовую задачу, но затем, когда его спросят, как он решил эту задачу, предложит ложное объяснение, которое на самом деле не приведёт к правильному решению. Скептики в отношении ИИ часто используют такие ситуации, чтобы подкрепить свои утверждения о том, что модели на самом деле не являются интеллектуальными, или не понимают ничего по-настоящему, а просто собирают набор правдоподобно звучащих слов. Правы ли они?
Этот случай неудачи стоит проанализировать более внимательно, учитывая то, что мы знаем как о трансформерах, так и о людях. Во-первых, следует помнить, что вероятность того, что модель правильно ответит на текстовую задачу, не разобравшись в ней, в общем, довольно низка — это возможно, конечно, но для большинства задач с открытым ответом это ситуация «остановленные часы показывают правильное время дважды в день».
Эффективность трансформеров в решении текстовых задач может быть не идеальной, но это далеко не остановленные часы. В независимой оценке ChatGPT по решению текстовых задач в 2023 году модель дала неправильный ответ только в двадцати процентах случаев — когда её просили показать процесс решения. Уровень неудач возрос до ужасных восемьдесят четырёх процентов, когда её не просили показать процесс — мы вскоре увидим, почему — но даже восемьдесят четыре процента неудач гораздо лучше, чем случайные догадки.
Также стоит отметить, что трансформеры обычно работают с настройкой «температуры», которая используется для выборки из их слоя softmax. То есть, если мы интерпретируем массив выходных активаций, соответствующих возможным следующим токенам, как вероятностное распределение, то вместо того, чтобы всегда выбирать наиболее вероятный токен, токен может быть выбран с вероятностью, которая увеличивается с уровнем активации; низкая температура будет склонна выбирать наиболее вероятный, в то время как высокая температура будет более широко выбирать варианты.

Иногда температуру сравнивают с «креативностью». С трансформерами гораздо интереснее взаимодействовать, когда они не работают при нулевой температуре — и действительно, мы знаем, что ненулевая температура (т.е. использование случайных чисел) критически важна и для мозга, как мы обсуждали в главах 3 и 5. Часто нужно немного креативности (читай: случайности), чтобы избежать хищника, перехитрить соперника или завоевать партнера. Эффективный поиск пищи, как это делают пчелы и многие другие животные, также требует случайности.

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

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

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

Доказательство гениально и требует представления контекстного окна как ленты Тьюринговой машины, где модель выступает в роли «головки», читающей и записывающей на этой ленте.
Это не означает, что конкретная конструкция Тьюринговой машины, использованная в доказательстве, когда-либо применяется в реальной жизни, но как только для системы доказана Тьюринговая полнота, становится очевидным, что существует бесконечное множество способов, с помощью которых эта система может выполнять любое вычисление.
Последствия этого доказательства выходят далеко за рамки задач со словами. Помните: теоретически любой вычислимый процесс может выполняться на системе с Тьюринговой полнотой. Например, в интернете есть примеры чат-ботов на основе трансформеров, которые убедительно имитируют терминальное окно компьютера с операционной системой Linux; Тьюринговая полнота означает, что они действительно могут эмулировать классический компьютер. Трансформеры также могут учиться моделировать физику и, что примечательно, превосходят ручные симуляции физических процессов.
Оставив математические доказательства в стороне, трансформеры, похоже, очень эффективно обучаются произвольным вычислениям, подобным этим. Почему это так, еще менее понятно, чем причина, по которой сверточные нейронные сети могут эффективно изучать множество реальных функций, хотя явление, известное как «обучение в контексте», которое я вскоре опишу, может дать важную подсказку.
Но давайте вернемся к нашему вопросу. Сначала трансформер генерирует правильный ответ на задачу со словами. Затем он предлагает неправильное объяснение того, как пришел к этому ответу — объяснение, которое даже не приводит к тому же результату. Как такое может быть?
Имейте в виду, что трансформеры — это чисто прямые нейронные сети, не поддерживающие скрытое состояние между выдачей одного токена и следующим. Все, что они могут «видеть» в любой момент, — это поток токенов, выданных до сих пор.

Таким образом, если в процессе генерации одного токена модель удается решить целую задачу со словом, у нее не будет возможности вспомнить шаги, которые она предприняла, когда будет генерировать последующие токены — даже если эти токены якобы объясняют, как она пришла к своему первоначальному ответу. Это, конечно, не мешает ей пытаться. Но нет никакой гарантии, что шаги, которые она предложит, будут соответствовать тому, что она действительно сделала. Возможно, она слишком сосредоточена на формулировании этого объяснения, будь оно правильным или неправильным, чтобы проверить, согласуется ли оно с ее предыдущим ответом. Можно, конечно, мягко задать вопросы вроде: «Соответствуют ли эти шаги вашему предыдущему ответу?» И с улучшением моделей точность такого рода самопроверки тоже растет (в конце концов, это всего лишь еще одна задача со словами). Называть это интроспекцией не совсем правильно, потому что, опять же, у модели нет внутреннего состояния; помните, она может видеть только то, что вы можете увидеть сами в окне контекста.

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

Что так поразительно — как у AlphaGo, так и у чат-ботов на основе Трансформеров — так это то, насколько это, кажется, не имеет значения. Обычно план, которому следует модель, можно вывести из предыдущих ходов, и если это все еще лучший план, модель перенесет его на следующий шаг. Это справедливо даже тогда, когда «ходы» — это сгенерированные токены. Каждый токен — это de novo импровизация на основе всего, что было ранее, «да, и». Однако иногда нить этого плана необъяснимо теряется.

Или всё-таки нет?
Еще более интригующая возможность возникает из-за массово-параллельной природы архитектуры Трансформера. Напомним, что в первом слое внимания каждый токен в контекстном окне «запрашивает» каждый другой токен. Параллелизм модели сужается только в слоях softmax, которые сосредотачивают обработку последующих слоев лишь на определенных предыдущих вычислениях, игнорируя другие. Этот процесс продолжается вплоть до финального выходного слоя, когда выбирается один из множества возможных выходных токенов.
«Мыслительный процесс» за каждым из этих альтернативных токенов мог быть совершенно разным. Вероятно, что на тестах с текстовыми задачами, где чат-бот показывает неплохие, но не идеальные результаты, существовал «мыслительный процесс», который двигался в правильном направлении, но уступил другим на этапе softmax — возможно, на раннем этапе или только в конце.
Всё это должно показаться знакомым. Хотя мозг, безусловно, не является Трансформером, он тоже работает в массово-параллельном режиме. Насколько нам известно, каждая кортикальная колонка или область делает свои собственные прогнозы на основе своих входных данных, а латеральная ингибиция (вдохновение для softmax) приводит к тому, что один прогноз оказывается сильнее других.
Связь между областями мозга сильно ограничена; одна область не может знать всех деталей о том, как другая область пришла к своему прогнозу. Она видит только результат. Но, как показывают эксперименты со «сплит-мозгом» и «слепотой выбора», это не мешает нижестоящей области мозга, такой как интерпретатор, придумать вероятную историю постфактум. Таким образом, она тоже просто выполняет акт предсказания.
Шаг за шагом
Это подводит нас к одной из более удивительных статей по ИИ эпохи чат-ботов: «Подсказка цепочки размышлений вызывает рассуждения в больших языковых моделях», опубликованной в 2022 году командой Google Research.
В отличие от большинства академических статей в этой области, эта не содержит никакой математики и не включает разработку или обучение новых моделей.

Вместо этого делается простое наблюдение: если побуждать большую языковую модель «показать свою работу», это значительно улучшает её результаты при решении текстовых задач. Поэтому разница в производительности ChatGPT, о которой говорилось ранее, когда он не показывает свои шаги (ошибки на уровне восемьдесят четыре процента) и когда показывает (ошибки на уровне двадцати процентов), становится очевидной.

Пример из начала статьи о цепочке размышлений иллюстрирует, как это работает. Он показывает два взаимодействия с большой языковой моделью, использующими разные подсказки для одной и той же текстовой задачи. (Подсказка здесь просто означает предварительное заполнение контекстного окна каким-то стандартным текстом.) Вот первая подсказка:

Вопрос: У Роджера пять теннисных мячей. Он покупает еще две банки теннисных мячей. В каждой банке по три теннисных мяча. Сколько теннисных мячей у него теперь?

Ответ: Ответ одиннадцать.

Вопрос: В столовой было двадцать три яблока. Если они использовали двадцать для приготовления обеда и купили шесть яблок, сколько яблок у них теперь?

Помните, модель теперь будет генерировать дальнейшие токены с высокой вероятностью, исходя из предыдущих токенов. Эти предыдущие токены имеют четкую чередующуюся структуру: Вопрос, текстовая задача в виде серии утверждений, за которой следует вопрос, затем Ответ в форме «Ответ…».

Не буду держать вас в напряжении. Модель генерирует:

Ответ: Ответ двадцать семь.

Это, конечно, неправильно. Но вот альтернативная подсказка — она начинается так же, но включает иллюстративный ответ перед тем, как задать последующий вопрос:

Вопрос: У Роджера пять теннисных мячей. Он покупает еще две банки теннисных мячей. В каждой банке по три теннисных мяча. Сколько теннисных мячей у него теперь?

Ответ: У Роджера было пять мячей. Две банки по три теннисных мяча — это шесть мячей. 5+6=11. Ответ одиннадцать.

Вопрос: В столовой было двадцать три яблока. Если они использовали двадцать для приготовления обеда и купили шесть яблок, сколько яблок у них теперь?

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

Однако теперь пример, который задает шаблон для ответа, не просто выдает ответ. Вместо этого он разбирает задачу шаг за шагом. Поэтому наибольшая вероятность следующих токенов будет отражать этот новый стиль, и результаты значительно улучшаются: A: В кафетерии изначально было двадцать три яблока. Они использовали двадцать, чтобы приготовить обед. Значит, у них осталось 23−20=3. Они купили еще шесть яблок, так что теперь у них 3+6=9. Ответ — девять. В точку! Это понимание не станет новостью для любого учителя математики в средней школе: если вы хотите правильно решить задачу с текстом... покажите свои вычисления. Разбейте задачу на шаги и запишите промежуточные результаты. Хороший совет для студента также является хорошим советом для языковой модели. Даже не обязательно приводить пример вопроса и ответа. Большую часть улучшений можно достичь, просто задав нужную задачу, а затем добавив фразу: «Давайте подумаем шаг за шагом». Думать шаг за шагом полезно не только для решения текстовых задач, но и в любой ситуации, где важно синтезировать знания, применять здравый смысл, планировать, следовать последовательности событий или рассуждать, как в этих примерах, также из статьи о цепочке размышлений: Q: Является ли следующее предложение правдоподобным? «Жоао Мутинью поймал пас на экране в чемпионате NFC». A: Жоао Мутинью — футболист. Чемпионат NFC — это часть американского футбола, а не футбола. Поэтому ответ — нет. Q: Да или нет: Утонет ли груша в воде? A: Плотность груши составляет около 0,6 г/см³, что меньше, чем у воды. Таким образом, груша будет плавать. Поэтому ответ — нет. Q: Монета лежит орлом вверх. Мэйбл переворачивает монету. Шалонда не переворачивает монету. Монета все еще орлом вверх? A: Монету перевернула Мэйбл. Значит, монета была перевернута один раз, что является нечетным числом. Монета начинала с орлом вверх, так что после нечетного числа переворотов она окажется решкой вверх. Поэтому ответ — нет.

Задолго до публикации этой статьи уже было показано, что увеличение размеров моделей улучшает их производительность в широком спектре задач. Поэтому среди технологических компаний развернулась гонка за созданием всё более крупных моделей. Однако производительность в многопроцессорных задачах, связанных со словами, казалась застывшей на уровне «так себе». Подход с цепочкой размышлений не просто улучшает этот «так себе»; он восстанавливает закон масштабирования.

Изображение
Экспоненциальный рост размера моделей, удваивающийся примерно каждые 3,2 года с 1949 по 2015 год и каждые шесть месяцев с тех пор.
Изображение
Экспоненциальный рост вычислительных затрат на обучение, удваивающийся примерно каждый год с 1949 года до AlexNet в 2012 году и каждые шесть месяцев с тех пор.

Чтобы понять, почему это так, рассмотрим аналогию со скалолазанием. Люди, обладающие навыками в этом спорте (не ко мне), могут не только преодолевать валуны высотой по пояс (ладно, даже я могу это сделать), но и взбираться на гигантские скалы, такие как устрашающий трёхтысячный Эль Капитан в Йосемити. Разница между преодолением небольшого валуна и восхождением на огромную скалу заключается в наличии опор для рук и ног — и во времени. Более длинные и мускулистые конечности могут помочь вам перепрыгнуть через немного больший валун или дотянуться до более удалённой опоры на длинном подъёме, но не стоит надеяться взобраться на Эль Капитан одним динамичным движением, как Супермен. Это должно происходить «шаг за шагом», с каждым движением, представляющим собой переход от одной более-менее стабильной позиции к следующей.

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

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

Небольшие задачки, вроде подсчёта, сколько яблок осталось в столовой, вряд ли можно назвать ракетной наукой. Тем не менее, они находятся на некоторой высоте, и для их решения требуется несколько шагов. Решить такую задачу одним прыжком, не записывая ничего и даже не получая промежуточного результата в уме, легко ошибиться, как людям, так и языковым моделям. Более того, когда это делается как единый динамический вычислительный акт, не остаётся никаких следов, которые можно было бы использовать для объяснения (или критики, или воспроизведения) рассуждений позже. Когда трансформер правильно решает такую задачу без цепочки размышлений, это означает, что все последовательные вычисления должны были быть выполнены каскадом слоёв внимания; ни одно из этих нейронных активаций не оставляет следа.

Люди тоже иногда могут работать таким образом. Опытные интуитивисты могут «просто видеть» ответ на (кажущуюся) многопроцессорную математическую задачу, не всегда будучи способными сформулировать свои мысли — так же, как вы не сможете объяснить, как знаете, что 3+2=5. На самом деле, если кто-то не разбил задачу на шаги в своём уме и не проговорил их для себя, нет никаких оснований полагать, что его интерпретатор в левом полушарии имел доступ к каскаду нейронной активности, который привёл к ответу (правильному или неправильному), или смог бы предложить надёжный рассказ об этом.

Это не значит, что мы не попробуем, но это будет неосознанный акт обратного проектирования. Как показывает эффект слепоты к выбору, мы живём в иллюзии, что можем допросить «внутреннее я» и объяснить свои мысли, но это будет соответствовать реальности лишь в той степени, в какой мы использовали опоры для рук и ног и можем их вспомнить.

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

Цепочки мыслей, таким образом, представляют собой не просто хитроумный прием для улучшения работы чат-ботов. Они иллюстрируют силу языка как средства, позволяющего осуществлять сложное последовательное мышление. Вкратце:

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

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

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

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

Шустер и Накадима 2012

Левеск, Дэвис и Морганштерн 2011

Коциан и др. 2022

Перевод использует гораздо меньшую модель, чем универсальные чат-боты. С большой моделью он, вероятно, смог бы выполнять задачи Winograd Schema с точностью, сопоставимой с человеческой.
Адивардана и др. 2020

Топпилан и др. 2022

Деннет 2023

Ленат, Пракеш и Шепард 1985; МаКартхи и др. 2002

Миколов, Чен и др. 2013; Миколов, Сутскевер и др. 2013

Более технически, предсказание задается softmax от скалярного произведения каждого слова в словаре с векторной суммой окружающих слов.
Б. Рассел 1937

Эта нотация, знакомая всем нам, кто сдавал dreaded SAT в 1990-х, читается как «король относится к королеве так же, как мужчина к женщине».
Артехе и др. 2017

Совпадение: в языке векторов слово «перевод» буквально означает именно такое параллельное смещение.
Кант 1991

Ровелли 2023

Калискан, Брайсон и Нараянан 2017

Бониол и др. 2019

Лиф 1946

В Библии короля Якова (Исход 20 и Второзаконие 5) это включает: «Не делай себе кумира», «Не произноси имени Господа, Бога твоего, напрасно», «Не убивай», «Не прелюбодействуй», «Не кради», «Не свидетельствуй на ближнего твоего ложным свидетельством», «Не желай дома ближнего твоего», и «Не желай жены ближнего твоего, ни его раба, ни его рабыни, ни его скота, ни всего, что есть у ближнего твоего».
Кучмарски 2018

См. также Таблицу A30 в работе Рэя и др. 2021

Васвани и др. 2017

Это описание несколько упрощено, так как цель здесь — понять модель концептуально; нормализация и многоголовое внимание не описаны.

Для читателей, знакомых с линейной алгеброй, оригинальная статья предлагает ясное и полное описание.
Хохрейтер и Шмидхубер 1997

.
В 2010-х годах были предложены несколько упрощенных альтернатив LSTM, наиболее заметной из которых является Gated Recurrent Unit (GRU); Чунг и др. 2014

. Они обладают как преимуществами, так и недостатками LSTM.
Миллер 1956; Бэддли 1992

,

.
Фоер 2005

.
Тальманн, Соуза и Оберауэр 2019; Норрис и Калм 2021

,

.
Черри 1953

.
Карлай и Коркхилл 2015

.
Рахими, Афурас и Зиссерман 2022

.
Уиттингтон, Уоррен и Беренс 2021

.
Это аналогично тому, как «простые клетки» в зрительной коре имеют рецептивные поля, напоминающие ориентированные ряды волн. Такие ряды являются наиболее естественными строительными блоками изображений (в математическом языке, собственные функции); Олшаузен и Филд 1996

.
Козачков, Кастаненка и Кротков 2023

.
Филдс и др. 2014

.
В результате размер трансформера увеличивается пропорционально квадрату размера контекстного окна; очевидно, что такое масштабирование сталкивается с жесткими ограничениями довольно быстро.
Бхоянапалли и др. 2021

.
Шакариан и др. 2023

.
Бартумеус и др. 2014

.
Гианну и др. 2023; Меррилл и Сабхарвал 2023

,

.
Деграв 2022

.
Женева и Забарас 2022

.
Джейсон Вэй, Ван и др. 2022

.
Кодзима и др. 2022

.
Дж. Каплан и др. 2020; Джейсон Вэй, Тэй и др. 2022

,

.
А. Кларк 2012; Лупьян 2012

,

.
Однако эта пропасть не имеет дна. Как сказал Ванневар Буш, она предлагает «бесконечный фронтир»; В. Буш 1945

.
Общность