# CROISEMENT

## 1 CONTENU

croisement.fon: fonction.
croisement.fra: texte francais.
croisement_ADA.js: lancement de la démo ADA.
croisement_PMC.js: lancement de la démo PMC.
croisement.htm: ce fichier.
anyflo.exe se trouve dans ../anyflo
l'environnement se trouve dans ../env

## 2 PRINCIPE

Cette application utilise des réseaux neuronaux pour transformer des flux d'images dand le but de générer automatiquement des animations.

### 1-1 Première méthode par apprentissage supervisé

Un flux FLUX1 d'images remplit en permanence les motifs des couples d'apprentissage (de Nb_ADA éléments) et un deuxième flux FLUX2 remplit en permanence les lois de ces couples. Un apprentissage supervisé par l'algorithme de la rétropropagation de l'erreur permet une autoconfiguration de la matrice des poids synaptiques de façon à ce qu'un flux d'entrée voisin de FLUX1 donne un flux de sortie voisin de FLUX2. Parallélement un flux FLUX3 est présenté en entrée du réseau chaque fois que l'erreur tombe en dessous d'un seuil donné (apprentisage réussi) et les images du résultat
valider motif(FLUX3)reseau
constituent l'animation.

### 2-1 Deuxième méthode par apprentissage non supervisé

Un flux FLUX1 d'images remplit en permanence la mémoire de travail (de Nb_ADA éléments) du réseau neuronal adaptatif complètement connecté quii calcule un flux de sortie
FLUX2=valider motif(FLUX1) reseau.
Par l'algorithme de la cohérence des flux le réseau auto configure sa matrice de poids synaptiques de façon à minimiser la différence de phase des deux flux. Les images de FLUX2 constituent l'animation.

## 3 LES MENUS

### 3-1 Menu principal CRO

CRO HELP IMA RES EXIT
CRO: fonction vide
HELP: aide
IMA: sous menu des images
RES: sous menu des réseaux
EXIT: quitter

### 3-2 Sous menu des images CRO_IMA

IMA IN0 NUM0 IN1 NUM1 IN2 NUM2 IN3 NUM3 NB OUT
IMA: fonction vide
IN0: lecture du nom Nom0_IN de l'entrée 0
Num0: lecture du 1er numéro Num0_IMA
Ces informations sont utilisées par un réseau adaptatif complètement connecté de type Type_Reseau=ADA, entrainé par l'algorithme de la cohérence de flux.
IN1: lecture du nom Nom1_IN de l'entrée 1
Num1: lecture du 1er numéro Num1_IMA
IN2: lecture du nom Nom2_IN de l'entrée 2
Num2: lecture du 1er numéro Num2_IMA
IN3: lecture du nom Nom3_IN de l'entrée 3
Num3: lecture du 1er numéro Num3_IMA
Ces informations sont utilisées par un réseau PMC (perceptron multi couche) de type Type_Reseau=PMC, entrainé par l'algorithme de la rétropropagation de l'erreur:
Le flux Nom1_IMA sert à remplir les Nb_ADA motifs du réseau.
Le flux Nom2_IMA sert à remplir les Nb_ADA lois du réseau.
Le réseau subit alors un apprentissage supervisé.
Le flux Nom3_IMA est passé en motif au réseau lequel délivre une loi qui est l'image courante de l'animation.
NB: lecture du nombre d'images de l'animation
OUT: lecture du nom Nom_OUT de la sortie
Pour lire une valeur il suffit de taper:
< valeur

### 3-3 Sous menu des réseaux CRO_RES

RES INI ADA PMC ACQ AFF MAT APP GARE STO
RES: fonction vide.
INI: Supprime les réseaux.
ADA: Type_Reseau=ADA (adaptatif complètement connecté).
PMC: Type_Reseau=PMC (perceptron multi couches).
ACQ: Construction du réseau.
MAT: Affichage du réseau.
APP: Lancement de l'apprentissage.
GARE: Gare les images de sortie.
STO: Stoppe l'apprentissage.
L'échelle dim permet de choisir le côté de l'image stockée en motif et en loi.
L'échelle cache permet de choisir le nombre de couches cachées.
L'échelle mem permet de choisir le nombre de couples d'apprentissage.
Si Type_Reseau=PMC, l'échelle nb permet de choisir le temps d'apprentissage.
Lors de l'apprentissage la courbe d'erreur est affichée.