Машинное обучение применительно к игре престолов


Никто не хочет, чтобы любимый сериал закончился. Некоторые, например, фанаты Pachyderm, приложили немало усилий, чтобы продлить срок его жизни, вплоть до использования ML для служения Железному трону.

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

Но прежде всего, что такое толстокожий и откуда взялось это слово?

Пахидерм — это прямой перевод греческого слова «παχύ-δερμο», что означает «толстокожий», ссылаясь на слона на их логотипе. Сам слон используется для обозначения связи толстокожих с Hadoop, еще одним логотипом слона, но выдавая себя за его более новый и лучший аналог.

Pachyderm, как и Hadoop, представляет собой аналитический движок, который следует той же философии, но создан для того, чтобы работать там, где Hadoop терпит неудачу. Таким образом, вместо написания заданий на Java и их выполнения на JVM он использует контейнеры Docker, развернутые в Kubernetes, которые могут содержать задания, написанные на любом языке. Вместо HDFS он использует файловую систему Pachyderm, а вместо MapReduce использует конвейеры Pachyderm для объединения контейнеров в конвейер, как показано в этом примере GoT ML. Для получения дополнительной информации о последнем выпуске см. Pachyderm Gets Faster And Gets Funding.

Цель Pachyderm — дать возможность программистам, не знакомым с MapReduce или Java, писать свои аналитические приложения с помощью любого инструмента, который они считают подходящим, поскольку такие разработчики могут обрабатывать свои большие данные, не требуя специальных ноу-хау, поэтому Pachyderm позиционирует себя как гораздо более доступный вариант, чем Hadoop.

Пример GoT включает развертывание Pachyderm в качестве контейнера в Kubernetes на AWS S3 Bucket и репозитория, содержащего используемые данные ввода / вывода.

Входные данные — это предварительно обработанные сценарии GoT из 1 сезона 1 сезона. Они были помечены, чтобы помочь используемой рекуррентной нейронной сети различать диалоги и другие элементы сценария, рассматриваемые как «экспозиция», в основном указания сцены и настройки контекста:

Первая сцена начинается с трех рейнджеров, которые едут через туннель, покидают стену и уходят в лес (жуткая музыка на заднем плане) Один рейнджер разделяется и находит лагерь, полный изуродованных тел, включая ребенка. висит на ветке дерева Вид с высоты птичьего полета показывает тела, расположенные в виде щита Рейнджер возвращается к двум другим WAYMAR_ROYCE What d ‘вы ожидаете, <вопрос> Они дикари Одна партия крадет козу с другой, и, прежде чем вы это узнаете, они разрывают друг друга на куски БУДЕТ Я никогда видел, как одичалые делают что-то подобное Я никогда не видел ничего подобного, никогда в своей жизни WAYMAR_ROYCE Как близко вы подошли к WILL Близко, как и любой человек GARED Нам следует вернуться к стене ROYCE Тебя пугают мертвые, <вопрос> GARED Ou Было приказано выследить одичалых Мы выследили их Они больше нас не побеспокоят ROYCE Ты не думаешь, что он спросит нас, как они погибли <вопрос> Садись на лошадь ГАРЕД ворчит

Pachyderm берет эти локально сохраненные данные и запускает первый конвейер, передавая данные в контейнер, в котором запущен TensorFlow для обучения модели. После обработки TF записывает выходные данные модели, а также файлы, специфичные для TF, обратно в репо.

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

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

Репозиторий проекта на Github содержит сценарии, созданные с низкой точностью модели, что неплохо, поскольку весь процесс длился менее часа, и, хотя они не выиграли Эмми, они представляют собой значительный подвиг в передаче стиля, поскольку они отражают «самую суть» Получил.

[ОЛЕННА]: Тогда где она будет служить этому Великому Мейстеру и девяти мужчинам? И вскоре нам нужно передать это мужчине, который носил одежду на стенах. . [CERSEI]: Мир не живет там. . [CERSEI]: Дом. Ой . . {{МАСТЕР УНЕЛЛА берет листья, торговцы снова толкают}} [СЭМ]: Не заставляет меня проснуться, если я не спрашиваю женщину, что лучше тюрьмы {{Что-то движется вместе с Бронном и сканирует в другую сторону, где Джон хватает свой меч и добавлен в главный спектакль жизни актера. Внутри, после нескольких таких сокращений, мы попадаем в Дейенерис, которая, кажется, останавливается. }}. [LADY_CRANE]: показывать Ser позже. Пусть научит его. У меня всегда есть знамена к югу от моей жизни, Мерин. . {{Станнис убегает, а Мелисандра входит в дверь лифта, без улыбок). }}.

Эта нейронная сеть не знала английского языка, не говоря уже о грамматике, но она уловила некоторые элементы структуры:

он узнал, что каждая строка — это либо устная, либо изложение

он узнал, что разговорные строки начинаются с имени

он узнал, какие слова были именами; он узнал, как открывать / закрывать скобки вокруг имени; он выучил типы слов (глаголы настоящего времени, существительные I / you), используемые в устных строках

он узнал, как открывать / закрывать скобки для строк экспозиции он узнал, какие типы слов (от третьего лица) используются

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

Скажите, почему бы не позволить Сети написать 9-й сезон и не порадовать всех?


Добавить комментарий