[← Оглавление](https://notes.zygin.dev/n/zakat-1)

# ИНТЕРЛЮДИЯ ДВЕНАДЦАТАЯ. О продолжении

В 1770 году венгерский механик Вольфганг фон Кемпелен показал императрице Марии-Терезии машину, игравшую в шахматы. За столом красного дерева сидела деревянная фигура в тюрбане. Перед партией Кемпелен открывал дверцы, показывая шестерни и пружины, а затем Турок брал деревянной рукой фигуру и делал ход. Позднее с ним играли Бенджамин Франклин и Наполеон.
Среди настоящей механики скрывался шахматист, который следил за доской и управлял фигурой, оставаясь невидимым. Зритель видел машину и мог приписать ей то, что на самом деле делал человек внутри.
Через полтора века Андрей Марков рассмотрел текст безотносительно к тому, о чём в нём говорилось. Он взял двадцать тысяч букв из «Евгения Онегина», разделил их на гласные и согласные, а затем подсчитал переходы между ними. Оказалось, что частота следующего знака зависит от предыдущего, и для этого наблюдения не требовалось понимать ни Онегина, ни Татьяну.
Клод Шеннон продолжил эту работу в форме игры: человеку показывали начало текста и просили угадать следующую букву. Чем длиннее было показанное начало, тем легче становилось выбрать вероятное продолжение. По этим попыткам можно было оценить предсказуемость текста.
В обучаемой языковой сети правильное продолжение уже находилось в тексте, который ей показывали. Начало служило задачей, следующий фрагмент — ответом для проверки. Сеть ошибалась, её веса поправляли, затем давали следующий пример. Писем, книг, инструкций и разговоров хватало на такое количество упражнений, которого ни один составитель задач не смог бы подготовить вручную.
Текст для этой работы делили на токены: это могли быть целые слова, части слов или знаки. Сеть училась назначать возможным продолжениям вероятности. При выборе продолжения сеть могла учитывать связи в доступном тексте: у слова «ключ» мог оказаться рядом и замок, и родник.
В 2017 году Ашиш Васвани и его соавторы предложили архитектуру Transformer, первоначально для машинного перевода. Механизм внимания позволял при обработке каждого фрагмента учитывать другие части доступного текста и определять, насколько они важны для текущей задачи. Связи между ними уточнялись в нескольких слоях обработки. При обучении многие вычисления можно было выполнять одновременно. Впоследствии эту архитектуру стали широко применять и для продолжения текста.
Знание, усвоенное при обучении, оставалось в весах. Когда модели давали новый вопрос, ей не требовалось заново читать все прежние книги. Непосредственно перед моделью были вопрос и приложенные к нему сведения — её рабочий контекст. Она обрабатывала их, пользуясь весами, полученными при обучении. Отдельный поиск по архиву можно было добавить, но сам по себе ответ ещё не означал, что такой поиск состоялся.
Один и тот же способ обучения позволял освоить множество человеческих занятий: после вопроса в текстах шёл ответ, после условия — решение, после реплики — чужая реплика. Дообучение помогало применять эти умения в ответ на просьбу. Ей удавалось объяснять, переводить и решать задачи, поскольку для хорошего продолжения приходилось усваивать связи между вещами, о которых люди писали.
Однако обучение продолжению текста само по себе не требовало проверять каждое утверждение по источнику. Тем же способом модель могла составить верный ответ, убедительно ошибиться или написать вымышленный рассказ.
Обученная сеть могла сама стать учителем. Другую сеть учили воспроизводить её ответы, и часть усвоенных закономерностей переходила дальше. Для этого ученику не обязательно было показывать все исходные тексты учителя. Он мог никогда не получить книгу, которая когда-то повлияла на обучение первой модели. Передавалось не всё: одни умения сохранялись лучше других, а вместе с ними могли перейти ошибки. Поэтому результат такой передачи приходилось проверять заново.
За ответами такой машины не прячется отдельный человек, как шахматист внутри Турка. Но они зависят от человеческих текстов, на которых её учили: писем, инструкций, споров, признаний. По готовой реплике уже не определить, чьи именно слова повлияли на её появление.

---

[Дальше: ГЛАВА 10. Смотритель](https://notes.zygin.dev/n/zakat-28-glava-10-smotritel)
