Глава 8
Награды для роботов
Собирая материал для своей книги о дрессировщиках экзотических животных, журналистка Эми Сазерленд узнала, что основной метод их работы до нелепого прост: “поощрять хорошее поведение и игнорировать плохое”. В колонке “Современная любовь” в The New York Times она написала: “В конце концов я поняла, что такая техника может сработать также с упрямым, но милым видом, мужем американским”. Сазерленд рассказала, как после многих лет тщетных придирок, сарказма и обид использовала этот простой метод, чтобы тайком научить ни о чем не подозревающего мужа не разбрасывать носки, самостоятельно находить ключи от машины, вовремя приезжать в ресторан и регулярно бриться[177].
Эта классическая техника дрессировки, в психологии называемая оперантным обусловливанием, столетиями применяется к животным и людям. Оперантное обусловливание вдохновило важный метод машинного обучения, называемый обучением с подкреплением. Обучение с подкреплением отличается от обучения с учителем, которое я описала в предыдущей главе: в чистой форме обучение с подкреплением не требует размеченных обучающих примеров. Вместо этого агент – обучающаяся программа – совершает действия в среде (обычно в компьютерной симуляции) и время от времени получает сигналы подкрепления, или награды. Эти промежуточные сигналы подкрепления – единственная обратная связь, которую агент использует для обучения. Для мужа Эми Сазерленд сигналами подкрепления были ее улыбки, поцелуи и похвала. Хотя компьютерная программа, возможно, не станет реагировать на поцелуи или искреннее “ты лучше всех”, ее можно научить реагировать на машинный эквивалент такой признательности – например, на положительные числа, добавляемые в ее память.
Несмотря на то что обучение с подкреплением много десятков лет входило в инструментарий ИИ, долгое время оно оставалось в тени нейронных сетей и других методов обучения с учителем. Все изменилось в 2016 году, когда обучение с подкреплением сыграло ключевую роль в поразительном и судьбоносном прорыве ИИ – программе, которая научилась побеждать мастеров сложной игры го. Чтобы объяснить эту программу, а также рассказать о других недавних достижениях обучения с подкреплением, я сначала приведу простой пример, показывающий, как оно работает.
Дрессировка собаки-робота
Для примера рассмотрим веселую игру в футбол для роботов, в рамках которой люди (обычно студенты) программируют роботов для игры в упрощенную версию футбола на “поле” размером с комнату. Иногда игроками становятся милые собаки-роботы Aibo, как на рис. 22. Робот Aibo (производимый Sony) оборудован камерой, чтобы получать зрительные входные сигналы, встроенным программируемым компьютером и целым набором датчиков и моторов, позволяющих роботу ходить, пинаться, бодаться и даже вилять своим пластиковым хвостом.
Допустим, мы хотим научить собаку-робота простейшему футбольному навыку: увидев мяч, подходить и пинать его. Если следовать традиционному методу ИИ, необходимо запрограммировать в робота следующие правила: сделай шаг к мячу; повторяй, пока одна из твоих лап не коснется мяча; пни мяч этой лапой. Само собой, краткие описания вроде “сделай шаг к мячу”, “пока одна из твоих лап не коснется мяча” и “пни мяч” необходимо аккуратно перевести в серию детализированных сенсорных и моторных операций, доступных Aibo.
Рис. 22. Собака-робот Sony Aibo играет с роботизированным мячом
Таких четко прописанных правил может оказаться достаточно для выполнения столь простой задачи. Однако чем более “разумным” вы хотите сделать своего робота, тем сложнее вручную прописать правила его поведения. И, конечно, невозможно разработать набор правил, подходящих для любой ситуации. Что, если между роботом и мячом окажется большая лужа? А если тренировочный конус перекроет роботу обзор? А если камень не позволит сдвинуть мяч с места? Как всегда, реальный мир полон пограничных случаев, прогнозировать которые очень сложно. Обучение с подкреплением дает надежду, что агент – в данном случае собака-робот – самостоятельно овладеет гибкими стратегиями поведения, просто выполняя определенные действия и время от времени получая сигналы подкрепления, а людям не придется вручную прописывать правила или непосредственно учить агента, как действовать в любых возможных обстоятельствах.