Шрифт:
Интервал:
Закладка:
Байесовы сети и Байесова логика названы в честь преподобного Томаса Байеса, британского священника, наследие которого для современной мысли, ныне известное как теорема Байеса, было опубликовано в 1763 г., вскоре после его смерти, его другом Ричардом Прайсом[69]. В своем современном виде, предложенном Лапласом, теорема очень простым способом описывает то, как априорная вероятность — первоначальная степень уверенности в системе возможных гипотез — становится апостериорной вероятностью в результате наблюдения некоторых подтверждающих свидетельств. По мере появления новых свидетельств апостериорность становится новой априорностью, и процесс Байесова обновления повторяется бесконечно. Это фундаментальный процесс, и современное понятие рациональности как максимизации ожидаемой полезности иногда называют Байесовой рациональностью. Предполагается, что рациональный агент имеет доступ к распределению апостериорной вероятности в возможных текущих состояниях мира, а также в гипотезах о будущем с опорой на весь свой прошлый опыт.
Специалисты в области исследования операций, теории управления и ИИ также разработали разнообразные алгоритмы принятия решений в условиях неопределенности, часть которых восходит к 1950-м гг. Эти так называемые алгоритмы «динамического программирования» являются вероятностными родственниками опережающего поиска и планирования и могут генерировать оптимальное или близкое к оптимальному поведение в отношении всевозможных практических задач в финансах, логистике, транспорте и т. д., в которых неопределенность играет существенную рольВ. Задача состоит в том, чтобы ввести их в машины в форме функции вознаграждения, а на выходе получить политику, определяемую как действие в каждом возможном состоянии, в которое агент может себя ввести.
В случае таких сложных задач, как нарды и го, где число состояний колоссально, а вознаграждение появляется лишь в конце игры, опережающий поиск не работает. Вместо него исследователи ИИ разработали метод так называемого обучения с подкреплением. Алгоритмы обучения с подкреплением учатся на непосредственном опыте получения вознаграждающих сигналов из среды, во многом так же, как младенец учится стоять, получая позитивное вознаграждение за нахождение в вертикальном положении и негативное за падение. Как и в отношении алгоритмов динамического программирования, задачей, вводимой в алгоритм обучения с подкреплением, является функция вознаграждения, и алгоритм изучает оценочный модуль ценности состояний (иногда ценности действий). Оценочный модуль может сочетаться с относительно неточным предварительным поиском для генерирования высококомпетентного поведения.
Первой успешной системой обучения с подкреплением являлась шахматная программа Артура Самуэля, ставшая сенсацией после демонстрации по телевидению в 1956 г. Программа училась фактически с нуля, играя сама с собой и отмечая вознаграждения за победы, а также оценивая свои поражения[70]. В 1992 г. Джерри Тезауро применил ту же идею к нардам, достигнув игры уровня чемпиона мира после 1 500 000 матчей[71]. С 2016 г. AlphaGo команды DeepMind и ее наследницы применяли обучение с подкреплением и игру с собой, чтобы научиться побеждать лучших игроков в го, шахматы и сёги.
Алгоритмы обучения с подкреплением могут также научиться выбирать действия на основе восприятия первичных входных данных. Например, разработанная DeepMind система DQN научилась совершенно с нуля играть в 49 видеоигр Atari, в том числе Pong, Freeway и Space Invaders[72]. Она пользовалась только пикселями экрана в качестве входных данных и счетом в игре в качестве вознаграждения. В большинстве игр DQN научилась играть лучше профессиональных игроков, несмотря на то что не имела предшествующего понимания времени, пространства, объектов, движения, скорости или стрельбы. Довольно трудно выяснить, что же в действительности делает DQN, помимо того, что она выигрывает.
Если бы новорожденный научился играть в десятки видеоигр на сверхчеловеческом уровне в первый день жизни или стал чемпионом мира по го, шахматам и сёги, мы заподозрили бы бесовскую одержимость или инопланетное вмешательство. Вспомним, однако, что все эти задачи намного проще реального мира: они полностью наблюдаемы, предполагают короткие временные горизонты, имеют относительно мало статичных пространств и простые предсказуемые правила. Отмена любого из этих условий означает, что стандартные методы не сработают.
Напротив, сегодняшние исследования нацелены именно на выход за рамки стандартных методов, чтобы системы ИИ могли действовать в более широких классах среды. В тот день, когда я писал предыдущий абзац, например, OpenAI объявила, что ее команда из пяти программ ИИ научилась обыгрывать команды опытных игроков в Dota 2. (Для непосвященных, к которым отношусь и я: Dota 2 — обновленная версия «Обороны древних», стратегия в реальном времени из семейства игр Warcraft. На сегодняшний день это самый доходный и конкурентный киберспорт с призами в миллионы долларов.) Dota 2 предполагает коммуникацию, работу в команде и неограниченные время и пространство. Игры длятся десятки тысяч временных шагов, и определенный уровень иерархической организации поведения представляется принципиально важным. Билл Гейтс описал эту новость как «колоссальную веху в создании искусственного интеллекта»[73]. Через несколько месяцев обновленная версия программы победила команду лучших в мире профессиональных игроков в Dota 2[74].
Такие игры, как го и Dota 2, являются отличным способом протестировать методы обучения с подкреплением, поскольку функция вознаграждения заложена в правила игры. Однако реальный мир не столь удобен, и в десятках случаев ошибочное определение вознаграждения ведет к странному и неожиданному поведению[75]. Некоторые ошибки безвредны, например в случае системы эволюционного моделирования, которая должна была эволюционным путем создать быстро движущиеся существа, но на деле сотворила невероятно долговязые существа, которые быстро двигались за счет того, что падали[76]. Есть и менее безобидные ошибки, скажем, оптимизаторы переходов в социальных сетях, превращающие наш мир в кошмар.