Télécharger le fichier original (Mémoire de fin d’études)
Variantes du modèle BCAM
Les deux modèles principaux sont le BCAM-BAM et le BCAM-CS. Le premier modèle repose sur l’utilisation d’une matrice d’association bidirectionnel (BAM), et le second sur l’acquisition comprimée (CS). Nous proposons dans cette section des variations de ces mo-dèles. En effet, le BCAM-BAM est limité en termes de diversité du fait de la contrainte sur le nombre de clusters en seconde couche. Pour le BCAM-CS, la matrice de passage f de dimension élevée et à valeurs réelles requiert une consommation élevée de mémoire.
BCAM-BAM
Le réseau BCAM-BAM utilise une matrice binaire faisant transiter l’information bidirec-tionnellement entre les couches à l’aide d’une matrice d’association Z. Cependant, le nombre de clusters c2 dans la seconde couche est égal au nombre de patchs p après décomposition des données. Pour cela, nous appellerons désormais ce modèle BCAM-BAMp. A l’instar de la génération aléatoire des macro-cliques, une problématique du BCAM-BAMp est l’archi-tecture pleine de la seconde couche. Bien que le nombre de neurones l2 puisse être calculé afin de satisfaire une densité équivalente à la première couche, la diversité est limitée. Nous proposons une variante telle que le nombre de clusters en seconde couche c2 puisse être dif-férent du nombre de patchs p. Ainsi, la variante est nommée BCAM-BAM¥. La relaxation de cette contrainte permet au modèle BCAM-BAM¥ de posséder une architecture parcimo-nieuse pour la seconde couche afin de maximiser sa diversité.
BCAM-CS
En ce qui concerne le modèle BCAM-CS, de par sa matrice de passage f de haute dimen-sion à valeur réelle, mais aussi l’architecture pleine de sa seconde couche, le coût mémoire est supérieur au modèle BCAM-BAM comme en atteste la figure 5.5b. De ce fait, ce modèle est baptisé BCAM-CSfull.
Un moyen pour réduire le coût mémoire est de diminuer les dimensions de la matrice f 108 Chapitre 5 – Mémoire associative bidirectionnelle à base de clique afin de l’appliquer à l’ensemble des micro-cliques non pas toutes ensemble, mais par sous-réseau. Par conséquent, la taille de f est réduite par rapport à la dimension des données d’entrée en fonction du nombre de sections dans ces dernières. La dimension du vecteur de sortie Y reste inchangée. La construction de Y est réalisée par parties, chacune issue du passage d’une micro-clique par la matrice f réduite. Soit la micro-clique x(k) du sous-réseau k, sa dimension est n = N/p, et son coefficient de parcimonie est ck = K/p. La matrice fk est donc réduite proportionnellement au nombre de sections p. La dimension m de fk est réduite par p à travers la contrainte RIP qui dépend de n et c1(k) eux-même réduits par p, soit m = M/p. Chaque sous-réseau est associé à une matrice f(k) réduite.
Une première variante du modèle à base de CS consiste à considérer une unique ma-trice f réduite appliquée à l’ensemble des sous-réseaux, le modèle se nomme alors BCAM-CSmini. Une seconde variante est d’appliquer p matrices f distinctes afin d’extraire des ca-ractéristiques différentes pour chaque sous-réseau, c’est le BCAM-CSminiS.
Les architectures des différents modèles utilisés sont détaillées dans le tableau 5.5a. Ce dernier contribue à préciser la dimension des matrices de passage Z ou f et l’architecture de la seconde couche du réseau en fonction du modèle. Les paramètres sont adaptés en fonction du type de passage utilisé, c.-à-d. BAM ou CS. En effet, pour la méthode CS, la dimension de la matrice f est différente selon que son application porte sur l’ensemble des sous-réseaux ou par parties. Pour la génération des paramètres d’architectures de la seconde couche du réseau BCAM-CS, nous contraignons son nombre de neurones total à C = 20000. Par consé-quent, les réseaux avec la méthode CS par parties, de par la faible dimension de la matrice f, nécessitent un faible nombre de clusters, ceux-ci devant posséder un plus grand nombre de neurones pour compenser la réduction initiale. Cette différence permet aux réseaux de stocker plus de messages puisque, comme présenté dans la section (3.2.2) dédiée à la pré-sentation du CbNN avec la figure 3.2, le nombre de neurones par cluster est le paramètre crucial dans le nombre de messages que le réseau peut apprendre.
La prochaine section présente les expérimentations menées à l’aide du réseau BCAM sur des données artificielles, puis sur divers jeux de données d’images.
Expérimentations
Les expérimentations se déroulent en deux étapes. La première a pour but de tester la capacité correctrice du réseau sur des données apprises au préalable. A cet égard, nous utili-sons des données générées aléatoirement suivant une distribution uniforme, puis gaussienne (non-uniforme). Une dégradation sera appliquée afin de déterminer si le réseau BCAM conserve la capacité correctrice du CbNN initial. La seconde étape consiste à mesurer la généralisation de l’information réalisée par le BCAM. Afin de démontrer que le modèle BCAM est bien en mesure de généraliser l’information, il faut être capable d’analyser les Expérimentations reconstructions et de définir si le résultat est satisfaisant. En effet, à défaut de classification correcte, l’image récupérée est-elle une approximation de l’entrée inconnue ? Notre mesure s’appuie sur le critère d’erreur quadratique moyenne (ou Mean Squared Error, MSE) calculé sur les images récupérées, en complément des résultats en termes de taux de classification. Les expérimentations sont ici menées sur des images inconnues non dégradées afin de tester la capacité de généralisation du nouveau modèle. En outre, la classification pour le BCAM est effectuée à l’aide de la méthode Softmax en suivant le diagramme de la figure 4.15. Les résultats sont comparés à une référence calculée suivant le diagramme de la figure 4.12a. Contrairement à la section relative à la classification présentée dans le chapitre précédent, le CbNN n’est ici pas considéré comme un classifieur. Le réseau à cliques n’effectue qu’une récupération d’image, c’est le Softmax qui classe les images récupérées.
Comme lors des expérimentations sur la pénalisation et la classification avec le CbNN, le jeu de données utilisé est MNIST. En effet, ce jeu de données permet de profiter d’une pre-mière couche composée de sous-réseaux possédant une architecture parcimonieuse. Avant apprentissage, les images passent par une étape de transformation. Celle-ci correspond à la quantification puis au découpage des images. Le découpage des images attribue le nombre de sous-réseaux composant la première couche du BCAM. Les p sous-réseaux possèdent une architecture identique. Le nombre de clusters c1(k) (k = 1, . . . ,p) est égal au nombre de pixels du patch d’image, et le nombre de neurones composant ces clusters est égal à la quantifica-tion appliquée aux images, soit l1(k) = q, par la méthode des K-moyennes.
L’architecture de L2 dépend de L1 et de la méthode utilisée. En effet, pour la méthode BAMp, le nombre de clusters est égal au nombre de sous-réseaux, soit c2 = p et le nombre de leurs neurones est calculé à travers l’équation (5.1) afin d’équilibrer la densité du pre-mier réseau. Pour la méthode BAM¥, le nombre de clusters en L2 est défini arbitrairement afin d’obtenir une consommation mémoire équivalente au modèle CbNN initial. En ce qui concerne la méthode CS, le nombre de clusters en L2 dépend de la taille de la matrice de pas-sage f qui elle-même dépend de la dimension des données soumises à apprentissage. Pour les neurones l2 du modèle CS, le nombre de clusters dépend du découpage de la séquence obtenue à travers le passage de la matrice f. Ce découpage est contraint par la création d’une matrice d’adjacence pour L2 raisonnable. L’architecture en L2 est parcimonieuse pour BAM¥ et pleine pour les autres méthodes : BAMp et à base de CS.
La phase de récupération utilise la règle dynamique SoS pour tous les réseaux. La règle d’activation dépend quant à elle des architectures. Par conséquent, le CbNN initial et la pre-mière couche du BCAM utilisent le GkWTA quand la seconde couche dépend de la méthode utilisée. En effet, la règle GkWTA est appliquée si le réseau est parcimonieux sinon il s’agit de la règle WTA.
A l’instar de la section précédente, les paramètres du modèle BCAM s’adaptent à un sous-ensemble de paramètres de base que sont la taille des patchs et le pas entre ceux-ci.
Ensuite, d’autres variables sont à prendre en compte en fonction de la méthode utilisée pour le passage de l’information d’une couche à une autre.
Pour les expérimentations sur les données artificielles, les résultats consistent en une moyenne des corrections réussies. Si le réseau corrige sans aucune erreur l’entrée connue et dégradée, le résultat est 1, sinon 0. Les expérimentations sur les images reposent sur la moyenne des scores MSE et du taux de classification en fonction du nombre de messages appris.
Avec la méthode du CS la dimension N restera la même, et ce quel que soit le nombre de patchs (dans le cas d’un chevauchement inexistant). La dimension N est égale au produit de la résolution et de la quantification. La dimension reste élevée en dépit d’une quantification, et ce sans chevauchement de patchs. Par conséquent, le chevauchement est à proscrire. Les expérimentations sur les images concernent le jeu de données MNIST quantifiées de 8 bits à 4 bits. Le temps d’exécution est plus important avec la méthode CS du fait de l’algorithme BIHT qui effectue la récupération, en dépit de la réduction du nombre d’itérations.
Le nombre d’itérations maximal du réseau BCAM est fixé à 5, mais dans le cas où deux itérations successives obtiennent le même résultat, nous supposons une convergence du ré-seau et le processus itératif est arrêté. Le CbNN initial nécessite un nombre d’itérations maxi-mum de 5, tandis que pour les sous-réseaux il est fixé à 3, et pour le réseau de la seconde couche il est fixé à 5. Les nombres d’itérations sont détaillés dans les figures 5.2 et 5.4 illus-trant respectivement la récupération du BCAM-BAM et du BCAM-CS. Le nombre d’itéra-tions de la seconde couche est plus élevé de par l’importance d’obtenir une clique dans cette couche afin que la récupération sur l’ensemble du réseau BCAM soit effective.
L’algorithme 7 présente le protocole d’expérimentation sur les images. En ce qui concerne les données générées artificiellement, la différence est que le taux de récupération est calculé à partir d’une distance de Hamming.
Table des matières
Liste des figures
Liste des tableaux
Liste des algorithmes
1 Introduction
1.1 Défis
1.2 Contributions
1.3 Plan
2 État de l’art
2.1 Introduction
2.2 Concepts fondamentaux d’un neurone artificiel
2.3 Réseaux de neurones
2.3.1 Réseau feed-forward et rétro-propagation
2.3.2 Récurrence et mémoire
2.3.3 Réseaux récurrents à base d’énergie
2.3.3.1 Machines de Boltzmann
2.3.3.2 Divergence Contrastive
2.4 Vers une simplification des calculs
2.5 Mémoires associatives
2.5.1 Définition
2.5.2 Mémoires associatives neuronales (NAM)
2.5.3 Critères de performance pour un NAM
2.5.3.1 Efficacité du stockage de l’information
2.5.3.2 Capacité critique
2.5.3.3 Avantage de la parcimonie
2.5.4 Application des NAM
2.6 Conclusion
3 Réseau de neurones à cliques
3.1 Introduction
3.2 Modèle de base
3.2.1 Architecture d’une mémoire
3.2.2 Phase d’apprentissage
3.2.3 Phase de récupération
3.2.3.1 Règles dynamiques
3.2.3.2 Règles d’activation
3.3 Analyse des défauts
3.3.1 Application à des données non uniformes
3.3.2 Ambiguïtés
3.3.3 Dimension
3.3.4 Généralisation
3.4 Conclusion
4 Contributions au modèle original
4.1 Introduction
4.2 Gestion de l’ambiguïté
4.2.1 Solutions de la littérature
4.2.2 Modèle à couches multiples
4.2.2.1 Un réseau à double couche
4.2.2.2 Extension à N couches
4.2.2.3 Conclusion
4.2.3 Pénalisation
4.2.3.1 Expérimentations sur des données artificielles
4.2.3.2 Expérimentations sur des images
4.2.3.3 Conclusion
4.3 Classification
4.3.1 Méthode
4.3.2 Expérimentations
4.4 Généralisation par a priori
4.4.1 Utilisation d’a priori
4.4.2 Expérimentations
4.5 Conclusion
5 Mémoire associative bidirectionnelle à base de clique
5.1 Introduction
5.2 Concept du modèle BCAM
5.2.1 Phase d’apprentissage
5.2.2 Phase de récupération
5.3 Évolution du modèle
5.3.1 Méthode d’acquisition comprimée
5.3.2 Topologie adaptative
5.3.3 Variantes du modèle BCAM
5.3.3.1 BCAM-BAM
5.3.3.2 BCAM-CS
5.4 Expérimentations
5.4.1 Données générées artificiellement
5.4.2 MNIST
5.4.3 Autres jeux d’images
5.5 Discussion sur la généralisation
5.5.1 Étude de la dimension des patchs
5.6 Conclusion
6 Conclusion
6.1 Contributions
6.1.1 Ambiguïtés
6.1.2 Généralisation
6.2 Perspectives
Annexes
A Factorisation de matrice
B Jeux de données d’images
B.1 MNIST
B.2 Yale
B.3 CIFAR10
Bibliographie