К книге
Рождение разума: Как интеллект зарождается в людях и нейросетяхЧасть III Знание и обучение – все это в связях. Глава 8 Эмерджентная мыслящая машина. Большая языковая модель – это нейронная сеть, которая обучается методом коррекции ошибок
66%
Часть III Знание и обучение – все это в связях. Глава 8 Эмерджентная мыслящая машина. Большая языковая модель – это нейронная сеть, которая обучается методом коррекции ошибок
67

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

Однако наша текущая задача несколько иная. Мы хотим предсказывать наиболее вероятное следующее слово, а не определять все свойства, которые соответствуют входным данным. Как же нам действовать? Метод коррекции ошибок кажется подходящим, но что использовать в качестве входов и выходов в обучающей выборке?

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

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

Чтобы обучить свою сеть, Элман составил набор осмысленных фраз из своего словаря в 29 слов – всего около 70 предложений. Затем он создал длинную последовательность, многократно соединяя эти предложения в случайном порядке. Начав со случайных весов связей, Элман подавал слова по одному. Каждое слово становилось входом, паттерн активации скрытого слоя от предыдущего слова поступал на «Предыдущие скрытые» нейроны, а выходом было предсказание следующего слова.

Пока веса были случайными, модель поначалу не знала, чтó предсказывать. На выходе получался слабый паттерн активации по всем словам – ни одно не выделялось сильной активацией. Но после каждого предсказания модель получала правильное следующее слово как целевое значение, и веса связей корректировались для уменьшения ошибки – разницы между предсказанием и фактическим следующим словом. Например, после слов «Собаки преследуют» в предложении «Собаки преследуют кошек» сеть могла предсказать «кошек» с вероятностью 0,3, а «лошадей» – с вероятностью 0,5. Применяя метод коррекции ошибок, как в главе 7, Элман настраивал все веса так, чтобы сеть сильнее предсказывала правильное слово «кошек» и слабее – все остальные, включая «лошадей». По мере обучения на длинной последовательности случайно упорядоченных фраз сеть училась делать предсказания, которые все точнее отражали закономерности связей между словами в его базе данных.

Статья Элмана вдохновила многих читателей – возможно, благодаря простоте и элегантности его модели.

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

Для эффективной генерации качественных ответов LLM должна обладать двумя ключевыми способностями. Во-первых, она должна улавливать сходства и различия в предсказаниях для слов с близкими значениями. Рассмотрим входные последовательности «Канарейка увидела приближающегося кота и…» и «Малиновка увидела приближающегося кота и…». Хотелось бы, чтобы наша модель использовала тот факт, что слова «канарейка» и «малиновка» обозначают похожих существ, и генерировала схожее предсказание – в обоих случаях вероятно «улетела». И наоборот, если заменить «канарейку» на слово, обозначающее менее схожее существо – скажем, «мышь» или «орел», – модель должна скорректировать предсказания: для мыши более вероятно «убежала», а для орла – «напал на кота».

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

[ПРОБЕЛ] стремительно [ПРОБЕЛ] по [ПРОБЕЛ], [ПРОБЕЛ] сверкали на свету. Точными [ПРОБЕЛ] [ПРОБЕЛ] [ПРОБЕЛ] цель, оставляя за собой след из [ПРОБЕЛ]. Зрители [ПРОБЕЛ] от изумления, поскольку никогда прежде не видели подобного проявления [ПРОБЕЛ].

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

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

Если же вставить слово «акула», пробелы заполнятся совершенно иначе:

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

Способность использовать паттерны для передачи смысла и способность учитывать расширенный контекст – важнейшие характеристики LLM. В следующих двух разделах мы опишем, как модели приобретают эти способности.

Предыдущая главаГлава 67 из 102Следующая глава