Шрифт:
Интервал:
Закладка:
Обучение в нейронных сетях работает так, чтобы нейроны действовали на разных уровнях. В каждом случае они сохраняют вводные значения некоторого числа нейронов на предыдущих уровнях. Вначале они не знают, что означают эти величины, и поэтому необходима тренировка сети. В каждом упражнении непременно содержится результат, то есть игра заканчивается либо выигрышем, либо проигрышем. При этом взвешивается каждый вводный сигнал, и эта оценка изменяется и уточняется при каждом прохождении. Насколько точно функционируют нейронные сети при игре в го, можно с большим трудом продемонстрировать на 13 уровнях при великом множестве вариантов. Тем более трудно это сделать на маленьком примере, но мы все же попытаемся.
Допустим, нейронной сети надо научиться решать, может ли автомобиль проехать на сигнал светофора или нет. Входных сигналов три – красный, желтый, зеленый. Каждый сигнал имеет два значения – либо 1 (горит), либо 0 (не горит).
На следующем уровне расположены два нейрона, каждый из которых получает один входной сигнал от всех трех источников света. Эти нейроны передают сигнал дальше только в том случае, если сумма входов равна по меньшей мере единице. Верхний сигнал означает: «Проезд запрещен», а нижний сигнал: «Проезд разрешен». Важно здесь следующее: теоретически нейроны могут сообщить об обоих исходах. Сеть не знает, какой из них правильный, а какой – нет.
В примере со светофором верхний нейрон второго уровня быстро обучается тому, что ему нужен только верхний красный сигнал. Если сигнал выдается сверху, второй нейрон передает свой сигнал дальше. Если горит красный сигнал, то совершенно не важно, горит ли при этом желтый свет. В любом случае движение запрещено. Таким образом, вход «красный свет» принимает значение 1, а другие входы значение 0. Нижний же нейрон обучается тому, что внизу достаточно одного зеленого света. Если горит зеленый, то движение разрешено. Таким образом, этот вход тоже принимает значение 1. Дополнительно требуется также вход «желтый». Если горит только желтый, то автомобиль еще может ехать. Таким образом, желтый тоже принимает значение 1. Если же горят одновременно желтый и красный сигналы, то движение запрещается. Красный сигнал принимает значение 1. В нейроне происходит следующее: желтому приписывается значение 1, а красному –1. Один минус один равно нулю, то есть сигнал отсутствует. Таким способом в процессе обучения сеть находит правильные решения.
Сначала все входы равноправны. Сеть всегда выдает решение «ехать» и «стоять», независимо от того, каким цветом горит светофор. Окончательное решение может быть принято либо после обучения, либо посредством обратной связи
При первой попытке оба выхода сообщают свои сигналы. Обратная связь пока не установлена. При следующей попытке происходит настройка оценок. Верхний нейрон поступил правильно? Здесь ничего не меняется. Нижний нейрон ошибся. Оценка изменяется, но пока случайным образом
Так лучше? Верхняя оценка остается неизменной, нижняя находится в процессе коррекции, но общий результат пока остается неверным
Верхний сигнал по-прежнему правильный и остается неизменным. Нижний нейрон делает следующую попытку. Теперь все сходится! Принимается измененная оценка. Далее следует обучение другим (только красный, только желтый, только зеленый) схемам включения светофора
Это окончательная конфигурация. На основании проб и ошибок сеть научилась правильно оценивать схемы включения светофора и может теперь давать правильные ответы
В программе игры в го не один общий вход, а один вход для каждой клетки игрового поля. Здесь работает не один уровень с двумя нейронами, а множество уровней с сотнями нейронов на каждом из них. После нескольких миллионов прохождений сигналов тем не менее возникает сеть, обучившаяся игре в го на собственном опыте. Одни и те же группы исследователей, пользуясь одной и той же программой, смогли обучить компьютер самым разным играм. Можно взять для примера даже компьютерные игры 1980-х. Все входы системы были очень просты – светится данный пиксель экрана или нет, а на выходе имелись различные возможности вести игру, перемещая джойстик. Сеть обладала информацией лишь о правилах игры, но тем не менее могла быстро обучаться выигрышу в многочисленных играх такого рода. Однако этот метод обучения не годился для таких видеоигр, как, например, пакман. Заучить случайные движения героя по лабиринту невозможно. Кто мог подумать, что после поражений в шахматах и го именно пакман станет символом торжества человеческого разума и спасет честь человечества?!
Но, как бы то ни было, это всего лишь начало. Google купила фирму, разработавшую вышеупомянутую методику, отнюдь не для того, чтобы посрамить мастеров игры в го. Речь идет о дальнейшем развитии техники. Эти методы должны помочь в разработке самоуправляющихся автомобилей, которые бы справлялись с требованиями законов о дорожном движении не хуже людей. Эти методы уже позволяют таким автомобилям распознавать по видеоизображениям различные важные объекты – например щиты с дорожными знаками. Эти методы позволят решить многие медицинские проблемы – например распознавать заболевания по анализам крови, по компьютерным изображениям органов и по анализам ДНК быстрее, чем врачи, и решать, требуют эти изменения врачебного вмешательства или нет. Естественно, вводные этих задач значительно сложнее, чем в игре го, где существует четко определенное игровое поле. Сложнее будет и обучение, так как зачастую «правильный» ответ заранее неизвестен. Но лучше становятся не только искусственные нейронные сети; улучшаются также и методы сбора данных. Системы будут лучше обучаться, когда будут созданы банки ДНК миллионов людей и будут определены связи изменений ДНК с теми или иными заболеваниями, которыми страдают люди. Если компьютер сможет самостоятельно определить, что тот или иной участок ДНК подозрителен в отношении какой-то аномалии, то врачи на основании этой информации смогут попытаться выявить причинно-следственную связь аномалии с конкретным заболеванием.
Видимо, сейчас мастера игры в го анализируют свойства программы «Альфа-Го» в предвкушении того, что это поможет им повысить качество своей игры. Посмотрим, подвигнут ли успехи компании Google людей к матчу-реваншу. Но вполне вероятно, что программа уже давно осваивает игру пакман.