Создание поэзии династии Тан с использованием OpenAI GPT2

Мне всегда нравились переводы китайской поэзии - я не специалист в этой области, но есть два поэта по имени Ду Фу и Ли Бай, которые мне очень нравятся. Они были легендарными мастерами времен Великой династии Тан и (если перевод точен) обладали феноменальным талантом останавливать мгновение и улавливать этот конкретный отрезок времени своими словами; их стихи читаются как полароидные снимки, натянутые на берегу реки.

Вот, например, стихотворение Ду Фу. Среди прочего, здесь есть определенная простота: одна сильная эмоция резонирует, и, в отличие от большей части английских стихов, на которых я вырос, она твердо находится в настоящем времени:

ДОЛГОЕ ПОДЪЕМ

В резком шторме с широкого неба скулят обезьяны,
Птицы летят домой над чистым озером и белым песком,
Листья падают, как брызги водопада,
Пока я смотрю длинная река всегда течет.
Я приехал за три тысячи миль отсюда. Теперь грустно осенью
И со своими столетними горестями я взбираюсь на эту высоту в одиночку.
Бедствие положило горький мороз на мои виски,
Боль в сердце и усталость - густая пыль в моем вине.

Думаю, поэтому меня это привлекает - здесь есть редкая ясность, даже если перевод может быть неточным.

Так что поэты Тан казались подходящим местом для начала моего эксперимента с искусством, созданным машинами (кроме того, превосходный GWERN уже делал обычный английский [1]). Прямо сейчас я ускользнул на несколько часов от своих статистических моделей, чтобы взглянуть на код, который я установил для запуска сегодня утром.

Среди тех из нас, кто работает с машинным обучением, работа, которую я вложил в весь этот проект, тривиальна: крошечный набор данных, чашка кофе, несколько строк кода Python и одна сигарета, пока я ждал трансформатора OpenAI - модель генерации на основе [2] скачать.

Модель OpenAI, как и большинство нейронных сетей, можно рассматривать как грубый аналог человеческого мозга - совокупность искусственных нейронов, натянутых на слои, которые загораются, когда фрагменты мыслей (входные данные) проходят между одним слоем и другим. Мы учим его, указывая на что-то и приказывая произвести нечто подобное. Руководители OpenAI постановили, что их полная модель слишком сложна и похожа на человеческую, чтобы ее выпускать - Бог знает, что люди могут с ней делать в наш век фальшивых новостей - и поэтому они ударили в барабан и выпустили лишь крошечный, дочерняя версия их зверя, GPT2 117M.

Независимо от того. Воспользуемся ребенком. Я настроил его на тренировку на сборнике стихов Тан, и, учитывая мои личные предубеждения, Ли Бай и Ду Фу занимают здесь видное место. Он переварил и выплюнул мне несколько стихов, и я, выступая в роли младшего редактора в газете, просматриваю копию, сданную новым журналистом.

Вот наши первые результаты: шесть стихотворений, отобранных вручную из десяти попыток. Мои правки заключались в том, чтобы удалить не более двух строк в стихотворении.

БЕСКОНЕЧНЫЙ ГОД I

Я бесконечно мечтаю
оказаться в Баок Ша.
… Насекомые жужжат осенью у золотых полей колодца;
Тонкий иней блестит, как маленькие зеркала, на моем холодном коврике;
Мелькает высокий фонарь; а также. все глубже растет мое желание.
Я приподнимаю тень и, вздыхая, смотрю на луну,
Единственный, как цветок, в центре облаков.
Вверху я вижу голубизну и глубина неба.
Внизу я вижу зелень и беспокойство воды….
Небо высоко, земля широкая; горькое между ними летит моя печаль.
Могу ли я мечтать через врата, над горой?
Бесконечная тоска
Разбивает мне сердце.

БЕСКОНЕЧНЫЙ ГОД II

