Разбор GPT-3 от Янника Килчера: архитектура, тесты и иллюзия логики

Yannic Kilcher 218 тыс. 1 ч 4 мин 9 мин 29.05.2020
Главное

Выход масштабной научной статьи «Language Models are Few-Shot Learners» от исследователей лаборатории OpenAI ознаменовал новую веху в развитии технологий искусственного интеллекта, представив миру языковую модель GPT-3. Известный ИТ-специалист и исследователь машинного обучения Янник Килчер подробно разобрал этот 40-страничный документ, проанализировав архитектурные инновации, результаты тестов и скрытые нюансы обучения системы. Проводя детальный разбор, эксперт выдвинул критическую гипотезу, которая ставит под сомнение наличие реального интеллекта у алгоритма и объясняет его феноменальные успехи принципиально иными механизмами.

🐘 Рождение гиганта: масштаб и архитектура GPT-3 0:00

Вышедшая работа ИТ-инженеров из OpenAI (среди ключевых авторов — Том Б. Браун, Бенджамин Манн, Ник Райдер и Мелани Субаха) посвящена исследованию возможностей сверхкрупных языковых моделей. Главной особенностью GPT-3 стал её беспрецедентный масштаб: архитектура сети превосходит по объему любые ранее созданные аналоги на целый порядок.

Для сравнения масштабов полезно взглянуть на контекст развития индустрии:

С технической точки зрения GPT-3 представляет собой классическую авторегрессионную модель на базе архитектуры Transformer, которая работает строго слева направо, последовательно предсказывая каждый следующий текстовый токен (субслово). Разработчики открыто признают, что не меняли фундаментальную структуру по сравнению с GPT-2. Они лишь радикально увеличили количество слоев, их ширину и объемы обучающих данных.

Технические характеристики самой большой версии GPT-3 включают в себя:

Обучение столь массивной структуры требовало гигантских вычислительных мощностей (FLOPS), которые были предоставлены специализированным распределенным кластером компании Microsoft. В качестве обучающей выборки инженеры использовали колоссальный массив данных: очищенную версию индекса всего интернета Common Crawl, цифровые библиотеки книг Books, базу качественных веб-текстов WebText и англоязычную Википедию. Поскольку Common Crawl содержит тексты со всего мира, модель впитала в себя не только английский, но и множество иностранных языков.

🎯 От тонкой настройки к контекстному обучению 7:12

Традиционный подход к работе с подобными алгоритмами (например, с популярной моделью BERT) всегда состоял из двух последовательных этапов: предварительного обучения (pre-training) на гигантском массиве сырых текстов и последующей тонкой настройки (fine-tuning). В процессе тонкой настройки предобученную модель обучают с учителем на конкретной целевой базе данных — например, для классификации тональности отзывов или перевода текстов. Этот метод требует проведения градиентных обновлений весов, создания больших размеченных датасетов под каждую задачу и фактически приводит к появлению отдельной изолированной модели для каждого юзкейса.

Авторы GPT-3 предложили альтернативный путь взаимодействия, задействующий концепцию контекстного обучения (in-context learning) без изменения весов самой нейросети. В зависимости от объема передаваемой информации выделяется три формата работы:

  1. Zero-shot (Обучение без примеров): Модели передается исключительно текстовое описание задачи (например, «Переведи текст с английского на французский») и сам запрос (промпт). Сеть должна выдать ответ на основе паттернов, усвоенных при предобучении.
  2. One-shot (Обучение по одному примеру): В контекстное окно, помимо описания задачи, закладывается ровно один готовый пример успешного выполнения, оформленный в виде обычной строки текста. Градиенты при этом не рассчитываются.
  3. Few-shot (Обучение по нескольким примерам): Модели предоставляется серия аналогичных примеров (в некоторых тестах — до 64 штук), формирующих структуру ожидаемого ответа.

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

🧠 Теория Килчера: почему GPT-3 — это просто интерполятор данных 23:08

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

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

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

📊 Триумфы и провалы в классических тестах NLP 18:35

В рамках масштабного тестирования GPT-3 проверили на множестве традиционных бенчмарков для систем обработки естественного языка. Первым направлением стали задачи на закрытые вопросы и ответы (QA), где у модели нет доступа к внешним поисковым системам или Википедии — она опирается только на то, что «вспомнит» из своих весов. В режиме Few-shot алгоритм сумел превзойти специализированные SOTA-модели, созданные целенаправленно под эти задачи. Однако на датасете Natural Questions результаты оказались хуже, что авторы объясняют жесткой привязкой этого теста к узким энциклопедическим фактам.

В ряде других дисциплин результаты GPT-3 распределились неравномерно:

Комментируя этот инцидент, Янник Килчер высказал мнение, что создание таких ИИ-систем постепенно перерастает рамки отдельных коммерческих компаний. По его словам, подобные проекты стоит воспринимать как аналог Международной космической станции (МКС) — глобальные инфраструктурные объекты, которые человечество должно строить совместными усилиями.

