]> AND Private Git Repository - hdrcouchot.git/blobdiff - chaosANN.tex
Logo AND Algorithmique Numérique Distribuée

Private GIT Repository
-> prng inclus
[hdrcouchot.git] / chaosANN.tex
index 239251ecbcdda8b5ea03ba12ee8361656930cb4c..4ea34b905c064dc6790b5ee3dbada523c16d0110 100644 (file)
@@ -1,22 +1,20 @@
-% \section{Introduction}
-% \label{S1}
 
 Les réseaux de neurones chaotiques ont été étudiés à de maintes reprises 
 par le passé en raison notamment de leurs applications potentielles:
 %les mémoires associatives~\cite{Crook2007267}  
-les  composants utils à la  sécurité comme les fonctions de 
+les  composants utiles à la  sécurité comme les fonctions de 
 hachage~\cite{Xiao10},
 le tatouage numérique~\cite{1309431,Zhang2005759}
 ou les schémas de chiffrement~\cite{Lian20091296}.  
 Dans tous ces cas, l'emploi de fonctions chaotiques est motivé par 
-leur comportement imprévisibile et proche de l'aléa. 
+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}.
 L'architecture de réseaux de neurones de type Perceptron multi-couches
-(MLP) n'iterent quant à eux, pas nécesssairement de fonctions chaotiques.
+(MLP) n'itèrent quant à eux, pas nécessairement de fonctions chaotiques.
 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,8 +26,6 @@ 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. Ce chapitre caractérise la 
@@ -37,23 +33,13 @@ classe des réseaux de neurones MLP chaotiques. Il
 s'intéresse ensuite à l'étude de prévisibilité de systèmes dynamiques
 discrets chaotiques par cette famille de MLP.
 
-\JFC{revoir plan}
-
-The remainder of this research  work is organized as follows. The next
-section is devoted to the basics of Devaney's chaos.  Section~\ref{S2}
-formally  describes  how  to  build  a neural  network  that  operates
-chaotically.  Section~\ref{S3} is devoted to the dual case of checking
-whether  an existing neural  network is  chaotic or  not.  Topological
-properties of chaotic neural networks are discussed in Sect.~\ref{S4}.
-The  Section~\ref{section:translation}  shows  how to  translate  such
-iterations  into  an Artificial  Neural  Network  (ANN),  in order  to
-evaluate the  capability for this  latter to learn  chaotic behaviors.
-This  ability  is  studied in  Sect.~\ref{section:experiments},  where
-various ANNs try to learn two  sets of data: the first one is obtained
-by chaotic iterations while the  second one results from a non-chaotic
-system.  Prediction success rates are  given and discussed for the two
-sets.  The paper ends with a conclusion section where our contribution
-is summed up and intended future work is exposed.
+La section~\ref{S2} définit la construction d'un réseau de neurones 
+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
+étant obtenues à partir de fonction générées à l'aide du chapitre précédent.
 
 
 \section{Un réseau de neurones chaotique au sens de Devaney}
@@ -64,7 +50,7 @@ $f:\Bool^n\to\Bool^n$ telle que  $\textsc{giu}(f)$ est fortement connexe.
 Ainsi $G_{f_u}$ est chaotique d'après le théorème~\ref{Th:CaracIC}.
 
 On considère ici le schéma unaire défini par l'équation (\ref{eq:asyn}).
-On construit un perceptron multi-couche associé à la fonction  
+On construit un Perceptron multi-couches associé à la fonction  
 $F_{f_u}$. 
 Plus précisément, pour chaque entrée 
  $(x,s)   \in  \mathds{B}^n \times [n]$,
@@ -83,7 +69,7 @@ On obtient une réseau de neurones dont le comportement est le suivant
   à travers les liens de retours.
 \item Lorsque le réseau est  activé à la $t^{th}$  itération, l'état du 
   système $x^t  \in \mathds{B}^n$ reçu depuis la couche de sortie ainsi que le 
-  premier terme de la  sequence $(S^t)^{t  \in \Nats}$
+  premier terme de la  séquence $(S^t)^{t  \in \Nats}$
   (\textit{i.e.},  $S^0  \in [n]$)  servent à construire le nouveau vecteur de sortie.
   Ce nouveau vecteur, qui représente le nouvel état du système dynamique, satisfait:
   \begin{equation}
@@ -94,7 +80,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 unitaires}
   \label{Fig:perceptron}
 \end{figure}
 
@@ -112,7 +98,7 @@ On peut donc le  qualifier de chaotique au sens de Devaney.
 \section{Vérifier si un réseau de neurones est chaotique}
 \label{S3}
 On s'intéresse maintenant au cas où l'on dispose d'un
-réseau de neurones de type perceptron multi-couches
+réseau de neurones de type Perceptron multi-couches
 dont on cherche à savoir s'il est chaotique (parce qu'il a par exemple été 
 déclaré comme tel) au sens de Devaney. 
 On considère de plus que sa topologie est la suivante:
@@ -136,7 +122,7 @@ $\left(\left(x_1,\dots,x_n\right),s\right)    \in   \mathds{B}^n \times[n]$
 le vecteur 
 $\left(y_1,\dots,y_n\right)       \in       \mathds{B}^n$, où
 $\left(y_1,\dots,y_n\right)$  sont les sorties du réseau neuronal
-àaprès l'initialisation de la couche d'entrée avec 
+après l'initialisation de la couche d'entrée avec 
 $\left(s,\left(x_1,\dots, x_n\right)\right)$.  Ensuite, on définie $f:
 \mathds{B}^n       \rightarrow      \mathds{B}^n$  telle que 
 $f\left(x_1,x_2,\dots,x_n\right)$ est égal à 
