Associer le réseau de mémoire

Ces types de réseaux de neurones fonctionnent sur la base d'une association de modèles, ce qui signifie qu'ils peuvent stocker différents modèles et, au moment de donner une sortie, ils peuvent produire l'un des modèles stockés en les faisant correspondre avec le modèle d'entrée donné. Ces types de souvenirs sont également appelésContent-Addressable Memory(CAME). La mémoire associative effectue une recherche parallèle avec les modèles stockés sous forme de fichiers de données.

Voici les deux types de mémoires associatives que nous pouvons observer -

  • Mémoire associative automatique
  • Mémoire associative hétéro

Mémoire associative automatique

Il s'agit d'un réseau neuronal à couche unique dans lequel le vecteur d'apprentissage d'entrée et les vecteurs cibles de sortie sont les mêmes. Les poids sont déterminés de sorte que le réseau stocke un ensemble de modèles.

Architecture

Comme le montre la figure suivante, l'architecture du réseau de mémoire auto-associative a ‘n’ nombre de vecteurs de formation d'entrée et similaires ‘n’ nombre de vecteurs cibles de sortie.

Algorithme de formation

Pour la formation, ce réseau utilise la règle d'apprentissage Hebb ou Delta.

Step 1 - Initialisez tous les poids à zéro comme wij = 0 (i = 1 to n, j = 1 to n)

Step 2 - Exécutez les étapes 3-4 pour chaque vecteur d'entrée.

Step 3 - Activez chaque unité d'entrée comme suit -

$$ x_ {i} \: = \: s_ {i} \ :( i \: = \: 1 \: à \: n) $$

Step 4 - Activez chaque unité de sortie comme suit -

$$ y_ {j} \: = \: s_ {j} \ :( j \: = \: 1 \: à \: n) $$

Step 5 - Ajustez les poids comme suit -

$$ w_ {ij} (nouveau) \: = \: w_ {ij} (ancien) \: + \: x_ {i} y_ {j} $$

Algorithme de test

Step 1 - Réglez les poids obtenus lors de la formation pour la règle de Hebb.

Step 2 - Exécutez les étapes 3 à 5 pour chaque vecteur d'entrée.

Step 3 - Réglez l'activation des unités d'entrée égale à celle du vecteur d'entrée.

Step 4 - Calculez l'entrée nette de chaque unité de sortie j = 1 to n

$$ y_ {inj} \: = \: \ displaystyle \ sum \ limits_ {i = 1} ^ n x_ {i} w_ {ij} $$

Step 5 - Appliquer la fonction d'activation suivante pour calculer la sortie

$$ y_ {j} \: = \: f (y_ {inj}) \: = \: \ begin {cases} +1 & if \: y_ {inj} \:> \: 0 \\ - 1 & if \: y_ {inj} \: \ leqslant \: 0 \ end {cases} $$

Mémoire associative hétéro

Semblable au réseau de mémoire associative automatique, il s'agit également d'un réseau neuronal monocouche. Cependant, dans ce réseau, le vecteur d'apprentissage d'entrée et les vecteurs cibles de sortie ne sont pas les mêmes. Les poids sont déterminés de sorte que le réseau stocke un ensemble de modèles. Le réseau hétéro associatif est de nature statique, par conséquent, il n'y aurait pas d'opérations non linéaires et de retard.

Architecture

Comme le montre la figure suivante, l'architecture du réseau de mémoire associative hétéro ‘n’ nombre de vecteurs d'apprentissage d'entrée et ‘m’ nombre de vecteurs cibles de sortie.

Algorithme de formation

Pour la formation, ce réseau utilise la règle d'apprentissage Hebb ou Delta.

Step 1 - Initialisez tous les poids à zéro comme wij = 0 (i = 1 to n, j = 1 to m)

Step 2 - Exécutez les étapes 3-4 pour chaque vecteur d'entrée.

Step 3 - Activez chaque unité d'entrée comme suit -

$$ x_ {i} \: = \: s_ {i} \ :( i \: = \: 1 \: à \: n) $$

Step 4 - Activez chaque unité de sortie comme suit -

$$ y_ {j} \: = \: s_ {j} \ :( j \: = \: 1 \: à \: m) $$

Step 5 - Ajustez les poids comme suit -

$$ w_ {ij} (nouveau) \: = \: w_ {ij} (ancien) \: + \: x_ {i} y_ {j} $$

Algorithme de test

Step 1 - Réglez les poids obtenus lors de la formation pour la règle de Hebb.

Step 2 - Exécutez les étapes 3 à 5 pour chaque vecteur d'entrée.

Step 3 - Réglez l'activation des unités d'entrée égale à celle du vecteur d'entrée.

Step 4 - Calculez l'entrée nette de chaque unité de sortie j = 1 to m;

$$ y_ {inj} \: = \: \ displaystyle \ sum \ limits_ {i = 1} ^ n x_ {i} w_ {ij} $$

Step 5 - Appliquer la fonction d'activation suivante pour calculer la sortie

$$ y_ {j} \: = \: f (y_ {inj}) \: = \: \ begin {cases} +1 & if \: y_ {inj} \:> \: 0 \\ 0 & if \ : y_ {inj} \: = \: 0 \\ - 1 & if \: y_ {inj} \: <\: 0 \ end {cases} $$