Солнце село, и туман окутывает цветы;
И луна становится очень белой, и люди грустят и не спят.
Если бы она могла следовать за весенним ветром на гору Янран.
С тех пор, как никто не сможет нести бремя моей песни,
Я думаю о тебе далеко, за синим небом,
И мои глаза, которые когда-то искрились
Теперь превратились в кладезь слез. < br />… О, если ты когда-нибудь сомневаешься в этой боли в моем сердце,
Вот, в моем ярком зеркале, вернись и посмотри на меня!

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

ТРУДНАЯ ДОРОГА

Я бы переправился через Хуанхэ, но паром заглушил лед;
Я бы взобрался на горы Тайхан, но небо слепо от снега ...
Я бы сидел и держал удочку, ленившись ручей -
Но мне вдруг снится покататься на лодке, плыть к солнцу….
Путешествовать тяжело,
Есть много поворотов -
Куда мне идти?….
Когда-нибудь я поднимусь на долгий ветер и разобью тяжелые волны
И поставлю мой облачный парус прямо и проложу мост через глубокое, глубокое море.

ВНИЗ ГОРЫ ЧЖОННАНЬ

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

На мой нетренированный взгляд модель GPT2–117M более эффективно улавливает «форму» танской поэзии. Некоторые фразы наизусть неизбежны, учитывая, насколько мал этот набор данных, но я удивлен, насколько их мало. С помощью нескольких аккуратных сокращений - линии, обрезанной кое-где, - я могу передать впечатление одной всеобъемлющей эмоции. Я особенно горжусь этим:

ПЛАЧЕНИЕ НАПАДАЮЩЕГО ИМПЕРАТОРА

Солдаты отправляются на север, чтобы охранять Город Шелка
И на восток, чтобы принять дождь с Копий Небес.
Юг проходит по стене, звезды поднимаются,
И наши следы - три в сотне миль отсюда.
Как я выдержу, чтобы их смести?
Люди забыли исчезнувшую реку ...
Кто знает, жива ли она?
... Кто знает если бы это было когда-нибудь?

Эти две последние строчки, я должен подчеркнуть, определенно не мои.

Есть человек, к которому я постоянно возвращаюсь всякий раз, когда вижу что-то подобное, и это шахматист Гэри Каспаров. Каспаров, возможно, величайший шахматист из числа людей, которых мы когда-либо видели; с 1986 по 2005 год он был лучшим игроком в мире.

В 1997 году Каспаров потерпел поражение от машины - IBM Deep Blue. Этот ход изменил историю шахмат [3], и, оглядываясь назад, я думаю, что именно здесь страх «человек против машины» действительно поразил нас. С тех пор шахматисты - люди - терпели поражение от машин.

Что сделал Каспаров? Каспаров ушел и занялся компьютерными шахматами. Он взял человека против машины и сделал его человеком + машиной. Его диссертация находится в названии его выступления на TED Talk: «Не бойтесь интеллектуальных машин; работать с ними »[4]. Сегодня некоторые из самых могущественных игроков в мире - это киборги - комбинация людей и машинного интеллекта - и их чертовски трудно победить [5].

Я верю в эту философию человек + машина. В течение следующего года я собираюсь провести еще несколько небольших экспериментов в этом направлении. Посмотрим, к чему это нас приведет.

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

Изначально это было размещено на http://yudhanjaya.com/2019/04/the-poetry-machine/. В этой статье раньше читалось GPT 2 110M вместо 117M - это было исправлено.

[1] https://www.gwern.net/RNN-metadata#finetuning-the-gpt-2-small-transformer-for-english-poetry-generation

[2] https://openai.com/blog/better-language-models/

[3] https://www.chess.com/article/view/deep-blue-kasparov-chess

[4] https://www.ted.com/talks/garry_kasparov_don_t_fear_intelligent_machines_work_with_them?language=en

[5] http://www.bbc.com/future/story/20151201-the-cyborg-chess-players-that-cant-be-beaten