Связанная сеть памяти
Эти виды нейронных сетей работают на основе ассоциации шаблонов, что означает, что они могут хранить различные шаблоны, и во время выдачи выходных данных они могут создавать один из сохраненных шаблонов, сопоставляя их с заданным входным шаблоном. Эти типы воспоминаний также называютContent-Addressable Memory(САМ). Ассоциативная память выполняет параллельный поиск с сохраненными шаблонами в виде файлов данных.
Ниже приведены два типа ассоциативных воспоминаний, которые мы можем наблюдать:
- Автоассоциативная память
- Гетеро ассоциативная память
Автоассоциативная память
Это однослойная нейронная сеть, в которой входной обучающий вектор и выходной целевой вектор совпадают. Веса определены таким образом, чтобы сеть сохраняла набор шаблонов.
Архитектура
Как показано на следующем рисунке, архитектура сети автоассоциативной памяти имеет ‘n’ количество входных обучающих векторов и т.п. ‘n’ количество выходных целевых векторов.
Алгоритм обучения
Для обучения эта сеть использует правило обучения Хебба или Дельта.
Step 1 - Обнулить все веса как wij = 0 (i = 1 to n, j = 1 to n)
Step 2 - Выполните шаги 3-4 для каждого входного вектора.
Step 3 - Активируйте каждый входной блок следующим образом -
$$ x_ {i} \: = \: s_ {i} \ :( i \: = \: 1 \: to \: n) $$
Step 4 - Активируйте каждый выходной блок следующим образом -
$$ y_ {j} \: = \: s_ {j} \ :( j \: = \: 1 \: to \: n) $$
Step 5 - Отрегулируйте веса следующим образом -
$$ w_ {ij} (новый) \: = \: w_ {ij} (старый) \: + \: x_ {i} y_ {j} $$
Алгоритм тестирования
Step 1 - Установите веса, полученные во время тренировки, по правилу Хебба.
Step 2 - Выполните шаги 3-5 для каждого входного вектора.
Step 3 - Установите активацию входных единиц, равную активации входного вектора.
Step 4 - Рассчитайте чистый ввод для каждой единицы вывода j = 1 to n
$$ y_ {ING} \: = \: \ Displaystyle \ Sum \ limits_ {i = 1} ^ n x_ {i} w_ {ij} $$
Step 5 - Примените следующую функцию активации для расчета выхода
$$ y_ {j} \: = \: f (y_ {inj}) \: = \: \ begin {cases} +1 & if \: y_ {inj} \:> \: 0 \\ - 1 & if \: y_ {inj} \: \ leqslant \: 0 \ end {case} $$
Гетеро ассоциативная память
Подобно сети с автоматической ассоциативной памятью, это также однослойная нейронная сеть. Однако в этой сети входной обучающий вектор и выходные целевые векторы не совпадают. Веса определены таким образом, чтобы сеть сохраняла набор шаблонов. Гетероассоциативная сеть статична по своей природе, следовательно, не будет нелинейных операций и операций с задержкой.
Архитектура
Как показано на следующем рисунке, архитектура сети гетеро ассоциативной памяти имеет ‘n’ количество входных обучающих векторов и ‘m’ количество выходных целевых векторов.
Алгоритм обучения
Для обучения эта сеть использует правило обучения Хебба или Дельта.
Step 1 - Обнулить все веса как wij = 0 (i = 1 to n, j = 1 to m)
Step 2 - Выполните шаги 3-4 для каждого входного вектора.
Step 3 - Активируйте каждый входной блок следующим образом -
$$ x_ {i} \: = \: s_ {i} \ :( i \: = \: 1 \: to \: n) $$
Step 4 - Активируйте каждый выходной блок следующим образом -
$$ y_ {j} \: = \: s_ {j} \ :( j \: = \: 1 \: to \: m) $$
Step 5 - Отрегулируйте веса следующим образом -
$$ w_ {ij} (новый) \: = \: w_ {ij} (старый) \: + \: x_ {i} y_ {j} $$
Алгоритм тестирования
Step 1 - Установите веса, полученные во время тренировки, по правилу Хебба.
Step 2 - Выполните шаги 3-5 для каждого входного вектора.
Step 3 - Установите активацию входных единиц, равную активации входного вектора.
Step 4 - Рассчитайте чистый ввод для каждой единицы вывода j = 1 to m;
$$ y_ {ING} \: = \: \ Displaystyle \ Sum \ limits_ {i = 1} ^ n x_ {i} w_ {ij} $$
Step 5 - Примените следующую функцию активации для расчета выхода
$$ y_ {j} \: = \: f (y_ {inj}) \: = \: \ begin {cases} +1 & if \: y_ {inj} \:> \: 0 \\ 0 & if \ : y_ {inj} \: = \: 0 \\ - 1 & if \: y_ {inj} \: <\: 0 \ end {cases} $$