Худшие результаты GPT-3 показала на бенчмарках SuperGLUE, требующих глубокого текстового анализа (например, BoolQ), и в задачах на логическое выведение (NLI), где необходимо четко определять, противоречат ли предложения друг другу. Напротив, в тестах COPA (выбор наиболее вероятной причины физического события) модель оказалась на высоте. С точки зрения гипотезы Килчера, это легко объяснимо: фраза о том, что человек сломал палец, уронив на ногу молоток, встречается в интернете часто, тогда как логические абстрактные связки из BoolQ невозможно решить простым извлечением ассоциаций из памяти.

🧮 Иллюзия математического мышления и фокусы с цифрами 41:07

Чтобы проверить модель на способность к реальному внутреннему рассуждению, создатели GPT-3 добавили в тесты синтетические математические задачи. Модели предлагались примеры на сложение, вычитание и умножение разной разрядности чисел. Поскольку числа передаются ИИ в виде обычных текстовых строк, успешное решение должно было доказать, что сеть «поняла» логические правила арифметики. В режиме Few-shot самая большая версия GPT-3 показала почти 100%-ю точность в сложении двузначных чисел и около 80–90% на трехзначных операциях, однако её результативность катастрофически падала при переходе к четырехзначным числам и умножению.

Исследователи из OpenAI заявили, что это свидетельствует об ограниченных вычислительных способностях модели. Однако Янник Килчер категорически не согласился с выводом о том, что нейросеть научилась считать. Он провел собственный эксперимент в поисковике DuckDuckGo, введя случайные математические цепочки из Few-shot примеров.

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

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

📰 Генерация новостей и имитация человеческого текста 51:52

Наибольший общественный резонанс вызвали эксперименты OpenAI по созданию фейковых новостных статей с помощью GPT-3. Модели на вход подавали вымышленный заголовок и краткое описание, после чего она должна была сгенерировать полноценный связный текст. Привлеченные независимые судьи-люди смогли распознать машинное происхождение статей, написанных 175-миллиардной моделью, лишь в 52% случаев, что фактически эквивалентно случайному угадыванию (подбрасыванию монетки).

Разработчики преподнесли это как доказательство того, что модель способна удерживать сложнейший долгосрочный контекст. Янник Килчер оспорил и это утверждение, проверив одну из тестовых генераций, посвященную церковным запретам. Скопировав случайную уникальную фразу из сгенерированного текста и забив её в поисковую строку, эксперт обнаружил реальные новостные материалы Ассошиэйтед Пресс на ту же тему. Тексты не совпадали дословно, но описывали ровно то же событие с использованием идентичных речевых оборотов. По оценке Килчера, GPT-3 просто перефразировала и смешала (интерполировала) существующие в её памяти статьи, искусно замаскировав копирование благодаря развитому знанию грамматики.

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

Тем не менее, автор видео признает, что у GPT-3 есть огромный потенциал практического применения, но не в качестве мыслящего агента, а в роли продвинутой «размытой поисковой системы» (fuzzy search engine). Инструмент может быть полезен ученым для компиляции аннотаций, генерации идей на стыке разных дисциплин и исправления сложной грамматики, поскольку языковая интуиция у алгоритма развита на высочайшем статистическом уровне.

⚠️ Проблема утечки данных и выводы 1:00:59

Завершая разбор, Янник Килчер обратил внимание на уязвимость методологии оценки OpenAI. Для проверки чистоты экспериментов авторы использовали консервативную N-грамную фильтрацию текстов, сопоставляя лишь короткие пересечения фраз между тестами и обучающей выборкой. Килчер считает такой подход слишком слабым, подчеркивая необходимость семантической, «смысловой» дедупликации. В текущем же виде триумфальные результаты Few-shot обучения во многом опираются на скрытую утечку данных и феноменальную способность нейросети к зазубриванию интернета.

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

💬 Цитаты

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

Янник Килчер 24:54
👥 Спикер
🔗 Упомянутые сайты и проекты
📖 Термины
Авторегрессионная модель
Тип нейросети, предсказывающий следующий элемент последовательности (слово или токен) строго на основе предыдущих элементов.
Few-shot learning (Обучение по нескольким примерам)
Метод работы с ИИ, при котором модель выполняет задачу на основе нескольких демонстрационных примеров, переданных прямо в тексте запроса без изменения весов.
Data contamination (Загрязнение данных)
Ошибка в машинном обучении, при которой элементы из тестового (экзаменационного) набора данных случайно попадают в обучающую выборку модели.
Интерполяция данных
Способ нахождения промежуточных значений между уже известными точками данных; в контексте ИИ — смешивание кусков запомненного текста.
📊 Цифры
⚖️ Другая сторона
Искусственный интеллект GPT-3 OpenAI Янник Кильхер Языковые модели