Logo AND Algorithmique Numérique Distribuée

Private GIT Repository
resumes retraités
[hdrcouchot.git] / chaosANN.tex
index 89ac939ac65dcf87c12e17d969c0fcdd09291947..143ce2347b09cfd7548748577435f5a48db67a23 100644 (file)
@@ -12,9 +12,11 @@ leur comportement imprévisible et proche de l'aléa.
 
 Les réseaux de neurones chaotiques peuvent être conçus selon plusieurs 
 principes. Des neurones modifiant leur état en suivant une fonction non 
-linéaire son par exemple appelés neurones chaotiques~\cite{Crook2007267}.
+linéaire sont par exemple appelés neurones chaotiques~\cite{Crook2007267}.
 L'architecture de réseaux de neurones de type Perceptron multi-couches
-(MLP) n'itèrent quant à eux, pas nécessairement de fonctions chaotiques.
+(MLP) n'itèrent quant à eux classiquement pas de fonction chaotique:
+leurs fonctions d'activation sont usuellement choisies parmi les sigmoïdes 
+(la fonction tangeante hyperbolique par exemple). 
 Il a cependant été démontré  que ce sont des approximateurs 
 universels~\cite{Cybenko89,DBLP:journals/nn/HornikSW89}.   
 Ils permettent, dans certains cas, de simuler des comportements 
@@ -28,7 +30,7 @@ fonctions chaotiques.
 
 Ces réseaux de neurones partagent le fait qu'ils sont qualifiés de 
 ``chaotiques'' sous prétexte qu'ils embarquent une fonction de ce type 
-et ce sans aucune preuve rigoureuse ne soit fournie.
+et ce sans qu'aucune preuve rigoureuse ne soit fournie.
 Ce chapitre caractérise la 
 classe des réseaux de neurones MLP chaotiques. Il  
 s'intéresse ensuite à l'étude de prévisibilité de systèmes dynamiques
@@ -39,7 +41,8 @@ chaotique selon Devanay. La section~\ref{S3} présente l'approche duale
 de vérification si un réseau de neurones est chaotique ou non.
 La section~\ref{sec:ann:approx} s'intéresse à étudier pratiquement
 si un réseau de 
-neurones peut approximer des itération unaires chaotiques. Ces itérations
+neurones peut approximer des itérations unaires chaotiques, 
+ces itérations
 étant obtenues à partir de fonctions issues de la démarche détaillée dans 
 le chapitre précédent.
 Ce travail a été publié dans~\cite{bcgs12:ij}.
@@ -58,7 +61,7 @@ Plus précisément, pour chaque entrée
  $(x,s)   \in  \mathds{B}^{\mathsf{N}} \times [{\mathsf{N}}]$,
 la couche de sortie doit générer $F_{f_u}(x,s)$.   
 On peut ainsi lier la couche de sortie avec celle d'entrée pour représenter 
-les dépendance entre deux itérations successives.
+les dépendances entre deux itérations successives.
 On obtient une réseau de neurones dont le comportement est le suivant 
 (voir Figure.~\ref{Fig:perceptron}):
 
@@ -68,8 +71,8 @@ On obtient une réseau de neurones dont le comportement est le suivant
   et calcule le  vecteur de sortie 
   $x^1=F_{f_u}\left(x^0,S^0\right)$. 
   Ce vecteur est publié comme une sortie et est aussi retourné sur la couche d'entrée 
-  à travers les liens de retours.
-\item Lorsque le réseau est  activé à la $t^{th}$  itération, l'état du 
+  à travers les liens de retour.
+\item Lorsque le réseau est  activé à la $t^{\textrm{ème}}$  itération, l'état du 
   système $x^t  \in \mathds{B}^{\mathsf{N}}$ reçu depuis la couche de sortie ainsi que le 
   premier terme de la  séquence $(S^t)^{t  \in \Nats}$
   (\textit{i.e.},  $S^0  \in [{\mathsf{N}}]$)  servent à construire le nouveau vecteur de sortie.
@@ -82,7 +85,7 @@ On obtient une réseau de neurones dont le comportement est le suivant
 \begin{figure}
   \centering
   \includegraphics[scale=0.625]{images/perceptron}
-  \caption{Un Perceptron équivalent  aux itérations unitaires}
+  \caption{Un Perceptron équivalent  aux itérations unaires}
   \label{Fig:perceptron}
 \end{figure}
 
@@ -91,7 +94,7 @@ initial est composé de $x^0~\in~\mathds{B}^{\mathsf{N}}$ et d'une séquence
  $(S^t)^{t  \in \Nats}$, alors la séquence  contenant les vecteurs successifs 
 publiés $\left(x^t\right)^{t \in \mathds{N}^{\ast}}$ est exactement celle produite 
 par les itérations unaires décrites à la section~\ref{sec:TIPE12}.
-Mathématiquement, cela signifie que si on utilise les mêmes vecteurs d'entrées
+Mathématiquement, cela signifie que si on utilise les mêmes vecteurs d'entrée
 les deux approches génèrent successivement les mêmes sorties.
 En d'autres termes ce réseau de neurones modélise le comportement de  
 $G_{f_u}$,  dont les itérations sont chaotiques sur $\mathcal{X}_u$.
@@ -140,10 +143,10 @@ $f_j\left(x_1,x_2,\dots,x_{\mathsf{N}}\right) =
 F\left(\left(x_1,x_2,\dots,x_{\mathsf{N}}\right),j\right)$.
 Si ce réseau de neurones est initialisé avec 
 $\left(x_1^0,\dots,x_{\mathsf{N}}^0\right)$   et $S   \in    [{\mathsf{N}}]^{\mathds{N}}$, 
