Où R = nombre d’éléments dans le vecteur d’entrée Figure 3-4 : Neurone avec le vecteur d’entrée Le neurone a un biais b, qui est additionné avec les entrées poids pour former?. Ainsi la
Trang 1Projet MODEAU :
Application des méthodes d’intelligence
artificielle à l’analyse de la production d’eau
des puits de stockage de gaz
Rapport de stage de fin d’études
Service Assistance Géosciences
361, avenue du Président WILSON
93211 Saint-Denis La Plaine Cedex
Trang 2induit également une production d’eau de gisement qui perturbe l’exploitation des sites
et représente un cỏt important lors du traitement Afin de minimiser cet impact il est utile de prévoir ces arrivées d’eau
Une instrumentation a été mise en place pour mesurer les quantités d’eau arrivant en surface L’exploitation de ces données par méthode d’apprentissage devrait améliorer la gestion des puits et des débits imposés L’objectif de ce stage est de prédire l’occurrence des bouchons d’eau dans les réseaux de collecte des stockages de gaz
Dans ce rapport, une étude sur l’utilisation des réseaux de neurones pour la prévision des quantités d’eau est réalisée Puis trois types de modèles neuronaux différents (a savoir Backpropagation, Filtres adaptatifs et Réseaux dynamique) sont présentés et évalués
also produces water which disturbs the exploitation of the sites and represents an important treatment cost In order to minimize this impact it is necessary to envisage these water arrivals
An instrumentation to measure the quantities of water arriving on the surface The exploitation of these data by machine learning should improve the management of the wells and the imposed flows The objective of the training is to predict the occurrence of water slugging in the separators
In this report, a study about the use of reural networks to predict the quantity of water produced is presented, three types of neural models are shown (ie Backpropagation, Adaptive Filters and Dynamic Networks) and evaluated
Trang 3Sommaire
I PRESENTATION DE GAZ DE FRANCE 5
1.1 Organisation 5
1.2 Activités 5
1.3 Présentation de la Direction Exploration Production 6
1.3.1 Organisation de la Direction Exploration Production 6
1.3.2 Accueil des stagiaires 7
II CONTEXTE DU STAGE : PROJET MODEAU 8
2.1 Stockages de gaz en nappe aquifère 8
2.2 Projet MODEAU 8
2.3 Essais à Cerville 9
2.3.1 Instrumentations : 9
2.3.2 Bouchons 10
2.3.3 Données L.I.T et outil de gestion des bouchons d’eau 10
2.4 Objectifs du stage 11
2.5 Logiciel utilisé 11
III RÉSEAU DE NEURONES 12
3.1 Introduction 12
3.2 Modèle de neurone et Architectures de réseau 13
3.2.1 Modèle de neurone 13
3.2.2 Architectures de réseau 14
3.3 Le perceptron 18
3.3.1 Introduction 18
3.3.2 Modèle de neurone 18
3.3.3 Architecture de perceptron 20
3.3.4 Règles d’apprentissage 20
3.3.5 Règle d’apprentissage de perceptron 21
3.4 Algorithme d’apprentissage de « Backpropagation » 22
3.4.1 Introduction 22
3.4.2 Architecture de neurone 22
3.4.3 Algorithme de Backpropagation 24
3.5 Filtres adaptatifs et formation adaptative 25
3.5.1 Introduction 25
3.5.2 Modèle de neurone linéaire 25
3.5.3 Architecture de réseau linéaire adaptatif 25
3.5.4 L’algorithme LMS (Least Mean Squared) 26
3.5.5 Filtrage adaptatif (adapt) 26
3.6 Réseau dynamique 28
3.6.1 Introduction 28
3.6.2 Focused Time-Delay Neural Network (newfftd) 28
3.7 Conclusion 28
IV TRAVAIL EFFECTUE 30
4.1 Pré-traitment de données 30
4.2 Prédiction des événements 32
4.2.1 Backpropagation 33
Trang 44.2.2 Filtre adaptatif 46
V Conclusion 53
VI Références 54
VII Annexe 56
7.1 Scripts d’apprentissages avec Backpropagation 56
7.2 Script d’apprentissage avec Filtre Adaptatif 57
7.3 Script de prévoir niveau d’eau avec gaz proposé 58
Trang 51 PRESENTATION DE GAZ DE FRANCE
Gaz de France est un acteur majeur de l’énergie en Europe Le Groupe produit, transporte, distribue et commercialise du gaz, de l’électricité et des services auprès de 13,8 millions de clients (particuliers, entreprises, collectivités)
1.1 Organisation
Le management de Gaz de France repose sur un Comité exécutif et quatre Branches opérationnelles Quatre fonctions de pilotage sont également rattachées au Président Directeur Général: stratégie, communication, audit et risques, et délégation aux cadres dirigeants du Groupe
Gaz de France a pour ambition de fournir de l’énergie et des services à ses clients au meilleur prix, de s’imposer comme un gestionnaire d’infrastructures de référence en Europe, d’être un acteur engagé du développement durable et de créer de la valeur pour ses actionnaires
• Etre leader du GNL en Europe
Gaz de France est le 2ème acteur du gaz naturel liquéfié (GNL), le 2ème opérateur de réception de GNL en Europe et le 5ème importateur mondial En 2005, le GNL a représenté 26
% des approvisionnements de long terme de Gaz de France
• Gérer des infrastructures
Gaz de France investit significativement sur son réseau en France et renforce ses positions
en Europe, pour s’imposer comme un gestionnaire d’infrastructures de référence
Trang 61.3 Présentation de la Direction Exploration Production
Au cours de mon stage, j’ai travaillé au sein de la Direction Exploration Production (DEP)
de Gaz de France Il s’agit d’une direction relativement jeune qui a été créée en 2000 pour diversifier et sécuriser les ressources en gaz naturel du groupe Aujourd’hui, l’exploration production constitue une activité clef de l’entreprise
La DEP a trois objectifs majeurs :
• Disposer à moyen terme d’une porte-feuille de réserves prouvées et probables d’un milliard de barils-équivalent-pétrole
• Accroître la production du groupe par croissance interne et externe
• Accroître la compétitivité du groupe
1.3.1 Organisation de la Direction Exploration Production Organisation de la Direct ion Exploration Production ion Exploration Production
La Direction Exploration Production inclut cinq départements :
• Département acquisitions Département acquisitions
Le département acquisition (DAC) est responsable des acquisitions, des ventes et de l’échange des capitaux dans le secteur d’exploration et de production
• Département économie et finance Département économie et finance
Le département économie et finance (DEF) inclut deux équipes :
L’équipe d’économie et d’évaluation des risques :
Les fonctions de cette équipe sont de mettre à jour la gestion du portefeuille, la gestion des risques, la consolidation et le développement de l’acquisition de la division d’exploration-production et de la stratégie d’exploration
L’équipe de contrôle et de finances :
Cette équipe a le rôle de la gestion de contrôle dans la division de production d’exploration Ceci consiste à préparer et surveiller le budget, à assurer la collecte et le traitement de l’information avec les filiales, et à suggérer des mesures pour améliorer les résultats de l’activité
• Département de Géosciences Département de Géosciences
Le département de Géosciences comporte 3 sections : appui scientifique, assistance technique et projets Geosciences Le département de Geosciences a pour missions de réaliser les études techniques et économiques en géosciences (géologie, géophysique, réservoir), pour les stockages en aquifère et les gisements
• Département opérations Département opérations
Le département opérations (DOP) assure la qualité du travail technique dans l’acquisition, le développement et la production Il assure l’intégration, les synergies et le développement de
la compétence, évalue des incertitudes et les risques techniques
Trang 7• Département exploration Département exploration
Le département exploration (DEX) a pour but de prospecter afin d’étendre les sources d’approvisionnement
Mon stage s’est déroulé dans le Département Géosciences, dans le cadre du projet MODEAU
Ce projet est un projet support pour la Division des Grandes Infrastructures (DGI) qui opère les stockages
1.3.2 Accueil des stagiaires Accueil des stagiaires
La Direction Exploration Production de Gaz de France accueille régulièrement de nombreux stagiaires L’habitude de travailler avec des stagiaires rend leur accueil chaleureux
et facilite leur intégration au sein de leur équipe de travail Les stagiaires ont de nombreux avantages au sein de cette entreprise, comme le temps de travail de 35 heures par semaine,
le restaurant du site à prix correct, la possibilité d’accéder à la bibliothèque, à la vidéothèque etc
Trang 82 CONTEXTE DU STAGE : PROJET MODEAU
2.1 Stockages de gaz en nappe aquifère
Les nappes aquifères, qui contiennent le plus souvent de l’eau à l’état naturel, sont utilisées pour stocker du gaz dans les pores des roches qui les constituent Les structures géologiques sont des anticlinaux couverts par une roche imperméable (argiles) Le gaz est injecté durant l’été pour être stocké, puis soutiré en hiver afin d’être distribué aux clients Le processus de production et de stockage se déroule sur toute l’année
Dans la nappe aquifère, le gaz est injecté au-dessus de l’eau, donc lorsque le puits de production soutire le gaz, il induit également une production d’eau qui perturbe l’exploitation des sites et représente un cỏt important lors du traitement
Figure 2-1: Stockages de gaz en nappe aquifère
2.2 Projet MODEAU
L’eau produite lors du soutirage du gaz des stockages en nappe aquifère a un impact sur les cỏts d’exploitation et la disponibilité des installations Cet impact tend à s’accroỵtre avec les contextes d’exploitation à venir : accès des tiers aux stockages, irrégularité des cycles de production Les objectifs du projet sont :
• fournir des outils de prédiction de la production d’eau et de ses impacts en fonction des conditions d’exploitation et de l’état du stockage ;
• fournir des règles de conception de la chaỵne de l’eau de production (technologie, configuration et dimensionnement)
Le projet MODEAU (MOMOMOdélisation des venues DDD’EAUEAUEAU ) s’intéresse au sous au sous au sous -sol et aux puitssol et aux puitssol et aux puits
Trang 9L’un des axes du projet consiste à prévoir les arrivées d’eau sous forme de « bouchons » des puits vers les séparateurs Pour cela une technique basée sur les réseaux de neurones a été envisagée
2.3 Essais à Cerville
Des essais ont été organisés sur le site de stockage de Cerville Ils ont permis de réaliser une observation complète de la production d’eau et de fournir des données fiables de venue d’eau Les essais ont eu lieu sur le puits VA27
Trang 10Figure 2-4 : niveau d’eau dans le séparateur et indication des purges Mise en évidence d’un bouchon d’eau
2.3.3 Données L.I.T et outil de gestion des bouchons d’eau Données L.I.T et outil de gestion des bouchons d’eau
Suite aux précieux enseignements de l’analyse des données fournies par le L.I.T la piste stochastique de la prévision des bouchons d’eau au séparateur a été renforcée : un modèle mécanique du cheminement des bouchons avec les effets tampon des points bas de la collecte avec le logiciel OLGA est plus laborieuse En revanche une méthodologie basée sur les
Trang 11méthodes d’apprentissage paraît pertinente Une rencontre avec l’équipe concernée de la DR
a confirmé la faisabilité d’un tel projet, et la mise au point d’un prototype est prévue pour
• Analyser et pré-Analyser et pré traiter les données fournies par le L.I.T traiter les données fournies par le L.I.T traiter les données fournies par le L.I.T Les données ont été enregistrées sur plusieurs puits du stockage de Cerville au cours des campagnes de soutirage de 2006 et 2007 Avant de les utiliser, il faut détecter et corriger des données erronées, compléter les données manquantes
• Tester différentes méthodes d’apprentissage pour prévoir les quantités d’eau Tester différentes méthodes d’apprentissage pour prévoir les quantités d’eau produites
produites ; je dois utiliser différents modèles de réseaux de neurones pour prédire l’arrivée des bouchons d’eau, analyser et évaluer les résultats de chacun d’entre eux,
et enfin sélectionner le meilleur
• Mettre en place une maquette ; en se basant sur les résultats obtenus, je vais choisir le Mettre en place une maquettemodèle qui pourra être appliqué en exploitation sur site
• Evaluer la pertinence d’un tel outil pour l’aide à l’exploitation Evaluer la pertinence d’un tel outil pour l’aide à l’exploitation
2.5 Logiciel utilisé
MATLAB
MATLAB est un logiciel commercial de calcul interactif Il permet de réaliser des simulations numériques basées sur des algorithmes d’analyse numérique Il peut donc être utilisé pour la résolution approchée d’équations différentielles, d’équations aux dérivées partielles ou de systèmes linéaires, etc
J’ai utilisé le logiciel MATLAB au cours de mon stage, c’est un logiciel très puissant et il dispose en plus d’une boîte à outils dédiée à l’apprentissage et la simulation des réseaux de neurones (Neural Network Toolbox) dont je me suis servi pour réaliser mes tests
Trang 123 RÉSEAU DE NEURONES
Les méthodes d’apprentissage automatique ont montré leur utilité dans de nombreux domaines et ont permis de résoudre un grand nombre de problèmes industriels, c’est pourquoi le projet MODEAU a décidé de faire appel à ce type de technologie pour résoudre le problème des bouchons d’eau
Parmi les techniques d’apprentissage, les réseaux de neurones ont déjà fait leur preuve et sont largement employés dans les systèmes de contrôle-commande
3.1 Introduction
Les réseaux de neurones sont composés d’éléments simples (ou neurones) fonctionnant
en parallèle Ces éléments ont été fortement inspirés par le système nerveux biologique Comme dans la nature, le fonctionnement du réseau (de neurone) est fortement influencé par
la connexion des éléments entre eux On peut entraîner un réseau de neurones pour une tâche spécifique (reconnaissance de caractères par exemple) en ajustant les valeurs des connections (ou poids) entre les éléments (neurones)
En général, l’apprentissage des réseaux de neurones est effectué de sorte que pour une entrée particulière présentée au réseau corresponde une cible spécifique L’ajustement des poids se fait par comparaison entre la réponse du réseau (ou sortie) et la cible, jusqu’à ce que
la sortie corresponde (au mieux ?) à la cible On utilise pour ce type d’apprentissage dit
«supervisé » un nombre conséquent de couples entrée/sortie
Figure 3-1 : principe de l’apprentissage des réseaux de neurones
Les réseaux de neurones ont été entraînés pour exécuter des fonctions complexes dans divers champs, incluant la reconnaissance des formes, l’identification, la classification, la parole, la vision, et les systèmes de commande
Trang 133.2 Modèle de neurone et Architectures de réseau
3.2.1 Modèle de neurone Modèle de neurone
3.2.1.1 Neurone simpleNeurone simple
Un neurone avec une entrée scalaire simple et aucun biais apparaỵt du cơté gauche dessous :
ci-Figure 3-2 : Neurone simple
L’entrée scalaire p est transmise par une connexion qui multiplie sa force par le poids scalaire w pour former le produit wp Ici l’entrée poids wp est le seul argument de la fonction
de transfert f, qui produit la sortie scalaire a Le neurone du cơté droit a un biais scalaire b
On peut voir le biais ajouté au produit wp comme un décalage de la fonction f vers la gauche par une quantité b Le biais est comme un poids, sauf qu’il a une entrée constante de 1
La net entrée n est la somme de l’entrée poids wp et du biais b :
b wp
Cette somme est l’argument de la fonction de transfert f, typiquement une fonction d’étape ou une fonction sigmọde, qui prend l’argument n et produit le rendement a Notons que w et b sont les deux paramètres scalaires réglables du neurone L’idée principale des réseaux de neurones est que de tels paramètres peuvent être ajustés de sorte que le réseau montre le comportement désiré Ainsi, on peut former le réseau pour faire un travail particulier en ajustant le poids ou le biais ou peut être le réseau lui-même ajustera ces paramètres pour atteindre un certain but désiré
3.2.1.2 Fonctions de transfertFonctions de transfert
Il y a plusieurs types de fonctions de transferts, trois des fonctions les plus utilisées généralement sont montrées ci-dessous :
Trang 14Fonction Hard-limit Fonction linéaire Fonction Log-Sigmọd
Figure 3-3 : Les fonctions de transfert
3.2.1.3 Neurone avec le vecteur d’entréeNeurone avec le vecteur d’entrée
Un neurone avec un vecteur d’entrée simple de R éléments est montré ci-dessous Ici les éléments entrés d’individup1, p2, , pR sont multipliés par des poids w1,1, w1,2, , w1,R
Leur somme est simplement WpWp, le produit scalaire de la matrice WWW et du vecteur ppp
Où R = nombre d’éléments dans le vecteur d’entrée
Figure 3-4 : Neurone avec le vecteur d’entrée
Le neurone a un biais b, qui est additionné avec les entrées poids pour former ? net entrée n Cette somme, n, est l’argument de la fonction f
b p w p
w p w
n = 1 , 1 1+ 1 , 2 2 + + 1 ,R R + 3.2.2 Architectures de réseau Architectures de réseau
Deux ou plus des neurones montrés ci-dessus peuvent être combinés dans une couche,
et un réseau particulier pourrait contenir une ou plusieurs couches
3.2.2.1 Une couche de neuronesUne couche de neurones
Un réseau d’une couche avec R éléments d’entrées et S neurones :
Trang 15Où : R= nombre d’éléments dans vecteur d’entrée
S= nombre de neurones dans la couche
Figure 3-5 : Une couche de neurones
Dans ce réseau, chaque élément du vecteur d’entrée est relié à chaque neurone entré par
R R
w w w
w w w
w w w W
, 2 , 1 ,
, 2 2 , 2 1 , 2
, 1 2 , 1 1 , 1
3.2.2.2 Neurone multicoucheNeurone multicouche
Un réseau peut avoir plusieurs couches Chaque couche a une matrice de poids W, un vecteur de biais b, et un vecteur de sortie a
Trang 16Figure 3-6 : Le neurone multicouche
Le réseau montré ci-dessus a les entrées R1, les neurones S1 dans la première couche, les neurones S2 dans la deuxième couche, etc Il est commun pour les différentes couches qui elles-même ont différents nombres des neurones Une entrée constante 1 est ajoutée au biais pour chaque neurone
Notons que les sorties de chaque couche intermédiaire sont les entrées à la couche suivante Ainsi la couche 2 peut être analysée comme réseau d’une couche avec les entrées S1, les neurones S2, et une matrice du poids W2 S2xS1 L’entrée à la couche 2 est a1, la sortie est a2 Maintenant, tous les vecteurs et matrices d’une couche 2 ont été identifiés, ils peuvent être traités comme réseau à une seule couche Cette approche peut être adoptée avec n’importe quelle couche du réseau
Les réseaux Multicouches sont puissants Par exemple, un réseau de deux couches, ó la première couche est sigmọde et la deuxième couche est linéaire, permet d’approcher n’importe quelle fonction (avec un nombre fini de discontinuités) Ce type de réseau à deux couches est employé intensivement dans la méthode dite Backpropagation
3.2.2.3 Structures de donnéesStructures de données
Le format des données d’entrée va affecter l’évolution des poids et des biais des réseaux
de neurones lors de leur apprentissage
• Réseaux statiques (Apprentissage par « paquetRéseaux statiques (Apprentissage par «paquetpaquet »)»)»)
Un réseau dit statique est un réseau qui ne contient pas de connexion arrière (feedback
ou delay) Par conséquent, on peut lui présenter les données en entrée dans n’importe quel ordre, cela n’influencera pas l’évolution de ses poids lors de la phase d’apprentissage Il est alors préférable de lui donner tout le jeu de donnée en un seul coup lors de la phase d’apprentissage On parle alors d’apprentissage par paquet (« batch training ») Les réseaux
« feedforward » ne peuvent pas simuler des processus dépendant du temps
• Réseaux dynamiques (Apprentissage «Réseaux dynamiques (Apprentissage «s (Apprentissage « séquentielséquentielséquentiel »)»)»)
Trang 17Par contre, si l’on veut simuler un processus qui dépend du temps, alors on pourra utiliser un réseau de neurones contenant des connections arrières L’ordre de présentation du jeu de données au réseau de neurone sera alors primordial On parle alors d’apprentissage séquentiel
3.2.2.4 Modèles d’apprentissagesModèles d’apprentissages
Cette section décrit deux modèles différents d’apprentissages
L’apprentissage « par paquet » (batch training) du réseau consiste à ajuster les poids et biais en présentant les vecteurs d’entrée/sortie de tout le jeu de données
L’apprentissage « pas à pas » ou « séquentiel » (incrémental training) consiste à ajuster les poids et biais en présentant les composantes du vecteur d’entrée/sortie les unes après les autres Ce type d’apprentissage est souvent qualifié d’apprentissage « en ligne » (« on line » training) ou « adaptatif » (« adaptive » training)
L’apprentissage permet aux réseaux de neurones de réaliser des taches complexes dans différents types d’application (classification, identification, reconnaissance de caractères, de
la voix, vision, système de contrôle…) Ces réseaux de neurones peuvent souvent apporter une solution simple à des problèmes encore trop complexes ne pouvant être résolus rapidement par les ordinateurs actuels (puissance de calcul insuffisante) ou par
un manque de connaissances
La méthode d’apprentissage dite « supervisé » est souvent utilisée mais des techniques d’apprentissage non supervisées existent pour des réseaux de neurones spécifiques Ces réseaux peuvent, par exemple, identifier des groupes de données (réseaux
de Hopfield)
Les réseaux de neurones ont une histoire relativement jeune (environ 50 ans) et les applications intéressantes des réseaux de neurones n’ont vu le jour qu’il y a une vingtaine d’année (développement de l’informatique)
Exemple de réseaux de neurones
Exemple de réseaux de neurones
a) Réseau entièrement bouclé (carte
topologique)
b) Réseaux avec connexions arrières (réseaux récurrents ou feedback)
Trang 18c) Réseau « ordonné » sans connexion arrière (réseau feedforward)
Figure 3-7 : Exemples des réseaux de neurones
3.3.1 Introduction Introduction
Rosenblatt a créé beaucoup de variations du perceptron Un des plus simple est un réseau d’une couche dont les poids et les biais peuvent être entraînés pour produire un vecteur de cible correct correspondant au vecteur d’entrée La technique d’apprentissage utilisée s’appelle la règle d’étude de perceptron Le Perceptron est particulièrement approprié aux problèmes simples de classification Il peut résoudre des problèmes rapidement et de manière fiable En outre, la compréhension des opérations du perceptron fournit une bonne base pour comprendre des réseaux plus complexes
3.3.2 Modèle de neurone Modèle de neurone
Un neurone de perceptron emploie la fonction de transfert hardlim
Ou : R= nombre d’éléments dans
le vecteur d’entrée
Figure 3-8 : Un neurone de perceptron
Trang 19Chaque entrée a un poids approprié w1j, et la somme des entrées poids est envoyée à la fonction de transfert de dur-limite, qui a le biais d’entré 1 La fonction de transfert de dur-limite, qui renvoie 0 ou 1, est montrée ci-dessous
Le fonction de transfert de
dur-limite
Figure 3-9 : La fonction de transfert de dur-limite
Le neurone de perceptron produit 1 si net d’entrée dans la fonction de transfert est égale
ou supérieure à 0, autrement il produit 0
La fonction de transfert de dur-limite donne à un perceptron la capacité de classifier des vecteurs d’entrée en divisant l’espace d’entrée en deux régions Spécifiquement, les sorties seront 0 si l’entrée net n est moins de 0, ou 1 si l’entrée net n est 0 ou plus
L’espace d’entrée d’un neurone dur-limite de deux entrées avec les poids
1 ,
1 1,2
1
,
1 = − w =
w et le biais b = 1 est montré ci-dessous :
Figure 3-10 : Région de classification
Deux régions de classification sont constituées par la ligne de frontière de décision L
àWp + b = 0 Cette ligne est perpendiculaire à la matrice de poids W et décalée selon le biais
b Le vecteur d’entrée au-dessus et à la gauche de la linge L aura un net d’entrée plus grand que 0, et produira le neurone de dur-limite 1 Les vecteurs d’entrées ci-dessous et à la droite
Trang 20de ligne L produisent le neurone 0 On peut sélectionner le poids et les valeurs polarisées pour orienter et déplacer la ligne de division afin de classifier l’espace d’entrée comme désiré Les neurones de dur-limite sans biais ont toujours une ligne de calssification qui passe par l’origne Ajouter un biais permet au neurone de résoudre des problèmes ó les deux ensembles de vecteurs d’entrées ne sont pas situés de part et d’autre de l’origine Le biais permet à la frontière de décision d’être décalée loin de l’origine
3.3.3 Architecture de perceptron Architecture de perceptron
Le réseau de type perceptron se compose d’une seule couche de S neurones de
perceptron reliés aux R entrées par un ensemble de poids wi,j Les index i et j du réseau indiquent que wi,j est la connexion du jième entrée au iième neurone
Figure 3-11 : Architecture de perceptron
3.3.4 Règles d’apprentissage Règles d’apprentissage
Une règle d’apprentissage est définie comme procédure pour modifier les poids et les biais d’un réseau (cette procédure est utilisée comme un algorithme d’apprentissage) La règle d’apprentissage est appliquée pour entraỵner le réseau afin d’exécuter une certaine tâche particulière Il y a deux types d’apprentissage : l’apprentissage supervisé et l’apprentissage non-supervisé
Dans l’apprentissage supervisé, la règle d’apprentissage est équipée d’ensemble d’exemples de comportements propres de réseaux
{ p1, t1} { , p2, t2} , , { pQ, tQ}
ó pQest une entrée au réseau, et tQest la sortie correspondante correcte (cible) Quand les entrées sont appliquées au réseau, les sorties du réseau sont comparées aux cibles La règle d’apprentissage est employée pour ajuster les poids et les biais du réseau afin de déplacer les sorties de réseau plus près des cibles La règle d’apprentissage du perceptron est dans la catégorie de l’apprentissage supervisé
Trang 21Dans l’apprentissage non-supervisé, les poids et les biais sont modifiés en réponse aux entrées de réseau seulement Il n’y a aucune cible disponible La plupart de ces algorithmes réalisent des opérations de regroupement de données Elles catégorisent les entrées dans un nombre fini de classes C’est particulièrement utile dans des applications telles que la classification des textes, caractérisation des clients, recherche de profils etc
3.3.5 Règle d’apprentissage de perceptron Règle d’apprentissage de perceptron perceptron
Les perceptrons sont formés sur des exemples du comportement désiré Le comportement désiré peut être récapitulé par un ensemble de paires entrée/sorties
Q
Qt p t p t
p11, 2 2, ,Dans cette formule, p est une entrée au réseau et t le produit correspondant (cible) L’objectif est de réduire l’erreur e, qui est la différence entre la réponse de neurone a et le vecteur de cible t
Il y a trois conditions qui peuvent se produire pour un neurone simple une fois qu’un vecteur d’entrée p est présenté et la réponse du réseau a est calculée :
• Cas 1 Si un vecteur d’entrée est présenté et le rendement du neurone est correct (a =
t et e = t – a = 0), alors le vecteur de poids w n’est pas changé
• Cas 2 Si le rendement de reurone est 0 et la cible est 1 (a = 0,t = 1, et e = t – a = 1),
le vecteur d’entrée est ajouté au vecteur de poids w Ceci entraîne que le vecteur de poids est plus près du vecteur d’entrée, augmentant la chance que le vecteur d’entrée soit classifié comme 1 à l’avenir
• Cas 3 Si le rendement de neurone est 1 et le cible est 0 (a = 1,t = 0, et e = t – a = 1), le vecteur d’entrée p est soustrait du vecteur de poids w Ceci implique que le vecteur de poids est plus lointain à partir du vecteur d’entrée, augmentant la chance que le vecteur d’entrée soit classifié comme 0 à l’avenir
-La règle d’apprentissage de perceptron peut être écrite plus succinctement en terme d’erreur e = t – a et le changement à faire au vecteur de poids ∆w:
Cas 1 Si e = 0, faire un changement ∆w égal à 0
Cas 2 Si e = 1, faire un changement ∆w égal à ppT
Cas 3 Si e = -1, faire un changement ∆w égal à - p pT
Chacun des trois cas peut alors être écrit avec une expression simple :
T Te a
t − =
=
Trang 22
La règle d’apprentissage de perceptron peut être récapitulée comme suit :
T old new
ep W
et
e b
Les réseaux de neurones constitués de biais et de fonctions de transfert « sigmọdale »
et une couche de sortie constituée de fonctions de transfert linéaires sont capables d’approximer n’importe qu’elle fonction possédant un nombre fini de discontinuité
La règle delta impose toujours
W
F W
3.4.2 Architecture de neurone Architecture de neurone
L’architecture de réseau qui est le plus utilisé généralement avec l’algorithme de backpropagation est le réseau multicouche de feedforward
3.4.2.1 Modèle de neurone (logisg, tansig, purelin)Modèle de neurone (logisg, tansig, purelin)
Un neurone élémentaire avec R entrées est montré ci-dessous Chaque entrée a un poids approprié w La somme des entrées de poids et des biais forme l’entrée à fonction de transfert f Les neurones peuvent utiliser n’importe quelle fonction de transfert différente pour produire leur sorties
Trang 23Ou
R = nombre d’éléments dans le vecteur d’entrée
Figure 3-12 : Modèle de neurone Backpropagation
Le réseau multicouche peut utilser les fonctions de transfert logsig, tansig ou purelin Si la dernière couche d’un réseau multicouche a les neurones sigmọdes, alors les sorties du réseau sont limitées à une petite période Si la sortie de réseau est linaire, on peut prendre n’importe quelle valeur
Fonction de transfer
Log-Sigmọd
Fonction de transfer Sigmọd
Tag-Fonction de transfert Linéaire
Figure 3-13 : Les fonctions de transfert
3.4.2.2 Réseau feedRéseau feed -forwardforwardforward
Un réseau seule couche avec S neurones de logsig, R entrées est montré ci-dessous :
Trang 24Ou R=nombre d’éléments dans le vecteur
d’entrée S= nombre de neurones dans la couche
Figure 3-14 : Réseau feed-forward avec une couche
Les réseaux de Feedforward ont souvent une ou plusieurs couches cachées de neurones sigmọdes suivis d’une couche de sortie de neurones linéaires Les neurones multicouches avec des fonctions de transferts non-linéaires permettent au réseau d’utiliser des relations non-linéaires et linéaires entre le vecteur d’entrée et le vecteur de sorite La couche de sortie linéaire laisse le réseau produir des valeurs en-dehors de la période (-1,1)
De plus, si on veut contraindre les sorties d’un réseau (comme entre 0 et 1), alors la couche de sortie devrait employer une fonction de transfert (comme le logsig)
Un réseau avec deux couches tansig/purelin est présenté ci-dessous :
Figure 3-15 : Réseau feed-forward avec deux couches tansig/purelin
Ce réseau peut être employé comme une fonction approximative en général Il peut bien apporcher n’impore quelle fonction avec un nombre arbitraire fini de discontinuités quand on donne suffisament de neurones dans la couche cachée
3.4.3 Algorithme de Backpropagation Algorithme de Backpropagation
Il y a beaucoup de variations de l’algorithme de backpropagation, dont plusieurs sont utilisés dans ce rapport Le négatif du gradient est le plus simple à implémenter dans backpropagation pour ajuster des poids et des biais dans la direction telle que la fonction d’exécution diminue le plus rapidement Une itération de cet algorithme peut être écrite
k k k
x +1 = − α
Où xk est un vecteur des poids et des biais courants, gk est le gradient courant et αk est
le taux d’apprentissage (learning rate)
Trang 253.5 Filtres adaptatifs et formation adaptative
3.5.1 Introduction Introduction
Les réseaux d’ADALINE (adaptive linear neuron networks) sont semblables au perceptron, mais leur fonction de transfert est linéaire plutơt que de dur-limiter Ceci permet à leurs sorties de prendre n’importe quelle valeur, tandis que le rendement de perceptron est limité à
0 ou à 1 L’ADALINE et le percpetron peuvent résoudre linéairement des problèmes Cependant, la règle de learning de LMS(least mean squares) est beaucoup plus puissante que la règle de perceptron
3.5.2 Modèle de neurone linéaire Modèle de neurone linéaire
Un neurone linéaire avec R entrés :
Où
R = nombre d’éléments dans le vecteur d’entrée
Figure 3-16 : Modèle de neurone linéaire
Ce réseau a la même structure que le perceptron La seule différence est que le neurone linéaire utilise la fonction de transfert linéaire appelée purelin
Figure 3-17 : La fonction de transfert linéaire
La fonction de transfert linéaire calcule la sortie du neurone par simplement la valeur passée à elle
3.5.3 Architecture de réseau linéaire adaptatif Architecture de réseau linéaire adaptatif
Le réseau d’ADALINE montré ci-dessous a une couche de S neurones reliés aux R entrés par une matrice avec des poids W
Trang 26Où
R = nombre d’éléments dans le vecteur d’entrée
S = nombre de neurones dans la couche
Figure 3-18 : L’architecture de réseau linéaire adaptatif
3.5.4 L’algorithm L’algorith m me e e LMS (Least LMS (Least LMS (Least Mean Mean Mean Squared Squared Squared) ) )
Comme la règle d’apprentissage de perceptron, LMS est un exemple d’apprentissage supervisé, dans lequel la règle d’apprentissage est équipée d’ensemble d’exemples du comportement désiré de réseau
Ici le PQ est une entrée au réseau, et le ttttQ est la sortie de cible correspondante Avec chaque entrée au réseau, la sortie est comparée à la cible L’erreur est calculée comme différence entre le rendement de cible et le rendement de réseau Le but est de réduire au minimum la moyenne de la somme de ces erreurs
L’algorithme de LMS ajuste les poids et les biais de l’ADALINE afin de réduire au minimum cette erreur moyenne carrée
3.5.5 Filtrage adaptatif (adapt) Filtrage adaptatif (adapt)
Le réseau d’ADALINE, comme le perceptron, peut seulement résoudre des problèmes séparables linéairement Néanmoins, l’ADALINE a été et est aujourd’hui l’un des réseaux de neurones les plus employés Le filtrage adaptatif est l’un de ses domaines d’application principaux
Trang 273.5.5.1 Tapped Delay lineTapped Delay line
Un nouveau composant, Tapped Delay line, est nécessaire pour utiliser pleinement le réseau d’ADALINE Le Delay line est montré ci-dessous Le signal d’entrée entre par la gauche, et passe par les N-1 délais Le rendement du Tapped Delay line(TDL) est un vecteur
de N dimensions, créé par les signaux d’entrée au temps courant, d’entrée au temps précédent, etc
Figure 3-19: Le tapped delay line
3.5.5.2 Filtrage adaptatifFiltrage adaptatif
On peut combiner le Tapped Delay line avec un réseau d’ADALINE pour créer le filtre adaptatif présenté ci-dessous
Figure 3-20 : Le modèle du filtrage adaptatif
La sortie du filtre est donnée par
Trang 28( ) ( ) ∑ ( )
=
+ +
−
= +
i
w b
purelin
k
a
1 ,
Des réseaux dynamiques peuvent également être divisés en deux catégories : ceux qui ont seulement des raccordements en avant, et ceux qui contiennent aussi la rétroaction 3.6.2 Focused Time Focused T ime ime- - -Delay Neural Network (newfftd) Delay Neural Network (newfftd) Delay Neural Network (newfftd)
Nous commençons par le réseau dynamique le plus franc, qui se compose d’un réseau de feedforward avec « tapped delay line » à l’entrée Il s’appelle le Focused Time-Delay Neural Network (FTDNN) C’est une partie d’une classe générale des réseaux dynamiques, appelée des réseaux focalisés, dans lesquels la dynamique apparaît seulement à la couche d’entrée d’un réseau multicouche statique de feedforward La figure suivante illustre une deux-couche FTDNN Ce réseau est bien adapté à la prévision de série de temps
Figure 3-21 : Le réseau neurone focused Time-Delay
3.7 Conclusion
On a discuté des systèmes d’apprentissage basés sur les réseaux de neurones Ils sont employés dans plusieurs domaines, comme la reconnaissance des formes, les systèmes de commande, etc Dans le projet MODEAU, on a besoin d’utiliser les réseaux de neurones pour
Trang 29faire la prédiction d’arrivées d’eau dans le système de production de gaz en aquifère Il est important de prédire l’arrivée de bouchons d’eau dans les puits
On va utiliser trois modèles de réseaux de neurones pour faire la prédiction, ce sont les réseaux Backpropagation, adaptatif, et dynamique On va voir la différence entre les modèles
et les résultats de chaque modèle utilisé
Trang 304 TRAVAIL EFFECTUE
4.1 Pré-traitment de données
Avant de commencer la modélisation et l’apprentissage, il a été nécessaire d’effectuer une préparation des données
Comme je l’ai déjà mentionné, les données ont été enregistrées sur le stockage de Cerville
au cours des campagnes de soutirage 2006 et 2007 Elles sont stockées dans les fichiers de type texte (txt) Pour chaque puits observé, l’évolution de quatre paramètres a été suivie : – Le niveau d’eau dans le séparateur
– Le débit du gaz,
– La pression,
– La température
Figure 4-1 : Le graphe de données de gaz, d’eau, de pression, de température
Pour un apprentissage correct il est nécessaire que les données comportent suffisamment
de signatures de l’événement considéré Normalement un bouchon d’eau se déroule pendant environ une minute, donc pour observer tout le processus d’un bouchon, je prends des données toutes les 7 secondes, c’est à dire que la fréquence de l’enregistrement est de 7 secondes Les données sont observées sur six mois du 01/11/2005 au 15/04/2006 La taille des fichiers de données est très importante (1500000 points, 100 Mo) Nous avons alors été confrontés à un gros problème de mémoire et de temps de calcul