понедельник

Компьютер играет в игры и учит языки

Компьютер имеет большие возможности при обработке слов как набора данных. Практически любая программа по обработке текста позволяют пользователю перестраивать и форматировать текст в зависимости от своих  желаний. А после этого поисковая система может быстро найти нужное слово на странице в любом месте в глобальной сети. Но что это на самом деле означает для компьютера? Как машина понимает смысл фразы (англ. sentence), написанной на обычном английском или французском, или русском, или арабском, или мандарин?

Как показывает практика, только пробные испытания могут ответить на вопрос, способен ли компьютер анализировать и следовать набору инструкций при выполнении незнакомой задачи. Поэтому последние несколько лет исследователи из Лаборатории компьютерных наук и искусственного интеллекта (Computer Science and Artificial Intelligence Lab) Массачусетского технологического института в Кембридже, штат Массачусетс, США, начали проектировать систему машинного обучения, которая именно это и делает, и на удивление с хорошим результатом.

В 2009 году на ежегодном собрании Ассоциации компьютерной лингвистики (Association for Computational Linguistics, ACL), исследователь и адъюнкт-профессор компьютерных наук и электротехники в указанной лаборатории Регина Барзилэй (Regina Barzilay) получила награду за систему, которая генерирует скрипты для установки участка программного обеспечения на компьютере Windows посредством изучения инструкций, размещенных на сайте помощи Microsoft. На текущем заседании ACL Барзилэй, ее аспирант С.Р.К. Бранаван и Дэвид Сильвер из Университетского колледжа Лондона применили аналогичный подход к более сложной задаче: научить компьютер играть в компьютерную игру "Цивилизация", в которой игрок направляет развитие города в империи через века человеческой истории. Когда исследователи дополнили систему машинного обучения так, чтобы она могла использовать справочник игрока для направления развития игровой стратегии, то количество побед подпрыгнуло с 46% до 79%.

Начало на пустом месте

Аспирант Бранаван, ставший первым автором на обоих записях ACL, пояснял, что компьютерные игры используются в качестве испытательного стенда (англ. test bed) для искусственного интеллекта по причине их сложности. Оппонент или сама игра могут случайным образом реагировать на то, что делает игрок, поэтому каждое действие, которое игрок выполняет  в игре, не имеет заранее определенного результата. Как говорил Бранаван, нужна техника, которая может работать с очень сложными сценариями, и при этом обладает потенциалом для реагирования случайным образом.

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

Самое удивительное в системе Барзилэй и Бранаван состоит в том, что система начинается практически без предварительного знания о задаче, которая предназначена для выполнения, или о языке, на котором написана инструкция (англ. instructions). Система имеет список действий, которые можно выполнять, как щелчки правой кнопки или левой кнопки мыши, или о перемещении курсора. Также система имеет доступ к информации, отображаемой на экране. Еще система имеет некоторый способ измерения успеха, например было ли установлено программное обеспечение ​или была ли выиграна игра. Но система не знает, какие действия соответствуют словам в наборе команд, и система не знает, какие объекты представлены в игровом мире.

Таким образом, поведение системы изначально становится почти полностью случайным. Но при выполнении различных действий на экране компьютера появляются разные слова и система может искать примеры этих слов в наборе инструкций. Также система может производить поиск по окружающему тексту для связанных слов, а затем разрабатывать гипотезу (англ. hypotheses) о том, какие действия соответствуют этим словам. Те гипотезы, которые постоянно приводят к хорошим результатам, получают больше доверия, а те, которые постоянно приводят к плохим результатам, отбрасываются.

Доказательство концепции

Данная система в состоянии воспроизводить 80% шагов, которые будет выполнять человек, читая ту же самую инструкцию по установке программного обеспечения. В случае компьютерной игры, система выиграла 79% игр, в которых принимала участие. В то же время версии системы, которые не полагаются на письменные инструкции, выиграли только 46% игр. Исследователи также проверили более изысканный алгоритм машинного обучения (англ. machine-learning algorithm), который избегает текстового ввода, но использует дополнительные методы для повышения своей эффективности. Но даже этот алгоритм выиграл только 62% игр.

Университетский профессор компьютерных наук Евгений Черняк ( Eugene Charniak) из Университета Брауна (Brown University), расположенного в Провиденсе, штат Род-Айленд, США, как-то пояснил, что если бы его спросили заранее, мог ли он подумать заранее, что исследователи сумеют сделать это, то он бы ответил, что нет. По его словам, им пришлось создавать там, где очень мало информации об области знаний, но в итоге они получили ключ от самой сферы владения.

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

Большинство сложных компьютерных игр, как например "Цивилизация" (англ. Civilization), включают алгоритмы, которые позволяют игрокам играть против компьютера, а не против других людей. Программист таких игр должен разработать стратегию для компьютера, чтобы машина следовала ей, и написать код, который ее выполняет. Барзилэй и Бранаван полагают, что в ближайшее время их система сможет делать эту работу гораздо проще, автоматически создавая алгоритмы, которые работают лучше, чем созданные рукой человека.

Но главная цель проекта, которая была поддержана Национальным научным фондом (National Science Foundation), являющимся агентством федерального правительства США, было продемонстрировать, что компьютерные системы, способные узнавать значение слова через поисковое взаимодействие с окружающей средой, являются перспективным предметом дальнейших исследований. И действительно, Барзилэй и ее ученики начали адаптировать их алгоритм выведения типа значения для работы с роботизированными системами.

Ссылки

Regina Barzilay's home page  http://people.csail.mit.edu/regina/
Eugene Charniak' home page http://cs.brown.edu/~ec/

Видео


Название: Обзор игры Civilization 5
Канал: sXP35hp
Источник: YouTube