@@ -159,12 +145,12 @@ $\textsc{giu}(f)$ est fortement connexe.
 
 
 \section{Un réseau de neurones peut-il approximer
-des itération unaires chaotiques?}
+des itération unaires chaotiques?}\label{sec:ann:approx}
 
 Cette section s'intéresse à étudier le comportement d'un réseau de neurones 
 face à des itérations unaires chaotiques, comme définies à 
 la section~\ref{sec:TIPE12}.
-Plus précésment, on considère dans cette partie une fonction  dont le graphe 
+Plus précisément, on considère dans cette partie une fonction  dont le graphe 
 des itérations unaires est fortement connexe et une séquence dans 
 $[n]^{\mathds{N}}$. On cherche à construire un réseau de neurones
 qui approximerait les itérations de la fonction $G_{f_u}$ comme définie 
@@ -211,17 +197,17 @@ Cependant, une telle représentation rapproche
 arbitrairement des configurations diamétralement
 opposées dans le $n$-cube comme  une puissance de
 deux et la configuration immédiatement précédente: 10000 serait modélisée 
-par 16 et  et 01111 par 15 alros que leur distance de Hamming est 15.
+par 16 et  et 01111 par 15 alors que leur distance de Hamming est 15.
 De manière similaire, ce codage éloigne des configurations qui sont 
 très proches: par exemple 10000 et 00000 ont une distance de Hamming 
 de 1 et sont respectivement représentées par 16 et 0.
 Pour ces raisons, le codage retenu est celui des codes de Gray~\cite{Gray47}.
 
 Concentrons nous sur la traduction de la stratégie.
-Il n'est naturellement pas possible de traduire une stragtégie 
+Il n'est naturellement pas possible de traduire une stratégie 
 infinie quelconque à l'aide d'un nombre fini d'éléments.
 On se restreint donc à des stratégies de taille 
-$l \in \llbracket 2,k\rrbracket$, où $k$ est un parametre défini
+$l \in \llbracket 2,k\rrbracket$, où $k$ est un paramètre défini
 initialement. 
 Chaque stratégie est mémorisée comme un entier naturel exprimé en base 
 $n+1$: à chaque itération, soit aucun élément n'est modifié, soit un 
@@ -232,7 +218,7 @@ en commençant à $x$.
 Les sorties (stratégies et configurations) sont mémorisées 
 selon les mêmes règles.
 
-Concentrons nous sur la complexité du problèmew.
+Concentrons nous sur la complexité du problème.
 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 \in \llbracket 2, k\rrbracket$ et d'un nombre $m \in  \llbracket 1, l-1\rrbracket$ d'itérations à exécuter.
@@ -256,19 +242,19 @@ $$
 2^n \times \left(\dfrac{(k-1)\times n^{k+1}}{n-1} - \dfrac{n^{k+1}-n^2}{(n-1)^2}\right) \enspace .
 $$
 Par exemple, pour $4$   éléments binaires et une stratégie d'au plus 
-$3$~termes on obtient 2304 couples d'entrée-sorties.
+$3$~termes on obtient 2304 couples d'entrée-sortie.
 
 \subsection{Expérimentations}
 \label{section:experiments}
-On se focalise dans cette section sur l'entraînement d'un perceptron 
-multi-couche pour apprendre des itérations chaotiques. Ce type de réseau
+On se focalise dans cette section sur l'entraînement d'un Perceptron 
+multi-couches pour apprendre des itérations chaotiques. Ce type de réseau
 ayant déjà été évalué avec succès dans la prédiction de 
 séries chaotiques temporelles. En effet, les auteurs de~\cite{dalkiran10} 
 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 entrainé à l'aide d'une  propagation arrière Bayesienne.
+et entraîné à l'aide d'une  propagation arrière Bayesienne.
 
-Le choix de l'achitecture du réseau ainsi que de la méthode d'apprentissage 
+Le choix de l'architecture du réseau ainsi que de la méthode d'apprentissage 
 ont été détaillé dans~\cite{bcgs12:ij}.
 En pratique, nous avons considéré des configurations de
 quatre éléments booléens 
@@ -379,15 +365,15 @@ que ceux qui le sont. Ceci est 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.  
-On constate que ce second codage réduit certe le nombre de sorties, mais est 
+On constate que ce second codage réduit certes le nombre de sorties, mais est 
 largement moins performant que le premier.
 On peut expliquer ceci par le fait
 que ce second codage garantit que deux entiers successifs correspondent 
-à deux configurations voisines, \textit{ie.e}, qui ne diffèrent que d'un 
+à deux configurations voisines, \textit{i.e.}, qui ne diffèrent que d'un 
 élément.
 La réciproque n'est cependant pas établie et deux configurations voisines
-peuvent être traduitent par des entiers très éloignés et ainsi difficil
-àapprendre. 
+peuvent être traduites par des entiers très éloignés et ainsi difficile
+ à apprendre. 
 
 
 \begin{figure}[ht]
@@ -415,8 +401,8 @@ peuvent être traduitent par des entiers très éloignés et ainsi difficils
 
 
 \section{Conclusion}
-Dans ce chapitre, nous avons établi une simlilitude entre les itérations 
-chaotiques et une famille  de perceptrons multicouches.
+Dans ce chapitre, nous avons établi une similitude entre les itérations 
+chaotiques et une famille  de Perceptrons multi-couches.
 Nous avons d'abord montré comment  construire un réseau de neurones 
 ayant un comportement chaotique.
 Nous avons présenté ensuite comment vérifier si un réseau de neurones 
@@ -424,6 +410,11 @@ Nous avons présenté ensuite comment vérifier si un réseau de neurones
 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.
+
+
 % \appendix{}
 
 % \begin{Def} \label{def2}