Эти типы нейронных сетей работают на основе ассоциации шаблонов, что означает, что они могут хранить различные шаблоны и во время выдачи выходных данных они могут создавать один из сохраненных шаблонов, сопоставляя их с данным входным шаблоном. Эти типы памяти также называют Content-Addressable Memory (CAM). Ассоциативная память выполняет параллельный поиск с сохраненными шаблонами в виде файлов данных.
Ниже приведены два типа ассоциативных воспоминаний, которые мы можем наблюдать —
- Авто Ассоциативная Память
- Гетеро Ассоциативная память
Авто Ассоциативная Память
Это однослойная нейронная сеть, в которой входной обучающий вектор и выходные целевые векторы совпадают. Веса определены так, что сеть хранит набор шаблонов.
Архитектура
Как показано на следующем рисунке, архитектура сети автоассоциативной памяти имеет «n» число входных обучающих векторов и аналогичное «n» количество выходных целевых векторов.
Алгоритм обучения
Для обучения в этой сети используется правило обучения Hebb или Delta.
Шаг 1 — Инициализировать все веса до нуля, так как w ij = 0 (i = от 1 до n, от j = 1 до n)
Шаг 2 — Выполните шаги 3-4 для каждого входного вектора.
Шаг 3 — Активируйте каждый блок ввода следующим образом —
Xя=Sя :(я=1кп)
Шаг 4 — Активируйте каждый выходной блок следующим образом —
у−J=SJ :(J=1кп)
Шаг 5 — Отрегулируйте веса следующим образом —
wIJ(новый)=wIJ(старый) +xяyJ
Алгоритм тестирования
Шаг 1 — Установите веса, полученные во время тренировки для правила Хебба.
Шаг 2 — Выполните шаги 3-5 для каждого входного вектора.
Шаг 3 — Установите активацию входных единиц равной активации входного вектора.
Шаг 4 — Рассчитать чистый входной сигнал для каждой единицы выходного сигнала j = 1 до n
yinj= displaystyle sum limitni=1xiwij
Шаг 5 — Примените следующую функцию активации для расчета выхода
y_ {j} \: = \: f (y_ {inj}) \: = \: \ begin {case} +1 & if \: y_ {inj} \:> \: 0 \\ — 1 & if \: y_ {инъекц} \: \ leqslant \: 0 \ конец {случаи}
Гетеро Ассоциативная память
Подобно сети Auto Associative Memory, это также однослойная нейронная сеть. Однако в этой сети входной обучающий вектор и выходные целевые векторы не совпадают. Веса определены так, что сеть хранит набор шаблонов. Гетероассоциативная сеть носит статический характер, следовательно, не было бы нелинейных и отложенных операций.
Архитектура
Как показано на следующем рисунке, архитектура сети гетероассоциативной памяти имеет «n» число входных обучающих векторов и «m» количество выходных целевых векторов.
Алгоритм обучения
Для обучения в этой сети используется правило обучения Hebb или Delta.
Шаг 1 — Инициализировать все веса до нуля, так как w ij = 0 (i = от 1 до n, от j = 1 до m)
Шаг 2 — Выполните шаги 3-4 для каждого входного вектора.
Шаг 3 — Активируйте каждый блок ввода следующим образом —
X_ {я} \: = \: S_ {я} \ 🙁 я \: = \: 1 \: к \: п)
Шаг 4 — Активируйте каждый выходной блок следующим образом —
у- {J} \: = \: S_ {J} \ 🙁 J \: = \: 1 \: к \: м)
Шаг 5 — Отрегулируйте веса следующим образом —
w_ {IJ} (новый) \: = \: w_ {IJ} (старый) \ + \: x_ {я} y_ {J}
Алгоритм тестирования
Шаг 1 — Установите веса, полученные во время тренировки для правила Хебба.
Шаг 2 — Выполните шаги 3-5 для каждого входного вектора.
Шаг 3 — Установите активацию входных единиц равной активации входного вектора.
Шаг 4 — Рассчитать чистый входной сигнал для каждой единицы выходного сигнала j = 1 до m;
y_ {inj} \: = \: \ displaystyle \ sum \ limit_ {i = 1} ^ n x_ {i} w_ {ij}
Шаг 5 — Примените следующую функцию активации для расчета выхода
y_ {j} \: = \: f (y_ {inj}) \: = \: \ begin {case} +1 & if \: y_ {inj} \:> \: 0 \\ 0 & if \ : y_ {inj} \: = \: 0 \\ — 1 & if \: y_ {inj} \: <\: 0 \ end {case}