Эпоха 5 · Эра LLM · 2019

36 GPT-2

Language Models are Unsupervised Multitask Learners · Radford, Wu, Child, Luan, Amodei, Sutskever · OpenAI
🟧 оригинал выборочно~1 чоригинал ↗
Суть за 20 секунд. Тот же decoder-only GPT, но до 1.5B параметров на качественном вебе. Главный тезис: достаточно большая LM, обученная лишь предсказывать слово, решает задачи ZERO-SHOT — если сформулировать задачу прямо в промпте. Намёк, что масштаб сам рождает общие способности.

Контекст

GPT-1 дообучался под задачи. OpenAI проверяет: что если просто СИЛЬНО увеличить модель и данные?

Идея и механизм

Тот же decoder-only трансформер, но до 1.5B параметров, обученный на WebText (качественный веб-корпус). Никаких изменений механизма — только масштаб. И обнаруживается: модель выполняет перевод, ответы на вопросы, суммаризацию ZERO-SHOT, без дообучения, если задача выражена текстом промпта.

теория вероятностей Почему обычная LM решает задачи zero-shot

Языковая модель учит одно — распределение P(x) над текстом. Но если задачу и вход выразить как текст, то условная вероятность продолжения и есть решение:

P(выход | «задача: описание; вход: x ⟹»)

Например, на «Переведи на французский: cat ⟹» модель продолжит «chat». Откуда это умение? Веб-корпус содержит множество неявных демонстраций задач — переводы, вопросы-ответы, краткие пересказы, код с комментариями. Минимизируя лосс языкового моделирования на таком тексте, модель попутно учится выполнять эти задачи. Отсюда название: «unsupervised multitask learners» — многозадачность возникает сама как побочный продукт предсказания слова на разнообразных данных.

Python Zero-shot через промпт
# задача выражена прямо в промпте, без дообучения и примеров
prompt = "Переведи на французский: cat =>"
out = lm.generate(prompt)        # модель продолжает: " chat"

prompt = "Краткое содержание: <длинный текст> TL;DR:"
out = lm.generate(prompt)        # модель продолжает резюме
одна LM «переведи: …» «вопрос: …» «TL;DR: …» решение
Одна и та же модель решает разные задачи — отличается только формулировка в промпте. Дообучения нет.
Аналогия. Начитанный эрудит, которого ни под одну задачу специально не готовили. Спросите его «как по-французски кошка?» — ответит, потому что в прочитанном встречал переводы. Попросите краткий пересказ — справится, потому что видел тысячи аннотаций. Он не учился этим задачам отдельно; они «осели» сами из обильного чтения.

Почему это важно

Сдвиг к идее general-purpose LM, управляемой промптом — то, что полностью подтвердит GPT-3 и превратится в ChatGPT. Знаменита поэтапным релизом из-за опасений злоупотреблений («слишком опасно выпускать» → позже «нет свидетельств злоупотреблений»).

Связи

← масштабирует35. GPT-1

Архитектура и рецепт те же — только больше модели и данных. GPT-2 — это эксперимент «что даст чистый масштаб», и ответ оказался качественным скачком (zero-shot), а не просто количественным.

→ ведёт к38. GPT-3

GPT-2 намекнул на zero-shot; GPT-3 довёл масштаб ещё на два порядка и открыл few-shot in-context learning. Прямая лестница масштаба: 1.5B → 175B, и с ней — от «намёка на способности» к «универсальному few-shot решателю».

← обоснован37. Scaling Laws

Наблюдение GPT-2 «больше = качественно лучше» вскоре формализуют scaling laws: лосс падает предсказуемым степенным законом от масштаба. Это превратит «давайте увеличим» из интуиции в инженерную стратегию.

Вопросы пытливого ума

«Слишком опасно выпускать» — это была реальная угроза или маркетинг?

Спорный момент. OpenAI обосновали поэтапный релиз риском масс-генерации дезинформации; критики назвали это раздуванием и пиаром. По факту катастрофы не случилось, и полную модель выложили через ~9 месяцев. Эпизод важен как первый громкий прецедент дебатов о «responsible release» мощных моделей — тема, которая с тех пор только обострилась.

Zero-shot работает, но плохо — почему это всё равно считают прорывом?

Потому что важен не уровень качества, а сам факт: модель, которую никто не учил переводить, переводит — просто из языкового моделирования. Это сменило вопрос с «как обучить под задачу» на «как масштаб рождает способности». Слабый zero-shot 2019-го — это предвестие сильного few-shot GPT-3 и инструкт-моделей; прорыв в направлении, а не в метрике.

Качество корпуса (WebText) — насколько оно критично?

Очень. WebText собирали из ссылок с Reddit с положительной кармой — грубый, но эффективный фильтр качества. Мусорный веб-текст ухудшил бы модель; курирование данных оказалось не менее важным, чем масштаб. Урок «данные решают» с тех пор только усилился — современные фронтир-модели тратят огромные усилия на фильтрацию и состав корпуса.

Что читать в оригинале

Читать ключевое — zero-shot framing и роль WebText; таблицы бенчмарков можно пролистать.