Ассоциативная память Хопфильда

Автор: Пользователь скрыл имя, 25 Января 2012 в 09:08, реферат

Описание работы

Ассоциативная память Хопфилда позволяет воспроизводить запомненные образы при предъявлении части изображения или искаженных примеров.
Ассоциативная память Хопфилда реализует полносвязную нейронную сеть, в которой каждый нейрон связан со всеми остальными.
Процесс обучения проходит без учителя на основе принципов правила Хэбба.

Работа содержит 1 файл

Ассоциативная память Хопфилда позволяет воспроизводить запомненные образы при предъявлении части изображения или искаженных примеров.doc

— 464.51 Кб (Скачать)

Шаг 1. Подать входной вектор xn=(x1,x2,xk)

Шаг 2. Вычислить  расстояния dj от входного вектора до всех центров кластеров.

Шаг 3. Определить ближайший центр кластеров с  минимальным значением dj.

Шаг 4. Переместить  ближайший центр кластеров по направлению 

к входной  точке:

 

где а - коэффициент скорости обучения.

Шаг 5. Перейти  на шаг 2.  

 
 
 

Доказано, что местоположение центра каждого  кластера в асимптотике стремится  к среднему от входных точек, расположенных  в соответствующей ему области  Вороного [247]:

Метод k-средних нашел свою интерпретацию в нейросетевой тематике в виде так называемого соревновательного обучения, простейшей форме нейронной сети Кохонена. При этом функционирование сети происходит следующим образом.

Входной вектор, подается на входной слой, который не содержит нейронов, а выполняет коммутационные функции, распространяя каждый входной вектор по всем нейронам второго слоя. Число узлов входного слоя равно размерности входного вектора.

Каждый  нейрон второго слоя (слой Кохонена) имеет обучаемые весовые коэффициенты своих входов, число входов соответствует числу узлов первого слоя.

Слой  Кохонена классифицирует входные векторы в группы схожих. Предполагается, что входные векторы фактически группируются в классы в соответствии с их положением в векторном пространстве. Слой Кохонена функционирует в стиле "победитель забирает все". Побеждает в соревновании нейрон, вектор весовых коэффициентов которого окажется наиболее близким к входному вектору. Сеть Кохонена функционирует в двух режимах: обучения и классификации.

На каждый нейрон второго слоя подается входной  вектор xn=(x1,x2,…xk). Каждый нейрон второго слоя вычисляет расстояние между входным вектором и вектором его весовых коэффициентов по

формуле:

где wij - вес входа i в нейроне j, xi -i -ая компонента входного вектора. Веса всех входов нейрона j формируют весовой вектор

В процессе обучения значение а постепенно уменьшается. Процесс обучения, следовательно, выделяет статистические свойства обучающего множества и группирует сходные векторы в классы. Согласно рекомендациям Кохонена [248], для получения хорошей статистической точности количество обучающих циклов должно быть, по крайней мере,в 500 раз больше количества выходных нейронов.

Кохоненом было предложено ввести в эту модель топологические связи, которые позволяют формировать топологическую структуру на кластерах. Все заданные центры кластеров связываются между собой одномерной или двухмерной сетью связей. При движении одного из

центров кластеров, все соседние с ним  по этой сети перемещаются тоже,но на меньшее расстояние.

Степень влияния центров группирования  друг на друга уменьшается в зависимости  от расстояния и с ростов номера итерации.Зависимость от расстояния может быть линейной, как было первоначально предложено Кохоненом, или нелинейной, например, в виде функции «Mexican Hat», которая наиболее часто используется в настоящее время.В то время как при соревновательном обучении модифицируются веса только нейронов-победителей, в соответствии с методом Кохонена, веса нейронов, соседних с выигравшими, также изменяются. Выбор соседей для модификации их весов может осуществляться как в одномерном виде (соседние в положении на линии), так и в нескольких вариантов двухмерного вида (соседи на плоскости, торе, произвольной криволинейной поверхности) в зависимости от заданной метрики евклидовых расстояний. Обычно величина, описывающая степень близости соседей,уменьшается в ходе обучения.

В этом режиме после выполнения достаточно большого числа итераций весовые  вектора нейронов второго слоя примут значения близкие к центрам кластеров входных векторов. В результате описанного обучения вырабатываются таблицы кодирования, являющиеся списком весовых векторов нейронов, соответствующих центрам кластеров входных векторов.

Метод обучения Кохонена с сохранением топологии оказывается очень полезным при выявлении внутренней структуры данных.Если модель, лежащая в основе многомерных данных, имеет размерность, намного ниже, чем сами данные, простыми методами выявить структуру такой модели не удается. Известный метод принципиальных компонент [2] позволяет определить только линейное пространство, описывающее наиболее сильные отклонения данных, но никак не может 

следовать их нелинейной структуре.

 

Мат модель

 

