Нейронные сети как Ассоциативная память
Ассоциативная память используется в задачах хранения, ассоциирования и распознавания образов.
Хранение представляет собой процесс записи входного образа в структуре так называемой автоассоциативной сети (autoassociative network) или сети Хопфильда (Hopfield network) с целью последующего распознавания входных образов не обязательно точно совпадающих с содержимым памяти.
Пример структуры автоассоциативной сети показан на рис.2.45.
Нейронная сеть Хопфилда состоит из искусственных нейронов. Каждый нейрон в сети связан с каждым другим нейроном. Имеются также внешние входы в нейроны и внешние выходы. Каждый нейрон системы может принимать одно из двух состояний (что аналогично выходу нейрона с пороговой функцией активации): .
Благодаря своей биполярной природе нейроны сети Хопфилда иногда называют спинами. Взаимодействие спинов сети описывается выражением:
где - элемент матрицы взаимодействий W, которая состоит из весовых коэффициентов связей между нейронами.
Рис. 2.45. Структура сети с тремя нейронами
В эту матрицу в процессе обучения записывается N «образов» n-мерных бинарных векторов. В сети Хопфилда матрица связей является симметричной , а диагональные элементы матрицы полагаются равными нулю ( ), что исключает эффект воздействия нейрона на самого себя и является необходимым для сети Хопфилда, но не достаточным условием, устойчивости в процессе работы сети.
«Реакция» (выход) такой сети является «динамической». Входной образец поступает на внешние входы и вызывает активацию спинов. Каждый нейрон вычисляет свои значения и посылает их обратно ко всем нейронам, исключая себя. В основе функционирования таких сетей лежит итеративный принцип работы. На каждой итерации происходит обработка результата, полученного на предыдущем шаге.
Циркуляция информации в нейронной сети происходит до тех пор, пока не установится состояние равновесия, т.е. значения её выходов перестанут изменяться. В отличие от многих нейронных сетей, функционирующих до получения ответа через определённое количество тактов, сети Хопфилда функционируют до достижения равновесия, когда следующее состояние сети в точности равно предыдущему. Начальное состояние является входным образом, а при равновесии получают выходной образ. Сети Хопфилда являются частным случаем рекуррентных сетей, в которых сигнал с выходных нейронов или нейронов скрытого слоя частично передается обратно на входы нейронов входного слоя (обратная связь).
Рекуррентная сеть Хопфилда «фильтрует» входные данные, возвращаясь к устойчивому состоянию и, таким образом, позволяет решать задачи сжатия данных и построения ассоциативной памяти.
Нейронные сети Кохонена
Нейронные сети Кохонена — класс нейронных сетей, основным элементом которых является слой Кохонена. Слой Кохонена состоит из некоторого количества n параллельно действующих линейных элементов. Все они имеют одинаковое число входов m и получают на свои входы один и тот же вектор входных сигналов x = (x1,...xm). На выходе j-го линейного элемента получаем сигнал:
,
где — весовой коэффициент i-го входа j-го нейрона,
— пороговый коэффициент.
После прохождения слоя линейных элементов сигналы посылаются на обработку по правилу «победитель забирает всё»: среди выходных сигналов yj ищется максимальный; его номер
jmax = argmaxj{yj}.
Окончательно, на выходе сигнал с номером jmax равен единице, остальные — нулю. Если максимум одновременно достигается для нескольких jmax, то либо принимают все соответствующие сигналы равными единице, либо только первый в списке (по соглашению). Сети используются для задач кластеризации многомерных данных. По способам настройки входных весов сумматоров и по решаемым задачам различают много разновидностей сетей Кохонена.
Адаптивные сети
Адаптивными сети называются из-за наличия в них вектора настраиваемых параметров. Сеть имеет L слоев ( l =0,1,…, L); l = 0 представляет входной слой. Слой l имеет N(l) вершин. Выходное значение вершины зависит от входных значений и параметров функции активации вершины. Обозначим выход -той вершины слоя как . Этот выход является результатом вычисления функции активации:
,
где – параметры функции активации -той вершины слоя .
На рис.2.46 показана типовая многослойная архитектура адаптивной сети.
В ходе адаптивного итерационного процесса сеть обучается устанавливать взаимоотношения между заданной исходной информацией и выходными результатами. Иначе говоря, структура сети по определенным алгоритмам подстраивается таким образом, чтобы минимизировать критерии расхождения входных и выходных параметров. Сети данного вида широко используются в задачах управления.
Рис. 2.46. Архитектура адаптивной сети.