Apprentissage bayésien
Problématique
L’objectif de ce travail est de proposer comme méthode : « les réseaux bayésiens » pour extraire automatiquement de la connaissance à partir de données statistiques c’est-à-dire réelles. Dans ce travail il s’agit, entre autre, d’identifier automatiquement un environnement. Ce dernier sera modélisé par la distribution de probabilités qui a généré les exemples. Une fois cet environnement reconnu, la machine sera alors capable de générer de nouvelles données indiscernables de celles créées par la nature, ou encore d’extraire de la connaissance du modèle obtenu. Le but étant de s’appuyer sur une base d’exemples de fonctionnement d’un système donné (complexe, chaotique etc…), cette démarche peut alors avoir un intérêt dans une problématique d’intelligence artificielle puisqu’une fois un robot aura acquis une connaissance sur son environnement grâce à la méthode des réseaux bayésiens, il l’utilisera pour interagir plus efficacement avec celui-ci. [11] Les réseaux bayésiens sont parmi les nombreux formalismes qui ont été créés pour cet objectif prenant en compte l’incertitude ; enjeu important dans le domaine de l’intelligence artificielle. En effet, il faut être capable de déterminer les causes ou les conséquences les plus vraisemblables à partir d’un état particulier du système pour en déduire les meilleures actions possibles. [12] Outre cet avantage, afin de mieux illustrer leur intérêt, nous allons prendre l’exemple du corps humain :
Lorsqu’un individu est malade, nous allons observer pour celui-ci un certain nombre de grandeurs (tension, fièvre, etc…) en fonction desquelles a priori le médecin va donner son diagnostic. Ce diagnostic est ici évalué en fonction d’un nombre restreint de paramètres, or il se peut que deux individus aient la même forme (les mêmes valeurs pour toutes les grandeurs observées) et que l’un d’eux soit malade, tandis que l’autre est sain. Les modèles probabilistes ont cet avantage de fournir systématiquement une probabilité à chaque état (ici sain ou malade). Celle-ci peut alors être considérée comme un indice de confiance dans le résultat (par exemple, cet individu a 85% de (mal) chance d’être malade). Bien sûr un tel diagnostic n’est pas satisfaisant d’un point de vue éthique pour décider d’administrer ou non un traitement. Pour ce type d’exemple, il est évident que n’importe quel système ayant ces propriétés servira essentiellement à aider le praticien dans sa prise de décision, par exemple, en le confortant sur son avis.
L’intelligence artificielle
Avant toutes choses, on peut se demander ce qu’est l’intelligence artificielle, quelle relation a-t-elle avec l’intelligence humaine, comment ce domaine de recherche a vu le jour et a émergé. Afin de comprendre la chronologie des choses, nous allons ici donner un aperçu historique avant d’expliquer les différents principes de ce concept nécessaire. Le terme « intelligence artificielle », créé par John McCarthy, est souvent abrégé par le sigle « IA ». Il est défini comme « la construction de programmes informatiques qui s’adonnent à des tâches qui sont, pour l’instant, accomplies de façon plus satisfaisante par des êtres humains car elles demandent des processus mentaux de haut niveau tels que : l’apprentissage perceptuel, l’organisation de la mémoire et le raisonnement critique ». [27] On y trouve donc le côté « artificiel » atteint par l’usage des ordinateurs ou de processus électroniques élaborés et le côté « intelligence » associé à son but d’imiter le comportement humain.
Cette imitation peut se faire dans le raisonnement, par exemple dans les jeux ou la pratique de mathématiques, dans la compréhension des langues naturelles, dans la perception visuelle (interprétation des images et des scènes), auditive (compréhension du langage parlé) ou par d’autres capteurs, dans la commande d’un robot dans un milieu inconnu ou hostile. C’est donc une science expérimentale dont le but est d’étudier le cerveau humain pour tenter de reproduire ses pensées. Encore, des scientifiques recherchent à créer des systèmes qui atteignent un idéal d’intelligence humaine. Cependant il existe un certain nombre de définitions de l’IA qui différent : Des définitions qui lient l’IA à un aspect humain de l’intelligence, et celles qui la lient à un modèle idéal d’intelligence, non forcément humaine, nommée rationalité : C’est une logique qu’approfondissent les scientifiques. Par exemple, la perception de tout ce qui l’entoure en fait partie. C’est ici que la technologie est repoussée à ses limites. De plus, le comportement rationnel reprend l’idée d’une pensée rationnelle de l’IA mais est plus générale car raisonner logiquement peut être une façon d’agir rationnellement. Néanmoins, les scientifiques recherchent ce standard de rationalité qui ne peut être atteint en pratique, car la technologie actuelle ne permet pas de réaliser des calculs aussi complexes.
Relation entre intelligence artificielle et réseaux bayésiens
L’un des enjeux principaux dans le domaine de la recherche en Intelligence Artificielle est d’être capable de concevoir et de développer des systèmes dynamiques et évolutifs. De ce fait, ces derniers doivent être équipés de comportements intelligents qui peuvent apprendre et raisonner. Mais dans la plupart des cas, la connaissance acquise n’est pas toujours adéquate pour permettre au système de prendre la décision la plus appropriée. Pour répondre à ce genre de questions, plusieurs méthodologies ont été proposées, mais seules les approches probabilistes s’adaptent mieux non seulement au raisonnement avec la connaissance et la croyance incertaine, mais aussi à la structure de la représentation de la connaissance. Ces approches probabilistes sont appelées « réseaux bayésiens », mais sont aussi connues sous le nom de « belief networks », « causal networks ». Les réseaux bayésiens sont la combinaison des approches probabilistes et de la théorie de graphes. Autrement dit, ce sont des modèles qui permettent de représenter des situations de raisonnement probabiliste à partir de connaissances incertaines. Ils sont une représentation efficace pour les calculs d’une distribution de probabilités, de plus ils constituent une technique d’acquisition, de représentation et de manipulation de connaissances, et on les utilise pour leur capacité d’effectuer des inférences dans un contexte d’incertitude et aussi pour leurs algorithmes d’apprentissage afin de prévoir, contrôler et simuler le comportement d’un système, analyser des données et prendre des décisions[19]. Leurs domaines d’application sont variés :
Apprentissage de la structure
Dans la première partie de ce chapitre, nous avons examiné différentes méthodes d’apprentissage des paramètres d’un réseau bayésien, à l’aide d’un expert, en supposant que la structure de ce réseau était déjà connue. Se pose maintenant le problème d’apprentissage de cette structure : comment trouver la structure qui représentera le mieux de notre problème. Deux types de score : les scores locaux et les scores globaux. La deuxième famille utilise les tests statistiques afin de déterminer les indépendances entre les variables dans le réseau. On peut citer l’algorithme « PC» pour Peter et Clark « IC » algorithme de principe similaire, pour inductive causation « BNPC» nommée « BN-PC-B » pour bayes net power construction et B. Cette matrice de poids une fois définie, il suffit d’utiliser un des algorithmes de résolution du problème de l’arbre de poids maximal comme l’algorithme de Prim ou celui de kruskal. Puis l’arbre non dirigé retourné par cet algorithme doit ensuite être dirigé en choisissant une racine et en parcourant l’arbre par une recherche en profondeur. La racine peut être choisie aléatoirement ou à l’aide de connaissance à priori. Comme dans l’apprentissage de paramètre, si nous ne possédons pas toutes les mesures qui sont issues des observations réelles, on utilise les algorithmes d’apprentissage de structure avec des données incomplètes, l’algorithme le plus usité est celui de EM (Expectation maximisation ou Esperance Maximisation).
|
Table des matières
Résumé
Abstract
ملخص
Table des matières
Liste des figures
Liste des abréviations
Liste des algorithmes
INTRODUCTION GENERALE
1.Contexte d’étude
2.Problématique
3.Contribution
4.Objectifs
5.Organisation du mémoire
PARTIE 1 : ETUDE THEORIQUE
CHAPITRE I : Réseaux bayésiens
1.Introduction : Pourquoi les RB ?
2.Intelligence artificielle
3.Relation entre RB et IA
4.Définition des RB
4.1 Exemple illustratif de RB
4.2 Représentation graphique
4.3 Pourquoi choisir les modèles orientés ?
5.Inférence
5.1 Définition
5.2 Méthode d’inférence : Jonction
5.3 Les étapes de JT
Conclusion
CHAPITRE II : Apprentissage bayésien
1.Introduction
2.Apprentissage des paramètres
2.1. Apprentissage des paramètres à partir de donnée complètes
2.2. Apprentissage des paramètres à partir de données incomplètes
2.3 L’algorithme EM
3.Apprentissage de structure
3.1 L’algorithme PC-IC
4.Outils d’implémentation
Conclusion
PARTIE 2 : PARTIE PRATIQUE
CHAPITRE I : Analyse et conception
1.Introduction
2.Présentation de l’application
3.Besoins techniques
4.Identification des cas d’utilisation
5.Documentation des cas d’utilisation
6.Diagramme de séquence
7.Documentation des diagrammes de séquences
8.Architecture globale
9/Configuration matérielle du système
10. Architecture globale de l’application
Conclusion
CHAPITRE II : Réalisation et mise en oeuvre
1.Introduction
2.Concepts de développement
2.1. Langage de programmation
2.2. Base de données
2.2.i. Base de données MySQL
2.2.ii. Système de gestion de base de données
2.2.iii. Système de gestion de Base de donnée phpMYadmin
2.2.iv Langage de manipulation de bases de données
2.3. Environnement de développement
2.4. Outils utilisés
2.4.i. XAMP
2.4.ii. HeidiSQL
2.4.iv. Netica Java-API
2.4.v. MySQL connector Java
3.Description de l’application
Conclusion
CONCLUSION GENERALE & PERSPECTIVES
Conclusion générale
Perspectives
BIBLIOGRAPHIE
ANNEXES
Télécharger le rapport complet