Мозг напрокат. Как работает человеческое мышление и как создать душу для компьютера | страница 15
Часто, при применении генетического алгоритма, для ускорения его работы используют скрещивание исходных сетей (называя при этом исходные сети хромосомами). Я считаю, что это не очень корректный подход. Как и отождествление матрицы весов нейронной сети с хромосомами. Дело в том, что при скрещивании на уровне реальных хромосом происходит обмен генами, каждый из которых является носителем определенного свойства. Результирующий ген получается «осмысленным». При скрещивании нейронных сетей происходит обмен весами, которые являются частью «осмысленных» конструкций. При этом, если скрещиваемые нейронные сети далеко разошлись друг от друга — результат будет «бессмысленным», если же они не далеко разошлись друг от друга, то это подмена алгоритма мутации.
Каждое свойство, которое приобретается по ходу эволюции, оказывается «выгодным» для его носителя на тот момент, когда оно возникает. Но, возникнув и закрепившись, оно служит фундаментом для появления новых свойств. В итоге далеко не всегда понятен смысл тех или иных информационных достижений. Далее в этой книге мы будем неоднократно разбирать разные эволюционные загадки.
Рассмотрим для примера несложную эволюционную головоломку. Почему человеку, чтобы научиться ходить, нужен год, а котятам три недели?
Ходьба человека не сложнее ходьбы кошки, поэтому причину следует искать не в более сложном устройстве двигательной системы человека. Причина проста. Система инстинктов у человека значительно сложнее, чем у кошки, а значит, и формируется значительно дольше. Если бы ребенок начал ходить слишком рано, многократно бы возросли риски упасть куда-либо или попасть в иную неприятность. Оказалось эволюционно выгодно «<отложить» начало ходьбы ребенка до момента более полного формирования инстинктов, способных его уберечь от различных неприятностей.
Эволюция нейронных сетей
Ранее мы говорили об искусственных нейронных сетях, предназначенных для решения какой-либо специализированной задачи. В основном это задачи классификации (распознавания образов). При этом рассматривались алгоритмы, которые позволяли «обучить» нейронную сеть, состоящую из относительно небольшого числа нейронов (например нескольких сотен). Каждый из алгоритмов не гарантировал оптимального результата и содержал определенный элемент «шаманства». Обученная нейронная сеть представляла при этом «вещь в себе», и в этом случае крайне трудно анализировать смысл весов того или иного нейрона и значение его связей. «Смысл» появлялся только у всей сети целиком — как у инструмента, созданного для решения определенной задачи. Природа строила нейронные сети без «понимания» их конечной цели. Просто в результате мутаций появлялись нейроны с новыми свойствами, увеличивалось их количество, возникали новые связи. Иногда это случайно приводило к появлению новых полезных качеств организма.