Мешанина токенов в LLM
Кстати, насчёт “признаков делимости” в YandexGPT и “интеллекта” в LLM вообще. Исходная фраза, которую сгенерировало YandexGPT в контексте поиска “решения” некоторой “невозможной” задачи с числами, такая: “число делится на 2 и на 11, а значит, делится и на 3”. Описание задачи, к сожалению, не сохранилось. Но это и не важно. Естественно, к самим числам в задаче сгенерированная фраза никак не могла быть применена. Данная оговорка тут на тот случай, если кто-то (вполне справедливо) предположит, что под описанную ситуацию делимости нетрудно подобрать условия задачи: типа, в условии может быть сказано что-то вроде “есть несколько чисел, все чётные из которых кратны шести, а некоторые могут быть записаны с использованием только двух различных десятичных цифр” и т.д. Но нет.
Конечно, нетрудно догадаться, как упомянутый фрагмент был сгенерирован LLM: в интернетах очень много текстов, содержащих обороты вида “число”, “число делится на”, “и на”, “а значит” и т.д., и т.п. Эти же тексты, очень часто, содержат и цифры. Система LLM работает не со словами, а с так называемыми “токенами”, слову может соответствовать несколько токенов (может случиться и наоборот, как ни странно; вообще, способы “токенизации” составляют очень важную часть данной технологии генерирования текстов). Есть токены от “цифр” (записи чисел в тексте), или от склеек букв с цифрами. Токены собираются в цепочки не просто по вероятности, но с добавлением элемента случайности и подмешивания прочих элементов, добавляющих мнимой оригинальности в выдачу генератора текстов. Возвращаемся к исходной фразе: какие-то обороты “про делимость” попали по токенам в выдачу, и тут же затесались посевдослучайным образом какие-то другие токены, выдавшие цифры (1 и 1, 2, 3). Получилась “оригинальная” фраза.
Понятно, что признаки делимости алгоритмизируются точно. Возможность создания такой алгоритмизации как раз является одним из аспектов подлинно разумной деятельности. А проблема с применением ИИ тут в другом: даже минимально “интеллектуальный” автомат должен был бы определить, что не может вывести хоть бы примерно применимый к заданному контексту текст, и сообщить об этом. Однако в генеративных LLM нет и не может быть никакого контекста уровнем выше таксономии токенов, которые программа преобразует при помощи мешанины коэффициентов.
Не слишком сложно составить и представление о том, как в генераторах с LLM вообще возникают “оригинальные тексты” – то есть, грамматически корректные сочетания слов, которых не было в исходных корпусах, взятых для “обучения”, – и о том, насколько эти тексты связаны с исходными задачами, равно как и с интеллектом. Рассмотрим условную “обучающую выборку”, которая состоит из следующих текстов (коротких фраз): “лис сел на пень”, “жук сел на сук”, “медведь сел на муравейник”, “заяц проплыл на лодке”, “жук залёг под дерево”, “сом залёг на дно”, “сом проплыл под веслом”. Слова из этой выборки отображаются в токены, а LLM генерирует свои фразы, исходя из предполагаемой вероятности того, что один токен следует за другим, переставляя при этом токены (см. ниже). Вероятности здесь происходят из того, что за словом “сел”, согласно обучающей выборке, с вероятностью единица следует “на”, за словом “жук” – с вероятностью 1/2 следует “сел” и так далее. Вероятности записываются в таблицы, где, в самом примитивном варианте, значение вероятности выбора для следующего токена зависит от предыдущего (этому соответствуют марковские цепи, которые и задаст двумерная таблица).
Это очень упрощённое описание, но оно отражает суть: уже склеивая токены по заданным вероятностям в данной элементарной схеме программа может получить фразы “жук залёг под веслом” и “сом проплыл на сук”, которых нет в исходной выборке. Более того, если предположить, что какие-то склеиваемые токены “короче” слов, то можно представить, как может возникнуть фраза “сом засел на муравейник”. Вариант с марковскими цепями не подходит для LLM, поскольку для впечатляющих публику результатов нужно окно из многих токенов. То есть, выбор следующего токена зависит от многих предыдущих токенов, составляющих только что сгенерованную фразу. Но если для формирования распределения вероятностей по словам или токенам считать все варианты, то количество возможных сочетаний (факториал) практически сразу становится неподъёмным даже для тех огромных вычислительных мощностей, которые принято задействовать в этой области. И поэтому используют аппроксимирующие наборы формул с подобранными коэффициентами, называемые “нейросетями”.
Адрес записки: https://dxdt.ru/2024/05/24/13076/
Похожие записки:
- Различительная способность "обезличенных" данных
- Техническое: TLS-сообщение с постквантовой криптосистемой Kyber768
- Исторические концепции квантовых вычислений
- Разгадка к задаче про 25519
- Имена в TLS для веба (HTTP/HTTPS)
- Палеография и падение тел
- Один сценарий интернет-измерений и поле SNI HTTPS/TLS
- "Умные" колонки и смартфоны
- Планеты и окружности
- Быстрая факторизация и постквантовые алгоритмы
- Занятный замок Fichet 787
Написать комментарий