Могут ли роботы рассказывать истории? В некотором смысле, да. Мы гораздо чаще увидим роботов-детских стишков, чем робота Шекспира.
Суперкомпьютеры могут побеждать людей в таких играх, как шахматы или го, но они не проявляют особых способностей к одной из отличительных способностей человечества: рассказыванию историй.
Марк Ридл, адъюнкт-профессор Технической школы интерактивных вычислений Джорджии и директор Лаборатории развлекательной разведки, потратил годы на изучение этого фундаментального различия между искусственным интеллектом и искусственным интеллектом. и людей, и как можно обучить нейронные сети писать хорошие истории.
Я поговорил с Ридлом о его исследованиях нейронных сетей и о том, как автоматическое создание историй может использоваться в будущем.
Не могли бы вы рассказать немного о ваших исследованиях в области автоматического создания историй?
В последние несколько лет мы рассмотрели вопрос о том, как [нейронные сети] могут рассказывать истории о реальном мире? Итак, [как нам заставить] компьютер рассказать историю о чем-то, что могло бы произойти в реальном мире, а это очень сложный мир. Для этого мы обращаемся к машинному обучению, нейронным сетям - вещам, в которых мы могли бы просто ввести множество историй и попытаться заставить нейронную сеть изучить модель для нас.
Большое видение состоит в том, что я хотел бы иметь возможность вводить большое количество историй в компьютерную программу, чтобы она узнала, как устроен мир - или, по крайней мере, как устроены миры историй - и затем быть в состоянии создавать новые истории, которые отличаются от историй, которые он читал, которые являются правдоподобными.
Какой процесс проходит нейронная сеть, чтобы узнать о мирах историй?
Я бы сказал, что любой вид машинного обучения - и нейронные сети - лишь одна из его разновидностей - сводится к поиску закономерностей. Поэтому, когда вы видите, как две вещи происходят снова и снова, вы начинаете предполагать, что имеет место какая-то закономерность.
Итак, нейронная сеть снова и снова просматривает истории, пытаясь сказать: «Ну, одни предложения следуют за другими чаще, чем нет?» Или определенные слова, буквы или символы - или любой другой уровень абстракции, с которого вы хотите начать.
Затем узоры становятся все более и более изощренными. Итак, [сеть] заметит, что за этим паттерном следует тот паттерн, и тогда вы сможете думать об этом как о иерархическом росте этого паттерна.
Итак, нейронная сеть в основном изучает эти статистические закономерности, и к тому времени, когда все это будет сделано, у нас будет то, что называется моделью.
И затем, если модель хороша, я должен иметь возможность обратить процесс вспять, и если я что-то попрошу, модель должна быть в состоянии сказать мне, что будет дальше, и после этого, и после этого. Итак, он начинает излагать шаблоны, которые ему нравятся больше всего, и если это текст, мы можем назвать это историей.
В своем Твиттере вы упомянули, что хотите обучить нейронные сети, чтобы они узнавали о создании историй и, в конечном итоге, о социокультурных традициях и морали. Можно поподробнее?
На самом деле это два аспекта одного и того же, потому что научиться рассказывать истории - это, по сути, узнать о закономерностях жизни. Представьте себе простую ситуацию, например поход в ресторан.
Рестораны часто встречаются в историях. Они также часто случаются в реальном мире. Итак, когда мы говорим о том, как научиться рассказывать истории, в некотором смысле мы пытаемся узнать, как устроен мир. Что мы также изучаем, так это социальные условности.
Вопрос типа «Что мне делать, когда я захожу в ресторан?» на такой вопрос нейронная сеть должна быть в состоянии ответить.
Примените это к робототехнике. Поэтому мы хотим, чтобы роботы могли делать то же, что и люди. Мы задаемся вопросом, могут ли роботы научиться вести себя как люди в социальных сетях.
В этом смысле я думаю об этом как об изучении правил общества. И я думаю, что это важно по многим причинам. Во-первых, в обществах действуют разные наборы правил. Так что подумайте о том, чтобы пойти в ресторан в Европе, а не в Америке. Протокол немного другой. Но также, если вы думаете о том, почему существуют эти социальные протоколы, они часто существуют для предотвращения конфликтов между людьми.
Другой пример: Почему мы стоим в очереди на почте? Потому что кто-то расстроится, если мы этого не сделаем, и это может привести к драке. Так что мы просто автоматически следуем соглашению, не задумываясь о том, почему мы это делаем. Так что в этом смысле мы также потенциально обучаем роботов и ИИ. системы, как избежать конфликтов.
Что можно сказать о компонентах рассказа, таких как тема, мотив и символика? включить эти тонкие идеи?
Это определенно еще дальше, поскольку они представляют собой паттерны более высокого уровня. И хотя теоретически [нейронные сети] должны быть в состоянии изучать шаблоны все более и более сложных процессов, мы, очевидно, начинаем с самого базового уровня.
Но в целом я думаю, что эти модели повествования возникают из культурных условностей более низкого уровня. Таким образом, у нас есть такие идеи, как «добро побеждает зло», из-за скрытого желания [человечества] олицетворять хорошие ценности и плохие ценности, которое проистекает из повседневной жизни.
Я думаю об этом как о восхождении по лестнице все большей и большей сложности. Эти шаблоны не были созданы сверху вниз, а возникли снизу вверх. Поэтому нам также нужно изучать их снизу вверх.
Где мы можем ожидать следующую крупную инновацию в автоматизированной истории со стороны потребителя?
Индустрия компьютерных игр не очень быстро приняла методы искусственного интеллекта, которые могут работать на уровне сюжета. Поэтому их не особенно интересуют сюжетные линии, разработанные искусственным интеллектом. И тому есть множество причин. Во-первых, это представляет определенный уровень риска. Мы действительно еще не знаем, как создавать действительно хорошие истории с помощью компьютеров.
Ты имеешь в виду риск как по сюжету может оказаться мусором?
Да, именно. Или он что-то испортит, и тогда люди возненавидят игру. Или игра будет ненадежной.
На горизонте есть определенные приложения, для которых генерация историй более податлива. Я думаю о более открытых виртуальных реальностях, где не обязательно присутствует сильный игровой элемент, а скорее пребывание в мире, населенном множеством других людей, некоторые из которых являются людьми, а некоторые - системами ИИ. Так что подумайте о населении очень-очень больших миров синтетическими персонажами, у которых есть небольшая предыстория, чтобы они не были просто картонными формочками для печенья, которые вы сейчас видите в компьютерных играх.
Одна из наиболее перспективных областей, на мой взгляд, - это импровизационное повествование. В том же смысле, что и театральная импровизация, когда человек и компьютер могут просто сесть и начать нести чушь и придумывать истории.
Как это будет выглядеть?
Знаете ли вы сериал «Чья это линия?»?
Ага
Иногда такие игры, верно, вроде игр-рассказчиков, вроде спасения кота с дерева, звучат очень просто, пока один из участников не говорит: «О нет, лестница сломана!» И тут кто-то другой говорит: «Я возьму катапульту!» Итак, вы постоянно пытаетесь сделать историю все более и более абсурдной.
Теперь представьте, что вы делаете это не только между двумя людьми, но и с компьютером, пытающимся добавить в историю интересных деталей, который также может реагировать на ваши интересные повороты.
Что-то похожее на комедию, стоящую за продуктами нейронных сетей. Вы знакомы с блогом Джанель Шейн?
Да, я хорошо ее знаю - по Твиттеру.
У нее были довольно забавные результаты обучения нейронных сетей таким вещам, как изобретение кулинарных рецептов. Считаете ли вы это забавным, и если да, то почему?
Для меня это и смешно, и немного грустно. Это непреднамеренный тип юмора. Это буквально потому, что в модели есть ошибка, которую изучает нейронная сеть. Правильно, у него есть выбор: «Я ставлю А, и я могу следовать за А с N, или С, или L, или Q» - верно? А потом он просто не знает, в чем разница, поэтому выбирает случайным образом.
Поэтому, когда он собирает эти вещи вместе, и получается довольно весело, это потому, что он буквально просто запутался. Но он натыкается на то, что мы узнаем.
Например, название имеет смысл?
Верно. Для нас это имеет смысл, потому что у нас есть все это семантическое понимание, и мы понимаем эти два слова, и мы пытаемся заполнить пробелы относительно того, почему эти две вещи могут сочетаться. Нейросеть об этом не думает. Он просто думает: «Статистически я мог бы поставить это слово после этого слова. Это так же хорошо, как и любое другое предположение.” Значит, он не понимает, что это смешно.
Говоря о различиях между искусственными нейронными сетями и человеческим мозгом, проливает ли изучение нейронных сетей свет на человеческий мозг или человеческую жизнь в целом, или это яблоки и апельсины?
Нейронные сети вдохновлены человеческим мозгом, но сходство заканчивается довольно быстро. Поэтому я не думаю, что нейронные сети многое узнали о том, как работает человеческий разум.
Что мне кажется интересным, так это данные. Данные на самом деле являются абстракцией того, что происходит в реальном мире. Поэтому, когда какая-либо система машинного обучения изучает шаблон, вы можете как бы подумать и сказать: «Ну, верно ли это для человеческого поведения?» Потому что иначе этой модели не существовало бы. Таким образом, это проливает свет на некоторые вещи, и вы действительно можете узнать кое-что о человеческом поведении, прогоняя данные через программы поиска паттернов и ища статистические корреляции.
Как вы думаете, мы когда-нибудь увидим видеоигру, в которой каждый игрок проживает уникальную, автоматически сгенерированную историю, удовлетворяющую повествованию?
К этому стоит стремиться. Я думаю, это зависит от сложности сюжета. У нас есть техники, которые могут рассказывать довольно приличные истории, по крайней мере, с точки зрения компьютерной игры - здесь нет особо сложных историй. И мы можем рассказать множество вариаций этих историй.
Итак, я думаю, что в ближайшем будущем мы можем получить полностью сгенерированные компьютерные игры, которые будут достаточно хороши и уникальны, но с ограниченным набором персонажей и миром ограниченного размера.
Каждый может иметь свою маленькую версию Красной Шапочки. Вы как бы знаете, чего ожидать, но каждый раз все будет по-другому.
Верно
Задача, которую я сейчас решаю с WikiPlots и другими вещами, заключается в том, что я хочу построить модели всех возможных историй, которые могут произойти в мире, или очень большого количества историй. Это все равно, что сказать: «Сегодня я хочу стать рыцарем. А завтра я хочу быть солдатом Второй мировой войны. А на следующий день я хочу сняться в собственном комедийном сериале». И это гораздо, намного, намного сложнее решить проблему, до такой степени, что я не знаю, увидим ли мы это в ближайшие 5-10 лет.
Можете ли вы уточнить идею сложности модели?
Я думаю об этом так: «Насколько сложен вымышленный мир?» В этих очень простых мирах, которые иногда называют микромирами или игрушечными мирами, есть очень много персонажей, эти персонажи могут делать так много вещей, они могут отправиться в самые разные места. Таким образом, вы можете как бы перечислить все различные вещи, которые могут произойти. Вы можете записать эту модель от руки.
Потому что параметры так ограничены?
Верно. Итак, я знаю, что в «Красной шапочке» четыре персонажа, и эти персонажи могут ходить куда угодно, они могут носить корзины, они могут разговаривать друг с другом, они могут есть друг друга, они могут бить друг друга ножами.
Вы можете реалистично записать «правила» этого мира историй. И затем алгоритм, который создает новые истории, является просто правдоподобной комбинацией всего того, что я только что записал.
Но в реальном мире существует бесконечное количество возможностей. Будет ли то же самое в этом вымышленном мире?
Технически он может быть бесконечным, но бесконечным в неинтересных отношениях. Итак, сказка, в которой Красная Шапочка идет к бабушке, потом обратно в свой дом, потом обратно в бабушкин дом, - сказка, в которой они ходят туда-сюда трижды.
На самом деле существует более ограниченный набор действительно разных результатов.
В каких приложениях следует ожидать появления технологий такого типа в первую очередь?
Я думаю, вы могли бы начать видеть это в VR, в смысле предысторий персонажей, о которых мы говорим. Я думаю, что это относительно безопасное приложение, в том смысле, что если вы облажаетесь, это не так уж и плохо.
Где я думаю, что наиболее привлекательные случаи применения связаны с образованием и обучением. Представьте себе интерактивные словесные головоломки или математические задачи, в которых история постоянно меняется или продолжает развиваться сама по себе. Есть способ использовать историю, чтобы вовлечь людей в упражнения.
Или сценарии военной подготовки. Если сценарии военной подготовки постоянно обновляются, у вас будет бесконечное количество учебных сценариев, которые вы можете выполнить перед развертыванием.
Мое исследование больше направлено на то, чтобы «быть в состоянии рассказать мне историю на любую тему». Так что это типа «Расскажи мне ситком, расскажи мне сказку».
Я хочу, чтобы [нейронная сеть] могла узнать как можно больше обо всех аспектах реального мира в одной модели, все сразу, чтобы она имела максимальную гибкость, когда ее просят Расскажи историю.
И это подпитывает то понятие импровизации, о котором я говорил, потому что в импровизации происходит следующее: «Расскажи мне историю, но измени это или сделай это. Или что, если рыцарь действительно был лесорубом? Так что [ИИ] должен понять, что значит для дровосека оказаться в подобной ситуации.
И это все очень вдохновляет. Вероятно, я буду работать над этим еще лет 5-10.
Через 5-10 лет потребители могут рассчитывать на доступ к этим типам приложений или, по крайней мере, к их рудиментарным версиям?
Да, в том смысле, что мы могли бы чувствовать себя комфортно, перенеся это из исследовательской лаборатории в приложение.