/*Некоторые термины: Нейрон состоит из тела клетки, дендридов, по которым воспринимает сигналы других нейронов, аксона, по которому передает другим нейронам выработанный сигнал, и синапсов – некоторых контактных промежутков между аксонами других нейронов и дендридами данного нейрона. Входные сигналы на дендриды нейрона поступают через синапсы, которые по-разному реагируют на одинаковые сигналы, что можно характеризовать некоторыми весовыми коэффициентами – весами синапсов.*/

 

Схема функционирования нейрона представлена на рис. 2. Здесь  x j (j=1,2…n)- входные сигналы, получаемые нейроном через синапсы; суммарный пространственный входной сигнал нейрона;  ) (u(t)   – мембранный потенциал нейрона, являющийся суммарным пространственно-временным входным сигналом; ) (θ(t)  – порог срабатывания нейрона; θ0  – нормальное состояние порога; [u(t)- θ(t)] – превышение мембранного потенциала над порогом; x- выходной сигнал нейрона; tp – интервал рефрактерности нейрона. Эта схема качественно и достаточно полно отражает функционирование нейрона и может являться основой для синтеза математической модели нейрона.

Суммарный пространственный входной сигнал нейрона  y(t)  является некоторой функцией времени  t  и может быть определен следующим выражением:

Суммарный пространственно-временной  сигнал, то есть мембранный потенциал нейрона  u(t) зависит от входного суммарного пространственного сигнала y(t)  и может быть смоделирован простым дифференциальным уравнением:

 

Здесь

 α1– коэффициент инерционности нейрона;

 β1– коэффициент пространственной суммации.

 

Порог нейрона  зависит от входных и выходных сигналов нейрона, в конечном счете  – от мембранного потенциала  u(t) и от выходного сигнала нейрона x(t), и моделируется дифференциальным уравнением:

 

Здесь  α2– динамический коэффициент адаптации порога нейрона;

β2– коэффициент адаптации нейрона по выходу;

β3– коэффициент адаптации нейрона по входу.

 

Выходной сигнал нейрона  x(t)  можно смоделировать некоторой нелинейной функцией  F, зависящей от максимального значения разности мембранного потенциала и порога срабатывания нейрона:

Эта функция  носит название функции активации.

В совокупности выражения (1.1) – (1.4) представляют собой математическую модель динамического адаптивного нейрона:

 

На основе этой математической модели может быть построена электронная модель нейрона, которую в дальнейшем мы будем называть нейропроцессором. Нейропроцессоры работают всегда в составе нейропроцессорной сети, которая в самом общем случае может быть представлена [4] в виде параллельной многослойной    сети    с    внутрислойными    и    межслойными обратными связями (рис. 3).

Если рассматриваемый  нейропроцессор с номером k расположен в слое нейропроцессорной сети с номером l, то он получает входные сигналы от нейропроцессоров слоя  (l-1) , а свои выходные сигналы передает на входы нейропроцессоров слоя  (l+1) . Для такого нейропроцессора математическую модель (1.5) можно записать в следующей форме:

Здесь индексы  l=1 , 2 ,.. n  – номер слоя нейропроцессоров; k=1 , 2 , m  –

номер нейропроцессора в слое;  j=1,2   m  – номер входа нейропроцессора.

В том случае, когда нейропроцессоры реализуются на основе цифровой техники,

удобнее исходить не из дифференциальной математической модели нейрона (1.6), а из

разностной модели или лучше – из рекурсивной  математической модели. Разностная

математическая  модель нейрона вытекает из дифференциальной математической мо-

дели (1.6), в которой  принято, что время  t  изменяется дискретно с шагом Δ t  и заменяется номером шага  i , в результате чего выражения (1.6) приобретают вид:

В такой разностной модели  нейропроцессора (нейрона) все сигналы представляются в цифровой форме. Практически более предпочтительной является рекурсивная математическая модель динамического нейропроцессора, которая получается, если в разностной модели (1.7) принять шаг  Δ t=1 :

нейрона, возникающего при выдаче нейропроцессором выходного сигнала xlk(i)>0

, при котором мембранный потенциал ulk(i) падает до нуля. Выражение σ=[- xlk(i)]

представляет  собой пороговую функцию с  порогом в нуле, равную единице  при отрицательных и нулевых  значениях xlk(i)  и принимающую нулевое значение при xlk(i)>0, что обеспечивает моделирование свойства рефрактерности нейропроцессора.

Рекурсивная математическая модель (1.8) динамического нейрона с переменным порогом и адаптацией по входу и по выходу наиболее полно отражает основные важнейшие функции естественного нейрона. Соответственно нейропроцессор, построенный на основе рекурсивной математической модели (1.8), наиболее полно моделирует нейрон. Ниже будет показано, что все известные математические модели нейронов и построенные на их основе нейропроцессоры являются частным случаем универсальной рекурсивной математической модели (1.8) естественного нейрона, то есть частным случаем универсального нейропроцессора.

Информация о работе Ассоциативная память Хопфильда