-il produit exactement les même sorties que les itérations de  $F_{f_u}$ avec une 
+il produit exactement les mêmes sorties que les itérations de  $F_{f_u}$ avec une 
 condition initiale $\left((x_1^0,\dots,  x_{\mathsf{N}}^0),S\right)  \in  \mathds{B}^{\mathsf{N}} \times [{\mathsf{N}}]^{\mathds{N}}$.
 Les itérations de $F_{f_u}$ 
-sont donc un modèle formel de cette classe de réseau de neurones.
+sont donc un modèle formel de cette classe de réseaux de neurones.
 Pour vérifier si un de ces représentants est chaotique, il suffit ainsi 
 de vérifier si le graphe d'itérations
 $\textsc{giu}(f)$ est fortement connexe.
@@ -162,12 +165,12 @@ qui approximerait les itérations de la fonction $G_{f_u}$ comme définie
 à l'équation~(\ref{eq:sch:unaire}).
 
 Sans perte de généralité, on considère dans ce qui suit une instance
-de de fonction à quatre éléments.
+ de fonction à quatre éléments.
 
 \subsection{Construction du réseau} 
 \label{section:translation}
 
-On considère par exemple les deux fonctions $f$ and $g$ de $\Bool^4$
+On considère par exemple les deux fonctions $f$ et $g$ de $\Bool^4$
 dans $\Bool^4$ définies par:
 
 \begin{eqnarray*}
@@ -197,7 +200,7 @@ Dans le premier cas, on considère une entrée booléenne par élément
 tandis que dans le second cas, les configurations  sont mémorisées comme 
 des entiers naturels. Dans ce dernier cas, une approche naïve pourrait 
 consister à attribuer à chaque configuration de $\Bool^{\mathsf{N}}$ 
-l'entier naturel naturel correspondant.
+l'entier naturel correspondant.
 Cependant, une telle représentation rapproche 
 arbitrairement des configurations diamétralement
 opposées dans le ${\mathsf{N}}$-cube comme  une puissance de
@@ -224,7 +227,7 @@ Les sorties (stratégies et configurations) sont mémorisées
 selon les mêmes règles.
 
 Concentrons nous sur la complexité du problème.
-Chaque entrée, de l'entrée-sortie de l'outil est un triplet 
+Chaque entrée de l'entrée-sortie de l'outil est un triplet 
 composé d'une configuration $x$, d'un extrait  $S$ de la stratégie à 
 itérer de taille $l$, $2 \le l \le  k$ et d'un nombre $m \in [l-1]$ d'itérations à exécuter.
 Il y a  $2^{\mathsf{N}}$  configurations $x$ et  ${\mathsf{N}}^l$ stratégies de
@@ -241,7 +244,7 @@ donc
 \dfrac{(k-1)\times {\mathsf{N}}^{k+1}}{{\mathsf{N}}-1} - \dfrac{{\mathsf{N}}^{k+1}-{\mathsf{N}}^2}{({\mathsf{N}}-1)^2} \enspace . \nonumber
 \end{equation}
 \noindent
-Ainsi le nombre de paire d'entrée-sortie pour les réseaux de neurones considérés
+Ainsi le nombre de paires d'entrée-sortie pour les réseaux de neurones considérés
 est 
 $$
 2^{\mathsf{N}} \times \left(\dfrac{(k-1)\times {\mathsf{N}}^{k+1}}{{\mathsf{N}}-1} - \dfrac{{\mathsf{N}}^{k+1}-{\mathsf{N}}^2}{({\mathsf{N}}-1)^2}\right) \enspace .
@@ -259,8 +262,9 @@ ont montré qu'un MLP pouvait apprendre la dynamique du circuit de Chua.
 Ce réseau avec rétropropagation est composé de  deux couches 
 et entraîné à l'aide d'une  propagation arrière Bayesienne.
 
-Le choix de l'architecture du réseau ainsi que de la méthode d'apprentissage 
-ont été détaillé dans~\cite{bcgs12:ij}.
+Les choix de l'architecture de réseau ainsi que ceux concernant les
+ méthodes d'apprentissage 
+ont été détaillés dans~\cite{bcgs12:ij}.
 En pratique, nous avons considéré des configurations de
 quatre éléments booléens 
 et une stratégie fixe de longueur 3.
@@ -366,8 +370,8 @@ apprendre le comportement de la stratégie.
 
 Les résultats concernant le second codage  (\textit{i.e.},  avec les codes
 de   Gray) sont synthétisés dans le tableau~\ref{tab2}. On constate 
-que le réseau apprend cinq fois mieux les comportement non chaotiques
-que ceux qui le sont. Ceci est est illustré au travers des 
+que le réseau apprend cinq fois mieux les comportements non chaotiques
+que ceux qui le sont. Ceci est  illustré au travers des 
 figures~\ref{Fig:chaotic_predictions} et~\ref{Fig:non-chaotic_predictions}.
 De plus, comme dans le codage précédent, les stratégies ne peuvent pas être 
 prédites.  
@@ -417,8 +421,8 @@ Nous avons enfin montré en pratique qu'il est difficile pour un
 réseau de neurones d'apprendre le comportement global d'itérations
 chaotiques.
 Comme il est difficile (voir impossible) d'apprendre le comportement 
-de telles fonction, il paraît naturelle de savoir si celles ci peuvent être 
-utilisées pour générer des nombres pseudo aléatoires, ce que propose la partie
+de telles fonctions, il paraît naturel de savoir si celles ci peuvent être 
+utilisées pour générer des nombres pseudo-aléatoires, ce que propose la partie
 suivante.