Нейронные сети_ИИ_Мозг роботов
ФУНКЦИОНИРОВАНИЕ СЕТИ, СОСТОЯЩЕЙ ИЗ ИСКУССТВЕННЫХ НЕЙРОНОВ
Каждый нейрон располагает некоторой внутренней памятью (представленной текущими значениями весов и порога), а также определенными возможностями преобразования входных сигналов в выходной сигнал. Несмотря на сильную ограниченность этих возможностей (благодаря которой нейрон оказывается относительно недорогим процессором, и мы можем строить сети из сотен или тысяч таких элементов), они оказываются достаточными для построения систем, способных решать очень сложные задачи обработки данных.
Поскольку информационные ресурсы каждого отдельного нейрона в сети всегда ограниченны (ведь единственный нейрон имеет немного настраиваемых весов), а вычислительные возможности такого "одиночки" весьма слабы (только агрегирование сигналов и расчет выходного сигнала), нейронная сеть чаще всего должна состоять из большого числа нейронов и может функционировать только как единое целое. Следовательно, все возможности и свойства нейронных сетей представляют собой результат коллективного функционирования очень многих объединенных между собой элементов (всей сети, а не отдельных нейронов). В связи с этим представляется вполне обоснованным использование термина МРР (Massive Parallel Processing — Массовая параллельная обработка), которым иногда называется вся наша область информатики.
Обратимся ненадолго к работе сети в целом. Из сказанного выше следует, что и программа функционирования, и содержимое базы знаний, и входные данные для вычислений, а также сам процесс вычислений оказываются распределенными по всей сети. Невозможно указать место, в котором хранится та или иная конкретная информация, хотя сети используются в качестве запоминающих устройств (особенно ассоциативной памяти) и очень хорошо выполняют эту функцию. Точно так же невозможно локализовать в конкретном месте сети какого-либо фрагмента алгоритма ее функционирования. В частности, нельзя указать, какие элементы сети отвечают за предварительную обработку и анализ входных данных, а какие формируют итоговое решение.
Посмотрим, как это все работает, и какую роль играют конкретные элементы в функционировании сети в целом. Предположим, что значения всех весовых коэффициентов сети уже заданы, т.е. процесс обучения завершен. Процесс обучения сети очень важный, но и очень непростой для понимания. Начнем наш анализ с момента постановки перед сетью новой задачи. В этот момент на все входы сети подается новая комбинация входных сигналов. На рисунке эти сигналы обозначены серыми точками, размещенными в соответствующих местах на схеме сети.
Входные сигналы попадают на нейроны входного слоя, которые, как правило, их не обрабатывают, а только перераспределяют - т.е. рассылают по всем нейронам скрытого слоя на нижнем рисунке. Отметим, что особая роль таких нейронов-распределителей (не обрабатывающих информацию) обозначается на схемах нейронных сетей особым символом (например, на наших рисунках они обозначены треугольниками в отличие от квадратов, которыми обозначены другие нейроны).
Следующий этап активизация нейронов скрытого слоя. Эти нейроны, используя свои веса (т.е. задействуя накопленную в них информацию), вначале модифицируют входные сигналы, а потом агрегируют их с учетом своих характеристик (представленных на рисунке в виде сигмоидальных функций ) и рассчитывают выходные сигналы, передаваемые на нейроны выходного слоя. Этот этап обработки информации нейронной сетью имеет особо важное значение.
Извне сети, скрытый слой практически незаметен (его сигналы не наблюдаются ни на входе, ни на выходе сети, этим объясняется название слоя), но именно в нем выполняется большая часть работы но решению задачи. Наибольшее число связей и соответствующих им весовых коэффициентов обычно располагается между входным и скрытым слоями. Поэтому можно утверждать, что большая часть знаний, накопленных в процессе обучения, локализуется именно в скрытом слое. Сигналы, генерируемые нейронами скрытого слоя, не имеют никакой прямой интерпретации в отличие от входных
и выходных сигналов, каждый из которых обозначает что-то конкретное: в контексте решаемой задачи.
Но по аналогии с производственным процессом можно утверждать, что нейроны скрытого слоя вырабатывают "полуфабрикаты" их сигналы так характеризуют решаемую задачу,
что процесс "монтажа конечного продукта", т.е. получения итогового решения нейронами выходного слоя, существенно облегчается.
При более детальном ознакомлении с функционированием сети на этом завершающем этапе решения задачи, можно заметить, что нейроны выходного слоя используют свои возможности агрегирования сигналов и свои функциональные характеристики для формирования итогового решения, подаваемого на выход сети
Повторю еще раз: сеть всегда функционирует как единое целое; в реализации любых действий сети участвуют все ее элементы - напрашивается аналогия с голограммой, когда по каждому фрагменту разбитой фотопластинки можно восстановить образ сфотографированного (-голографированного) предмета. Одно из следствий такого функционирования сети ее удивительная способность корректно работать даже при повреждении значительного числа ее элементов. Известный исследователь нейронных сетей Франк Розенблатт (Frank Rosenblatt) вначале обучал созданную им нейронную сеть решать какую-либо задачу например, распознавать буквы, а потом тестировал эту сеть при последовательном отключении все большего числа входящих в ее состав элементов (сети Розенблатта представляли собой специализированные электронные системы). Оказалось, что сеть корректно выполняла свои функции даже при выводе из строя многих ее элементов.
Конечно, повреждение большей части нейронов и связей снижало качество функционирования сети, но это проявлялось во все более частых ошибках при распознавании (например, при демонстрации буквы О сеть называла ее буквой D), тем не менее, она продолжала работать. Можно сравнить такое поведение сети с наверняка известным вам фактом, что для подавляющего большинства других электронных устройств (компьютер, телевизор и т.п.) для выхода из строя достаточно отказа единственного важного элемента. И еще один установленный фактор, в мозгу взрослого человека ежедневно погибает (по разным причинам) несколько тысяч нейронов, тем не менее, мозг как единое целое безотказно функционирует на протяжении многих лет.