Поиск по сайту Поиск

GPT-2: нейросеть, которая закончит за вас предложение

Встречали ли вы когда-нибудь собеседника, который после нескольких сказанных вами слов заканчивал за вас предложение? GPT-2 умеет и не такое: она способна по одной вводной фразе сочинить осмысленную статью. Кроме того, нейросеть можно использовать для задач машинного перевода, ответов на вопросы и распознавания речи. В этом материале мы расскажем об особенностях GPT-2 и возможностях её применения.

GPT-2 — это улучшенная версия языковой модели GPT, в основе которой лежит нейросеть Transformator. Для обучения GPT-2 использовался набор данных, состоящий из 8 миллионов веб-страниц объёмом 40 ГБ. Модель имеет 1.5 миллиарда параметров, что в 10 раз больше, чем у GPT. 

Цель создания GPT-2 была довольно простой: нейросеть должна предсказывать следующее слово, учитывая все предыдущие слова в тексте. Но поскольку обучающий датасет оказался очень разнообразным, возможности GPT-2 нашли применение и в других областях. 

GPT-2 может генерировать синтетические образцы текста, по качеству близкие к человеческим. Нейросеть превосходит другие языковые модели, обученные на конкретных примерах (статьях из Википедии, новостях или книгах), без необходимости использования этих наборов данных для переобучения. 

Нейросеть также может распознавать текст, отвечать на вопросы и переводить фразы без дополнительного обучения. Хотя в этих областях её оценки далеки от state-of-the-art, предполагается, что модель можно улучшить с помощью методов обучения без учителя при наличии необходимых датасетов.

Примеры текстов, сгенерированных нейросетью

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

Шокирующая новость про Майли Сайрус, написанная со второй попытки
Новая глава «Властелина Колец» (с первой попытки)
Готовая домашняя работа о причинах Гражданской войны в США (с пятой попытки)

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

В целом, для получения хорошей статьи GPT-2 требуется несколько попыток, причём их количество зависит от того, насколько модель знакома с контекстом. При написании текстов на популярные темы (книги, новости и поп-культура) хорошие результаты достигаются примерно в 50% случаев. Но на техническом или узконаправленном контенте нейросеть часто работает плохо. Больший контроль над генерируемыми образцами можно получить с помощью точной настройки — например, использовать для этого набор данных Amazon Reviews и заставить GPT-2 писать новостные обзоры.

Объёмные языковые модели гораздо легче настраивать на генерацию согласованного текста, который, в свою очередь, может быть использован как в полезных, так и во вредоносных целях. Ниже мы обсудим этот вопрос подробнее и расскажем о мнении создателей GPT-2 и ограничениях, которые они наложили на открытую версию нейросети.

Zero-shot

GPT-2 достигает одних из самых высоких результатов в определённых задачах языкового моделирования. Нейросеть не переобучалась на конкретных данных для какой-либо области и оценивалась на них в своём исходном состоянии — это называется zero-shot обучение. GPT-2 превосходит предметно-ориентированные модели при оценке на тех же наборах данных. В таблице ниже приведены результаты.

(+) — чем выше оценка, тем лучше. (-) — чем ниже, тем лучше.

При выполнении других языковых задач можно получить впечатляющие результаты даже без точной настройки, просто подсказав уже обученной модели правильный путь. Ниже представлены примеры ответов GPT-2 на вопросы и достигаемая точность:

Задача ответов на вопросы
Точность модели (отмечена синим)

GPT-2 справляется и с машинным переводом. Пример перевода фраз с французского на английский:

Перевод Fr->Eng с помощью GPT-2
Оценки BLUE

Поскольку все эти задачи относятся к языковому моделированию, можно ожидать, что в дальнейшем при увеличении объёма вычислений и данных нейросеть станет более точной. 

Фальсификация и спам: негативные последствия языковых моделей

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

— генерация фейковых новостей;

— попытки выдать себя за другого человека;

— создание оскорбительного и фальсифицированного контента для публикации в соцсетях;

— спам и фишинг.

Это не означает, что сейчас в интернете отсутствуют подобные вещи, но нейросети могут автоматизировать и ускорить их генерацию, тем самым существенно снизив затраты на производство. Лучше всего не воспринимать всерьёз недостоверный текст, на который можно наткнуться в Интернете. Точно также следует относиться и к изображениям, созданным с помощью Deep Fake.

Релиз GPT-2 и TabNine

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

Но даже уменьшенная версия нейросети уже успела принести пользу: например, не так давно с её помощью был разработан инструмент для автозаполнения кода в текстовых редакторах TabNine. Он обучался примерно на двух миллионах файлов с GitHub и доступен для бесплатного использования.

Демонстрация автоподстановки в Python

⌘⌘⌘

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

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

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

С оригинальной статьёй можно ознакомиться в блоге OpenAI.

Обучаем виртуального дракона фигурам высшего пилотажа

Обучаем виртуального дракона фигурам высшего пилотажа

В наши дни компьютерная графика присутствует во всех популярных видах визуального контента: от видеороликов YouTube-блогеров до полнометражных фильмов. Но проработка...
Read More
Стэнфордский курс: лекция 9. Архитектуры CNN

Стэнфордский курс: лекция 9. Архитектуры CNN

На прошлом уроке мы узнали о наиболее популярных библиотеках и фреймворках для глубокого обучения, рассмотрели их особенности и области применения....
Read More
GPT-2: нейросеть, которая закончит за вас предложение

GPT-2: нейросеть, которая закончит за вас предложение

Встречали ли вы когда-нибудь собеседника, который после нескольких сказанных вами слов заканчивал за вас предложение? GPT-2 умеет и не такое:...
Read More
Жуткие сайты, которые вызовут у вас мурашки

Жуткие сайты, которые вызовут у вас мурашки

Интернет может не только развлекать вас новыми мемами и видеороликами, но и быть по-настоящему пугающим. В честь Хэллоуина представляем несколько...
Read More
10 ингредиентов надёжной инфраструктуры хостинга REG.RU

10 ингредиентов надёжной инфраструктуры хостинга REG.RU

Привет! На связи редакция блога. И сегодня мы расскажем в деталях об одной из сторон инфраструктуры REG.RU, объясним как работает...
Read More
Голосовой помощник Apple, которому можно доверять

Голосовой помощник Apple, которому можно доверять

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

Как организовать техническую поддержку пользователей

Быстрая техподдержка очень важна для клиентов, особенно в критических ситуациях. От скорости и качества решения проблемы зависит лояльность пользователя и...
Read More
Роботы в облаках: совмещение ROS и Jupyter

Роботы в облаках: совмещение ROS и Jupyter

Робототехника — одна из самых популярных и прогрессивно развивающихся отраслей. Ролики Boston Dynamics на YouTube собирают миллионы просмотров. Если вы...
Read More
Стэнфордский курс: лекция 8. ПО для глубокого обучения

Стэнфордский курс: лекция 8. ПО для глубокого обучения

В предыдущих главах мы познакомились с основами обучения нейросетей и выяснили, чему при этом стоит уделять больше внимания. Сегодня вы...
Read More
Анализ производительности нейросетей на GPU с помощью NVIDIA Visual Profiler (часть 1)

Анализ производительности нейросетей на GPU с помощью NVIDIA Visual Profiler (часть 1)

Специалисты Data Science делятся на два лагеря: те, кому кажется, что нейросети обучаются слишком медленно, и те, кому скоро тоже...
Read More