В связи с недавними достижениями в области искусственного интеллекта нам в YML Innovation Labs было любопытно, можно ли автоматизировать внедрение произведений искусства. В этой статье мы исследуем, как мы вместе с Дамянски создавали такую ​​художественную выставку в Нью-Йорке.

Прошло совсем немного времени с тех пор, как OpenAI осторожно раскрыла возможности своей модели обучения языковой генерации GPT-2, подняв задачу выполнения языкового моделирования на новый уровень. Зная, что он хорошо работает по ряду языковых тестов, все об этом говорили, поэтому мы решили взглянуть на него и посмотреть, что мы можем вызвать в воображении для мира искусства. Это было частью совместной работы художника Дамьянски с целью создания решения для демонстрации заявлений о художественной выставке под названием Музей современного искусства, созданных в ответ на вопросы, на которые отвечали люди, пришедшие на художественное представление. Этот проект исследует идеи сотрудничества с ИИ и его интеграцию в практику художника. Изучение предмета мыслительных процессов - это искусственный интеллект, основанный на всех архивных выставках Музея современного искусства (MoMA) в Нью-Йорке. Выставка состоит из гарнитуры, в которой люди могут взаимодействовать с ИИ для создания новых выставочных заявлений в виде печатного текста. Эти утверждения служат для художников средством по-новому осмыслить генерируемую информацию.

Заявления о выставке были доступны на портале выставки, поэтому мы решили очистить их и использовать. Имена артистов, фигурирующих в любых заявлениях, должны были быть анонимными по юридическим причинам. В конце концов, мы смогли собрать 2000 утверждений, которых было примерно достаточно для того, чтобы модель могла научиться в определенной степени с помощью тонкой настройки.

Предварительная обработка

Для GPT-2 не требуется серьезной предварительной обработки. Другими словами, нижний регистр, токенизация или любой другой шаг на самом деле не нужны, поскольку авторы считают, что эти шаги ограничивают возможности модели, тем самым позволяя ей оценивать все тесты различных языковых моделей. Итак, часть данных, которые требовали очистки, - это имена художников. Ядро Стэнфордского CoreNLP, имеющее модуль Named-Entity Recognition, позволило нам сделать это, а также полагаться на детерминированное разрешение сопутствующих ссылок (dcoref) , чтобы уловить контекст родовых местоимений в тексте, чтобы предложить подходящую замену родам имен.

Архитектура

GPT-2 вдохновлен архитектурой Transformer, предложенной Google в их статье Внимание - это все, что вам нужно. По сути, Transformer предоставляет общий способ обнаружения зависимостей между входами и выходами в режиме кодировщика-декодера. По сути, количество последовательных операций для связи двух символов из последовательностей ввода / вывода с постоянным количеством операций было уменьшено. Это достигается с помощью механизма многоголового внимания, который позволяет моделировать зависимости независимо от их расстояния во входных или выходных предложениях. Кроме того, каждый шаг в модели является авторегрессивным, что означает, что символы, которые были сгенерированы ранее, будут учтены при создании следующего.

Как это может показаться удивительным для некоторых, GPT-2 не требует специальной подготовки. Он использует метод обучения без учителя для обучения языковой модели. В отличие от других моделей, таких как ELMo и BERT, для которых требуется 2 этапа обучения, а именно предварительное обучение и точная настройка, достаточно было просто передать в модель необработанный текст, поскольку для словаря используется кодирование пар байтов (BPE). В нашей реализации мы решили использовать неконтролируемую модель с меньшим размером 117 миллионов параметров (117M), что составляет примерно одну десятую ее крупномасштабного распределенного варианта.

Мы решили создать микросервис из довольно большой модели с TensorFlow Serving из-за его полной интеграции с моделями TensorFlow и управления версиями моделей. Это гибкая серверная архитектура, известная своей способностью обслуживать высокопроизводительные модели машинного обучения, разработанные для производственных сред. Обслуживание упрощает развертывание новых алгоритмов и экспериментов, сохраняя при этом ту же архитектуру сервера и API. TensorFlow Serving требует, чтобы модель была экспортирована в формат, совместимый с Servable, который в нашем случае был SavedModel. Таким образом, сопоставления определений сигнатур для входных данных GPT-2, таких как токены контекста, температуры и связывания тега с SavedModel, было достаточно для развертывания модели в экземпляре с ускорением на GPU через интерфейс REST TensorFlow Serving.

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

Этот микросервис потреблялся другим сервисом, размещенным на Damjanski, где текст, сгенерированный ИИ, затем занимал место тела в фиксированном шаблоне выставочного заявления, уже заполненном заголовком, средой, и не забывать закрытие в конце .

Сгенерированный текст имел приличное разнообразие по длине, от 50 до 700 слов при этом. Несмотря на хорошие результаты, в тексте было немало проблем с неполными началами и окончаниями предложений. Для этого нам пришлось использовать Punkt Sentence Tokenizer в NLTK, чтобы извлечь все предложения, появляющиеся в абзацах текста, а затем реконструировать результат, вырезая начальные и конечные предложения. Мы решили продвинуть это изменение, чтобы получить ощущение полноты в создаваемом тексте.

Кстати, создатели OpenAI решили предоставить временный доступ к оригинальной крупномасштабной модели с более чем миллиардом параметров небольшому количеству средств массовой информации, таким как Verge и Register, чтобы они могли оценить создаваемый текст. Хотя они выпустили часть кода для общественности с небольшой предварительно обученной моделью, чтобы посмотреть, что люди могут придумать, они решили не делиться ни набором данных, ни источником, который отвечал за полномасштабное обучение модели. Это было сделано в надежде избежать любых участников, будь то хорошие или плохие, от непреднамеренных или потенциально преднамеренных попыток создания ИИ для злонамеренного использования. Это, безусловно, может иметь катастрофические последствия, если попадет в чужие руки, поскольку злоумышленник вполне может использовать его для создания фейковых новостей.

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

использованная литература