GPT-1

GPT-1 — первая большая языковая модель компании OpenAI, созданная на основе архитектуры трансформеров, предложенной Google в 2017 году[2]. В июне 2018 года OpenAI опубликовала статью «Improving Language Understanding by Generative Pre-Training», в которой была представлена первая версия модели и раскрыт общий принцип генеративных предварительно обученных трансформеров[3].

undefined

До появления GPT-1 наиболее эффективные нейросетевые модели для обработки естественного языка полагались на обучение с учителем по большим массивам вручную размеченных данных. Такая зависимость ограничивала применение моделей на недостаточно аннотированных датасетах, а обучение крупных моделей становилось слишком дорогим и требовало значительных временных затрат. Кроме того, для некоторых языков (например, суахили или гаитянский креольский) существует мало текстов для построения корпусов. В отличие от них, GPT использует «полуобучаемый» подход в два этапа: сначала происходит безучётное генеративное обучение с целью предобучения языковой модели, затем — обучение с учителем для задачи-дискрими­нации и донастройки параметров под конкретную задачу.

Использование архитектуры трансформеров, в отличие от предыдущих методов на базе RNN с механизмами внимания, обеспечило моделям GPT более структурированную память, что позволило добиться лучшей передачи знаний между задачами.

Что важно знать
GPT-1
Тип Большая языковая модель, Генеративный предварительно обученный трансформер
Автор OpenAI
Разработчик OpenAI
Первый выпуск июнь 2018
Последняя версия
Репозиторий github.com/openai/finetu…
Лицензия MIT
Сайт openai.com/blog/l… (англ.)

Причины выбора BookCorpus

В качестве обучающего датасета был выбран BookCorpus — во многом из-за наличия длинных непрерывных отрывков текста, способствовавших обучению модели работе с дальними зависимостями. BookCorpus состоит из более чем 7000 неопубликованных художественных книг различных жанров. Остальные доступные датасеты хоть и были крупнее по объёму, не содержали подобной длинной структуры и были перемешаны на уровне предложений.

Текст BookCorpus был очищен с помощью библиотеки ftfy, чтобы привести пунктуацию и пробелы к единому виду, после чего токенизация осуществлялась через spaCy.

Архитектура

Архитектура GPT-1 построена как 12-слойный декодер-трансформер, использующий 12 замаскированных самовнимательных голов по 64 измерения (всего 768-мерное состояние). Для оптимизации был использован алгоритм Adam вместо простого SGD; скорость обучения линеарно повышалась от нуля в ходе первых 2000 итераций до максимума 2,5×10⁻⁴, а затем плавно снижалась до нуля по косинусному расписанию. В модели GPT-1 — 117 миллионов параметров[3].

Хотя этап дообучения был индивидуализирован под конкретные задачи, сам этап предобучения был универсальным; для решения различных задач модель не требовала значительных изменений архитектуры. Несмотря на свою универсальность, GPT-1 смогла превзойти предыдущие модели по ряду задач обработки языка, включая те, что были построены по дискриминативному принципу.

Производительность и оценка

GPT-1 обеспечила улучшение на 5,8 % и 1,5 % относительно предыдущих лучших результатов на задачах логического вывода на естественном языке (также известных как текстовая импликация), где модели требуется определять логическую взаимосвязь между парой предложений («логически следует», «противоречие», «нейтрально»). Примеры таких датасетов — QNLI (статьи из Википедии) и MultiNLI (расшифровки устной речи, художественная литература, государственные отчёты и другие источники). Также GPT-1 превзошла предыдущие модели в задачах понимания вопросов и логического рассуждения: на 5,7 % в датасете RACE, основанном на заданиях для школьных экзаменов, и на 8,9 % в тесте Cloze для оценки понимания завершённых историй.

На задачах семантической схожести (определения перефразирования) — измеряется способность распознавать, являются ли два предложения парафразами друг друга (например, на датасете Quora Question Pairs, QQP) — GPT-1 показала улучшение на 4,2 % по сравнению с предыдущими лучшими моделями.

GPT-1 достигла результатов 45,4 против 35,0 у предыдущих лидеров на задаче классификации текста по корпусу CoLA (Corpus of Linguistic Acceptability). Итоговый интегральный балл на мультизадачном тесте GLUE составил 72,8 (прежний рекорд — 68,9).

На текущий момент языковая модель GPT-1 устарела. В 2019 году была разработана вторая в серии фундаментальных моделей GPT. За GPT-2 последовала модель нового поколения GPT-3 с 175 млрд параметров, впервые анонсированная в 2020 году (исходный код которой никогда не публиковался). Позже появилась GPT-4, а также ведутся разработки следующего поколения — GPT-5.

Примечания