Что следует извлечь из этой ошибки? Если бы у вас было точное представление о мире, то в момент съезда с дороги вы бы ожидали еще 30 минут езды. Таким образом, обучение по временной разнице говорит, что вы должны обновить значение состояния, связанного с этим выездом. То есть вы используете информацию, полученную в одном состоянии (пробка на обочине), чтобы обновить свои убеждения о ценности предыдущего состояния (выезд). И это может означать, что в следующий раз, когда вы поедете в этот парк развлечений, вы избежите этого выезда и выберете другой. Но для того, чтобы извлечь уроки из этой ошибки, не обязательно приезжать в парк развлечений на 10 минут позже; достаточно было ожидать, что это произойдет при виде пробки.
Алгоритм Саттона показывает, что путем простого исследования - методом проб и ошибок - люди, животные или даже искусственный интеллект могут в конце концов узнать правильную функцию ценности для тех состояний, которые они исследуют. Все, что для этого нужно, - обновлять ожидания, когда они меняются, - "учиться угадывать на основе угадывания", как описывает это Саттон.
Являясь продолжением работы Беллмана по динамическому программированию, обучение на основе временных разностей имело потенциал для решения реальных проблем. Простое правило обучения "момент за моментом" делало его привлекательным с точки зрения вычислительной техники: оно не требовало такого объема памяти, как программы, которым нужно было хранить весь набор действий, предшествовавших получению вознаграждения, прежде чем учиться на его основе. Кроме того, оно работало. Одним из самых ярких проявлений его возможностей стала TD-Gammon - компьютерная программа, обученная с помощью обучения временным различиям играть в настольную игру нарды. Настольные игры являются особенно полезными тестами для обучения с подкреплением, поскольку вознаграждение часто приходит только в самом конце игры, в виде выигрыша или проигрыша. Использование такого грубого и отдаленного сигнала для управления стратегией на самом первом ходу - сложная задача, но временное разностное обучение может ее решить. Созданная в 1992 году Джеральдом Тесауро, ученым из IBM, система TD-Gammon сыграла сотни тысяч партий против самой себя и в итоге достигла уровня игрока среднего уровня, ни разу не получив инструкций от человека. Поскольку он учился в изоляции, он также разрабатывал стратегии, не опробованные людьми (которые, как правило, под влиянием игрового процесса друг друга придерживаются определенного набора ходов). В итоге необычные ходы TD-Gammon повлияли на теорию и понимание самой игры в нарды.
В 2013 году в прессе появилось еще одно применение метода обучения временным различиям, на этот раз в видеоиграх. Ученые из компании DeepMind, занимающейся исследованиями в области искусственного интеллекта, создали компьютерную программу, которая научила себя играть в несколько игр из аркадной системы Atari 1970-х годов. Этот искусственный геймер получил полный опыт игры в Atari. Единственными входными данными для алгоритма были пиксели на экране - ему не было дано никаких специальных знаний о том, что некоторые из этих пикселей могут представлять собой космические корабли, биты для пинг-понга или подводные лодки. Действия, которые он мог выполнять, включали в себя стандартные кнопки: вверх, вниз, влево, вправо, A, B; а наградой для модели служила оценка, которую давала игра, в которую она играла. Поскольку в этом случае перед алгоритмом ставилась более сложная задача, чем в нардах, где, по крайней мере, понятия фигур и расположения заложены в исходные данные модели, исследователи объединили обучение временной разности с глубокими нейронными сетями (метод, с которым мы уже сталкивались в главе 3). Одна из версий этой глубокой нейронной сети насчитывала около 20 000 искусственных нейронов и после нескольких недель обучения достигла производительности на уровне человека в 29 из 49 протестированных игр. Поскольку этот алгоритм Atari также обучался асоциально, в итоге у него появились некоторые интересные причуды, в том числе он обнаружил хитроумный трюк для прохода сквозь стену в игре Breakout, где нужно разрушать кирпичи.
Игры - это яркий и забавный способ продемонстрировать возможности такого подхода, но на этом его применение не закончилось. После того как в 2014 году компания Google приобрела DeepMind, она поставила перед алгоритмами обучения с подкреплением задачу минимизировать энергопотребление в своих огромных центрах обработки данных. В результате было достигнуто 40-процентное снижение потребления энергии для охлаждения центров и, вероятно, экономия в сотни миллионов в течение нескольких лет. Алгоритмы обучения с подкреплением, ориентированные на достижение поставленной цели, находят творческие и эффективные решения сложных задач. Таким образом, эти инопланетные разумы могут помочь разработать планы, до которых человек никогда бы не додумался.