Conception d une Plateforme Open Source d Extraction et de Gestion des Connaissances

Dimension: px
Commencer à balayer dès la page:

Download "Conception d une Plateforme Open Source d Extraction et de Gestion des Connaissances"

Transcription

1 Département d Informatique MEMOIRE Présenté par : KADEM Habib Pour obtenir LE DIPLOME DE MAGISTER Spécialité : Informatique Option : Informatique & Automatique Intitulé : Conception d une Plateforme Open Source d Extraction et de Gestion des Connaissances Soutenue le : /./2010 à la salle de conférences de la faculté des sciences Devant les membres du jury : Pr B. BELDJILALI Dr B. ATMANI Dr A. GHOMARI Dr S. NAIT BAHLOUL Professeur, Université d Oran (Président) Maître de Conférences, Université d Oran (Encadreur) Maître de Conférences, Université d Oran (Examinateur) Maître de Conférences, Université d Oran (Examinateur)

2 Dédicace Je souhaite, avant toute chose, remercier Dieu pour m avoir soutenu et permis la réalisation de ce mémoire. Je dédie ce mémoire tout d abord à mes chers parents pour leur soutien et encouragement, Ainsi que tous les membres de ma famille, mes frères, mes sœurs. Je dédie également ce mémoire à toute ma famille, mes oncles, tantes, cousins et cousines. A mon encadreur pour son soutien et ses conseils. A tous mes amis, et à tous ceux et celles qui me connaissent.

3 Table des matières Introduction générale Chapitre I : Fouille de données: concepts et terminologies I.1. Introduction I.2. L'Extraction des Connaissances I.2.a. Les étapes de l ECD I.2.a.1. Acquisition et prétraitement des données I.2.a.2. Fouille de données I.2.a.3. Validation et mise en forme I.2.b. L apprentissage automatique I.2.b.1. Définition I.2.b.2. Types et manières d apprentissage I.2.c. Formalisme I.2.d. Les méthodes à base de graphes d induction I.2.d.1. Quelques méthodes à base de graphes d induction I.2.d.2. Principe général I.2.d.3. La méthode ID I.2.d.4. La méthode C I.2.d.5. La méthode SIPINA I.3. Induction par Automate Cellulaire I.3.a. Un système cellulo-symbolique I.3.b. Le principe d un automate cellulaire I.3.c. Automate cellulaire pour des systèmes d inférences à base de règles I.4. Conclusion Chapitre II : Stratégies de développement de plateformes de datamining II.1. Introduction II.2. Etat de l Art II.2.a. Les plateformes monopostes II.2.b. Les plateformes distribuées II.3. Les plateformes open source II.4. Méthodes de développement II.4.a. RAD (Rapid Application Development) II.4.b. DSDM (Dynamic Software Development Method) II.4.c. UP (Unified Process) II.5. UML pour la modélisation... 35

4 II.6. Architectures de plateforme informatique II.7. Intergiciels d intégration des plateformes web II.7.a. Description de quelques Intergiciels existant II.7.a.1. Java RMI II.7.a.2. CORBA (Common Object Request BrokerArchitecture) II.7.a.3. XML-RPC II.7.b. Service Web vs RMI, CORBA et XML-RPC II.8. Types et techniques des services web II.8.a. Les services web de type REST II.8.b. Les services web WS-* II.8.c. Pourquoi les services web II.9. Conclusion Chapitre III : L approche de WS4KDM III.1.Introduction III.2.Description de l approche WS4KDM III.3.La fouille de données cellulaire III.3.a. Le principe d automate cellulaire III.3.b. Un échantillon d apprentissage III.3.c. Initialisation, optimisation et génération III.3.c.1. Initialisation III.3.c.2. Optimisation III.3.c.3. Génération III.3.d. Inférence III.4.Présentation de la plateforme III.4.a. Architecture de la plateforme III.4.b. Description des Entres/Sorties des module III.4.c. Les Services Web de la plateforme III.5.Implémentation de la plateforme III.6.Conclusion Chapitre IV : La plateforme WS4KDM au service de la détection d intrusion IV.1. Introduction IV.2. Système de détection d intrusion (IDS) IV.2.a. Introduction IV.2.b. Etat de l Art IV.2.c. Les différents types d'ids IV.2.c.1. Les NIDS (Network Intrusion Detection System) IV.2.c.2. Les HIDS (Host Intrusion Detection System) IV.2.c.3. Les IDS hybrides (NIDS+HIDS) IV.3. La plateforme WS4KDM IV.3.a. Introduction IV.3.b. Objectifs et avantages de la plateforme IV.3.c. Services et application de la plateforme WS4KDM IV.4. Détection d intrusion par WS4KDM... 72

5 IV.4.a. La Base d Intrusion DARPA IV.4.b. Expérimentation IV.4.c. Résultats de la fouille de données IV.4.d. Comparaison des résultats IV.5. Conclusion Conclusion

6 Table des figures Figure I. 1 Technologies et modèle général d ECD...12 Figure I. 2 Cycle d un ECD...12 Figure I. 3 Schéma général d'un processus de RdF...19 Figure I. 4 Un exemple de graphe d induction...20 Figure I. 5 L'algorithme SIPINA...25 Figure I. 6 Diagramme général du système cellulaire CASI...27 Figure II. 1 Une Itération de la Méthode UP...35 Figure II. 2 Exemple d un cas d utilisation Figure II. 3 L Architecture 1-tier...36 Figure II. 4 L Architecture 2-tiers...37 Figure II. 5 L Architecture 3-tiers...37 Figure II. 6 L Architecture 3-tiers avec Client léger...38 Figure II. 7 Modèle MVC...38 Figure III. 1 Illustration de l approche de WS4KDM proposée...48 Figure III. 2 Diagramme générale de graphe d induction cellulaire...50 Figure III. 3 Un graphe d induction obtenu par la méthode SIPINA...52 Figure III. 4 Automate cellulaire pour des systèmes d inférence...53 Figure III. 5 Configuration initiale de l automate cellulaire...53 Figure III. 6 Les matrices d incidence d entrée/sortie...54 Figure III. 7 Eclatement-Fusion inutile...55 Figure III. 8 Matrices d incidence d entrée/sortie avant l optimisation...55 Figure III. 9 Les couches CELFACT et CELRULE...56 Figure III. 10 La matrice d incidence sortie...56 Figure III. 11 La matrice d incidence d entrée...57 Figure III. 12 Architecture de la plateforme WS4KDM...58 Figure III. 13 Les services et ces Mode d exécution dans la plateforme WS4KDM...61 Figure III. 14 Le modèle MVC Figure III. 15 Application en Java pour manipuler GlassFich...63 Figure IV. 1 Les services web de la plateforme WS4KDM...71 Figure IV. 2 application web pour les clients de la plateforme WS4KDM...72 Figure IV. 3 Injection et visualisation de la base d apprentissage...74 Figure IV. 4 prétraitement et filtrage de données...75 Figure IV. 5 classification et extraction des connaissances...76 Figure IV. 6 Les matrices faits, règles, relation d entrer et relation de sortie pout la Figure IV. 7 Les matrices faits, règles, relation d entrer et relation de sortie pout la Figure IV. 8 classification et extraction des connaissances...77 Figure IV. 9 Résultat de traitement...78 Figure IV. 10 Résultat de traitement du modèle ( individus, SIPINA + AC)...79 Figure IV. 11 Règles du modèle ( individus, SIPINA + AC)...80

7 Liste des tableaux Tableau I. 1 La table Individus x Variables Tableau II. 1 Comparaison entre les Services Web et les autres intergiciels Tableau II. 2 Etude comparatif selon les propriétés open source et web service des p Tableau III exemples comme échantillon d apprentissage Tableau III. 2 signification, description et valeurs des attributs du Table III Tableau IV. 1 Les variables de description de base d une connexion Tableau IV. 2 Les variables de description d une connexion suggérée par la Tableau IV. 3 Les variables de description du trafic d une connexion vers la même Tableau IV. 4 Comparaison des résultats Tableau IV. 5 Comparaison des résultats... 80

8 6 Introduction générale Introduction générale Le datamining, dans sa forme et compréhension actuelle, à la fois comme champ scientifique et industriel, est apparu au début des années 90 (Zighed, 2002). On peut voir le datamining comme une nécessité imposée par le besoin des entreprises pour valoriser les données qu elles accumulent dans leurs bases. Il consiste à rechercher et à extraire de l information (utile et inconnue) à partir d un gros volume de données stockées. En effet, le développement des capacités de stockage et des vitesses de transmission des réseaux ont conduit les utilisateurs à accumuler de plus en plus de données. Le Datamining est l étape centrale du processus général d Extraction et de Gestion de Connaissances (EGC). De nos jours, les systèmes et les plateformes d extraction et de gestion de connaissances sont devenus de véritables outils d aide à l analyse et à la décision dans un nombre croissant d organisations. La mise en place de tels systèmes est difficile et coûteuse. Ces systèmes doivent offrir des possibilités d exploration très fine et de représentation synthétique de l information recueillie et des nouvelles connaissances déduites. En amont, ils doivent assurer le prétraitement, la sélection et le filtrage de l information disponible dans des bases spécialisées internes ou externes, sur Internet ou intranet, et de maître à disposition différentes techniques d aide à la décision. Différentes plateformes d extraction et de gestion de connaissances ont été développées. Nous pouvons classer ces plateformes en deux catégories très distinctes : les plateformes (logiciels) commerciales et les plateformes d expérimentation (open source). Les premières proposent une interface graphique conviviale, et sont destinées à la mise en œuvre de traitements sur des données en vue du déploiement des résultats. Les méthodes disponibles sont souvent peu référencées, et il est de toute manière impossible d accéder à l implémentation. Les secondes sont constituées d un assemblage de bibliothèques de programmes. Un chercheur peut facilement accéder au code source pour vérifier les implémentations, ajouter ses propres variantes, et mener de nouvelles expérimentations comparatives. Ces plateformes ne sont guère accessibles à des utilisateurs non informaticiens. On peut aussi classer les plateformes d aujourd hui selon le mode d accès locale ou à distance. Les réseaux (Internet) apportent des solutions permettant de répondre aux besoins stratégiques, scientifiques et industriels, et grâce aux nouvelles techniques du web, il est possible de mettre en service une plateforme de datamining. Celle-ci s intègre dans des portails dont les composants pourront être invoqués depuis une application ou un service web dédié. Il existe plusieurs logiciels et plateformes d extraction et de gestion de connaissances recensés sur Internet, et chacun utilise une technique de mise en service sur le net. Les services web représentent un nouveau paradigme prometteur qui dépasse les anciennes technologies dans le sens où il est basé sur les technologies Internet telles que XML et HTTP. Ce sont des programmes informatiques permettant la

9 7 Introduction générale communication et l'échange de données entre applications et systèmes hétérogènes dans des environnements distribués. Il s'agit donc d'un ensemble de fonctionnalités exposées sur internet ou sur un intranet, par et pour des applications ou machines, sans intervention humaine, et en temps réel. Ils fournissent l'interopérabilité entre divers logiciels fonctionnant sur diverses plateformes. Ce mémoire présente notre contribution qui consiste en la conception et la réalisation d une nouvelle plateforme open source regroupant plusieurs services web dédiés à l extraction et à la gestion des connaissances nommée WS4KDM (Web Services for Knowledge Discovery and Management). Les techniques de fouille de données implémentées dans la plateforme WS4KDM basées sur les graphes d induction, utilisent une nouvelle technique de modélisation booléenne nommée BML (Boolean Modeling Langage) qui se base sur le principe cellulaire de CASI (Atmani, et al., 2007) (Cellular Automaton for Symbolic Induction). Le but, après une modélisation booléenne des règles de classification, est double : d une part affiner le processus d extraction de règles à partir de données par une fouille de donnée orchestrée par CASI, et d autre part réduire la complexité de stockage, ainsi que le temps de réponse. Notre plateforme WS4KDM a été testée sur plusieurs applications en utilisant différentes bases d exemples dans le domaine de la détection des intrusions. Le domaine de la détection d'intrusion est encore jeune mais en plein développement. Nous dénombrons à l'heure actuelle environ une centaine de systèmes de détections d'intrusions (ou IDS pour Intrusion Détection System), que ce soit des produits commerciaux ou du domaine public. Ces systèmes de surveillance du réseau sont devenus pratiquement indispensables dû à l'incessant accroissement en nombre et en dangerosité des attaques réseaux depuis quelques années. Il existe deux principales techniques pour la détection des intrusions : la détection des anomalies et la détection des malveillances. La détection des anomalies consiste à construire un modèle identifiant les comportements déviants du modèle comportemental normal. Ce modèle est le résultat d une phase d apprentissage sur une grande base de données. La détection des malveillances, quant à elle, compare le comportement d utilisation du système avec des signatures d attaques connues. Chacune de ces techniques possède des avantages et des inconvénients. La première peut détecter de nouvelles attaques puisqu elle constitue une déviation vis à vis le comportement normal de référence. Mais ça reste difficile de générer en pratique un modèle de comportement normal pouvant protéger le système. Contrairement à la détection des anomalies, la détection des malveillances permet de détecter que les attaques connues puisque les signatures des nouvelles attaques ne sont pas encore disponibles dans la base des empreintes. Dans le cadre de ce mémoire et pour évaluer notre plateforme WS4KDM nous nous sommes intéressés au problème de détection d anomalies.

10 8 Introduction générale Organisation du mémoire Le mémoire est organisé en quatre chapitres qui peuvent être résumés comme suit : Le Chapitre I est dédié à la présentation du domaine de l extraction et de la gestion des connaissances. Nous essayons d introduire les notions fondamentales de ce domaine. Nous donnons les définitions de base des concepts propres au datamining, et nous mettons en évidence sa relation avec des domaines connexes, comme l apprentissage automatique. Plusieurs méthodes à base de graphe d induction sont introduites, ainsi que l approche cellulaire, qui est au centre de notre problématique de recherche. Le Chapitre II présente les principales techniques existantes à l heure actuelle dans la conception et la mise en œuvre d un système d information sur le web, spécifiquement pour la construction des plateformes open source d extraction et de gestion des connaissances. Nous citons en premier lieu les différentes plateformes et travaux existants, puis nous définissons et nous décrivons les différentes techniques de modélisation, de développement et de mise en service d une plateforme de datamining. Le Chapitre III est consacré à la description détaillée du système cellulaire d extraction et de gestion des connaissances diffusé comme un service web. Nous présentons l approche et l architecture que nous proposons pour implémenter une plateforme cellulaire open source d extraction et de gestion des connaissances sous forme des services web nommée WS4KDM (Web services for knowledge discovery and management). Le Chapitre IV est consacré à une description détaillée des systèmes de détection d intrusion (IDS : Intrusion Detection System). Nous présentons l architecture de référence des IDS (modèle CIDF), les différentes approches de détection d intrusion (approche par scénario et approche comportementale) et les différents types d IDS (HIDS, NIDS et hybrides). La détection d intrusion implique plusieurs domaines d application parmi lesquels nous trouvons l apprentissage automatique et la classification. Ce chapitre expose aussi des différents résultats expérimentaux obtenus sur une base d apprentissage du domaine de détection d intrusion et depuis des postes différents par l utilisation des divers méthodes et algorithmes de datamining (prétraitement, classification et poste traitement). Nous terminons par une étude comparative entre les différentes plateformes existantes. Finalement, nous concluons ce mémoire en synthétisant les différentes étapes de notre contribution et nous proposons quelques perspectives envisagées pour poursuivre cette recherche.

11 9 Fouille de données : concepts et terminologies Chapitre I FOUILLE DE DONNEES: CONCEPTS ET TERMINOLOGIES I.1. Introduction...10 I.2. L'Extraction des Connaissances...11 I.2.a. Les étapes de l ECD...12 I.2.a.1. Acquisition et prétraitement des données...12 I.2.a.2. Fouille de données...13 I.2.a.3. Validation et mise en forme...14 I.2.b. L apprentissage automatique...14 I.2.b.1. Définition...14 I.2.b.2. Types et manières d apprentissage...15 I.2.c. Formalisme...17 I.2.d. Les méthodes à base de graphes d induction...19 I.2.d.1. Quelques méthodes à base de graphes d induction...19 I.2.d.2. Principe général...20 I.2.d.3. La méthode ID I.2.d.4. La méthode C I.2.d.5. La méthode SIPINA...23 I.3. Induction par Automate Cellulaire...26 I.3.a. Un système cellulo-symbolique...26 I.3.b. Le principe d un automate cellulaire...26 I.3.c. Automate cellulaire pour des systèmes d inférences à base de règles 27 I.4. Conclusion...28

12 10 Fouille de données : concepts et terminologies I.1. Introduction De nombreux organismes (entreprises) gouvernementaux, commerciaux, ou médicaux collectent et gèrent des masses de plus en plus volumineuses d informations. La taille et le nombre des bases de données augmentent sans cesse. Elle consiste à rechercher et à extraire de l information (utile et inconnue) des gros volumes de données stockées. Aujourd hui, la fouille de données revête d une grande importance technologique, économique, et même sociopolitique, du fait qu elle permet d aider à la décision dans certain domaines et d optimiser la gestion des ressources humaines et matérielles. Nous représentons dans ce chapitre le domaine de l extraction et de la gestion de connaissances. Nous essayons d introduire les notions fondamentales de ce domaine. Nous donnons des définitions de base des concepts propres au datamining, et mettons en évidence les évolutions de cette fonction, et exposons les évolutions des plateformes de datamining.

13 11 Fouille de données : concepts et terminologies I.2. L'Extraction des Connaissances L Extraction des Connaissances à partir de Données «ECD» ou «Knowledge Discovery in Databases «KDD» en anglais, est un processus plus complexe qui se déroule suivant une suite d opérations : l acquisition et la sélection des données dans une base de données, le prétraitement ou la transformation éventuelle des données, la fouille des données à proprement parlé, qui est d ailleurs l étape centrale de l ECD, et enfin la validation des modèles ainsi élaborés. L ECD comporte quatre caractéristiques principales (Fayyad, et al., 1992) : La connaissance extraite doit être exprimée dans un langage de «haut niveau» afin d être compréhensible et utilisable par les utilisateurs et pas seulement par les mathématiciens, informaticiens ou statisticiens. La connaissance découverte doit être relativement pertinente de façon à ce que l utilisateur puisse y accorder une grande croyance. Cette notion de certitude englobe non seulement des critères de validité mathématique, statistique, mais inclut aussi l intégrité des données. Les résultats produits doivent présenter un intérêt aux utilisateurs. Seule une information nouvelle, utile, non triviale, non redondante, intéressante sera qualifiée de connaissance. Le processus de découverte doit être efficace, et implémentable sur un ordinateur. Les temps de calcul doivent être polynomiaux dans un espace mémoire normal (selon la technologie actuelle). Comme le montre la figure I.1, l ECD est un processus itératif qui met en œuvre un ensemble de techniques provenant des bases de données, des statistiques, de l analyse de données, des interfaces de communication homme-machine, et de l intelligence artificielle (Zighed, 2002). L ECD vise à transformer des données (volumineuses, multiformes, stockées sous différents formats sur des supports pouvant être distribués) en connaissances. Ces connaissances peuvent s exprimer sous forme d un concept général qui enrichit le champ sémantique de l usager par rapport à une question qui le préoccupe. Elles peuvent prendre la forme d un rapport ou d un graphique. Elles peuvent s exprimer comme un modèle mathématique ou logique pour la prise de décision. Les modèles explicites, quelle que soit leur forme, peuvent alimenter un système à base de connaissances ou un système expert.

14 12 Fouille de données : concepts et terminologies Base de Données Statistique Apprentissage, Analyse de données, RDF Intelligence artificielle Concepts Entrepôt de données Optimisation Interface homme machine Modèle de décision Base de connaissances Connaissances Figure I. 1 Technologies et modèle général d ECD I.2.a. Les étapes de l ECD Comme évoqué précédemment, L'ECD est un processus qui se déroule selon une série d opérations. Nous pouvons regrouper ces opérations en trois étapes majeures (Zighed, 2002), (KODRATOFF, 1994), comme le montre la figure I.2: Modèle Entrepôt de Données BDD Phase de sélection et de préparation de données Table Individu X Variable Phase d extraction de Connaissances et d élaboration du modèle Phase de test et d évaluation de la stabilité du modèle Acquisition et Prétraitement Fouille de Données Validation et Mise en Forme Figure I. 2 Cycle d un ECD I.2.a.1. Acquisition et prétraitement des données Les données peuvent être localisées sur des sites différents de celui où s effectue l ECD. Elles peuvent être stockées selon des architectures variées (des bases de données relationnelles, entrepôts de données, le web, banques de données spécialisées ). Elles peuvent être structurées ou non selon différents types : données

15 13 Fouille de données : concepts et terminologies tabulaires ou textuelles, images, sons ou séquences vidéo. Cette étape porte sur l accès aux données en vue de construire des tables bidimensionnelles, des corpus de données spécifique. En fonction du type des données, des méthodes de prétraitements mettent en forme les données, les nettoient, traitent les données manquantes et sélectionnent les attributs ou les individus lorsque ceux-ci sont trop nombreux : choix des attributs les plus informatifs dans le premier cas, et échantillonnage dans le second. Cette phase est loin d être anodine puisque c est elle qui va conditionner la qualité des modèles établis lors de la fouille de données. En effet, ces choix ont pour objectif de faire émerger l information contenue au sein de cette masse de données. I.2.a.2. Fouille de données La fouille de données est, en effet, un processus qui fait intervenir des méthodes et des outils issus de différents domaines tels que l informatique, les statistiques ou encore l intelligence artificielle. La fouille de données est l art d extraire des connaissances à partir des données. Elle est utilisée dans plusieurs applications, comme par exemple : Les organismes de crédit pour décider d accorder ou non un crédit en fonction du profil du demandeur de crédit (la demande, expériences passées de prêts). Le diagnostic médical. L analyse des pratiques et stratégies commerciales et leurs impacts sur les ventes. Les organisations de rayonnages dans les supermarchés en regroupant les produits qui sont généralement achetés ensemble. L analyse du génome. La classification d objets (en astronomie par exemple). Les moteurs de recherche sur internet (fouille du web). L extraction d information depuis des textes (fouille des textes). Cette phase fait appel à de multiples méthodes issues des statistiques, de l apprentissage automatique, de la reconnaissance de formes ou de la visualisation. Les méthodes de fouille de données permettent de découvrir ce que contiennent les données comme informations ou modèles utiles. Si nous essayons de classifier les méthodes de fouille de données utilisées, trois catégories se distinguent (Zighed, 2002): 1. Les méthodes de visualisation et de description : leur objectif est de permettre à l analyste d avoir une compréhension synthétique de l ensemble de ses données. Elles sont principalement issues des statistiques descriptives et de l analyse des données, et sont adaptées ou augmentées à l aide de techniques de visualisation graphique pouvant faire appel à des métaphores de représentation assez élaborées. 2. Les méthodes de classification et de structuration : la structuration regroupe toutes les techniques d apprentissage non supervisé (l'utilisateur ne sait pas à priori quelles classes, groupes ou catégories il va obtenir) et de classification automatique provenant des domaines de la reconnaissance de formes, des statistiques, de l apprentissage automatique. Le choix pour ces méthodes dépend essentiellement des objectifs du chercheur. Il n'existe pas de principes universels conduisant au meilleur choix possible.

16 14 Fouille de données : concepts et terminologies 3. Les méthodes d explication et de prédiction : ces méthodes ont pour objectif de rechercher à partir des données disponibles un modèle explicatif ou prédictif entre, d une part, un attribut particulier à prédire et, d autre part, des attributs prédictifs. Elles proviennent des statistiques, de la reconnaissance des formes, de l apprentissage automatique et du connexionnisme. Il existe une multitude de méthodes d explication et ou de prédiction développées dans différents contextes (les graphes d induction, les réseaux de neurones, les méthodes de régression, l analyse discriminante, les réseaux bayésiens et les règles d association). I.2.a.3. Validation et mise en forme L obtention de ces modèles est une étape intéressante et riche en informations. Cependant, ces informations n acquièrent le stade de connaissance qu après leur validation. Au regard des résultats en validation, une méthode (ou un ensemble de méthodes) est jugée meilleure que d autre. Mais malheureusement, aucune méthode de validation ne permet de déterminer quel est l outil que l on doit employer pour répondre à un tel problème. Un consensus général semble se dégager pour reconnaître qu aucune méthode ne surpasse les autres car elles ont toutes leurs forces et faiblesses spécifiques les rendant ainsi plus ou moins performantes pour un problème donné. Il semble plus avantageux de faire coopérer des méthodes comme nous le ferions avec une équipe de spécialistes. Enfin, le choix des méthodes dépend également et surtout de l utilisateur et de la compréhension qu il peut avoir des méthodes élaborées. I.2.b. L apprentissage automatique D une façon générale, les méthodes d ECD exploitent les recherches en Intelligence Artificielle, en particulier en apprentissage automatique. En effet, ce dernier peut être perçu comme un processus d extraction de connaissances et les méthodes associées sont désignées comme des méthodes d ECD. L apprentissage se caractérise par la quantité d information dont un sujet a besoin pour accomplir une tâche déterminée. Au début, quand l incertitude est maximale, il lui faut beaucoup d informations, par la suite, et sous l effet de l exercice, un minimum d indications lui suffit. I.2.b.1. Définition L apprentissage automatique est certainement, en intelligence artificielle, le champ d application le plus fertile de ces dernières années. H. Simon (Simon, 1983) définit l apprentissage comme «Tout changement dans le système qui lui permet de mieux accomplir une tâche la deuxième fois, lors de la répétition de cette même tache, ou lorsqu une autre tache, issue de la population, se présente». Selon Dietterich (Dietterich, 1986), il ya trois niveaux de description d un système d apprentissage : Un système qui ne reçoit aucune entrée et qui accomplit le mieux une tâche. Un système qui reçoit des connaissances en entrée, mais n accomplit aucune induction. Un système qui reçoit des entrées et en extrait des connaissances qui ne sont connues ni implicitement ni explicitement. C est l apprentissage inductif.

17 15 Fouille de données : concepts et terminologies I.2.b.2. Types et manières d apprentissage L apprentissage inductif Comme nous l avons souligné, l apprentissage inductif constitue une grande partie des travaux en apprentissage automatique. L apprentissage inductif est un processus d acquisition des connaissances par l application d inférences inductives sur des objets (des exemples ou des faits) singuliers, donnés par un expert ou fournis par l environnement, afin de produire des énoncés généraux et des règles. Un tel processus comprend des opérations de généralisation, de spécialisation, de transformation, de correction et raffinement des représentations des connaissances. Ce processus simplifie grandement le transfert des connaissances d un expert à une machine, il n est plus nécessaire de formaliser puis de coder la connaissance de l expert pour l introduire dans la machine. Les règles de production sont induites automatiquement à partir d exemples du problème. Dans les sciences expérimentales comme la biologie, la médecine, la chimie, l apprentissage inductif permet d assister l homme pour détecter des modèles intéressants ou pour révéler les structures stables des ensembles de données. Une application moins directe mais potentiellement prometteuse de l apprentissage inductif est la maintenance de la bases de connaissances d un système expert. Le programme d apprentissage est alors utilisé pour détecter et corriger les inconsistances, les redondances, simplifier les règles...etc. L apprentissage inductif se divise en apprentissage supervisé et non supervisé (Zighed, 2002), (Mierswa, et al., 2006): 1. L apprentissage supervisé: Le but est de trouver une description générale et caractéristique décrivant une classe sans à avoir à énumérer tous les exemples de cette classe. Il faut découvrir ce que les exemples ont en commun et qui peut donc être induit comme étant la description de la classe. Un regroupement préalable des exemples selon des classes prédéfinies a donc été effectué. Dans le cas particulier où il n y a que deux classes, nous parlerons alors d apprentissage de concept : les exemples de la première classe seront les exemples positifs et ceux de la deuxième classe les exemples négatifs ou les contre-exemples. L idéal d un algorithme d apprentissage inductif est de trouver un ensemble minimal de descriptions maximalement discriminantes du concept. Ce problème peut être NP-complet et une approche heuristique est alors nécessaire. Il existe une grande variété de méthodes, utilisant ou non des heuristiques. Comme principales approches, nous citons l Analyse Discriminante, le modèle de Régression, l Algorithme de l Etoile (Michalski, 1983), l Espace de Versions (Mitchell, 1978), les algorithmes génétiques, le système CHARADE (Ganascia, et al., 1987), les réseaux de neurones, les graphes d induction : CART (Breiman, et al., 1984), C4.5 (Quinlan, 1993), SIPINA (Zighed, et al., 1992), L apprentissage non supervisé: Le système d apprentissage considère un ensemble d objets ou d exemples sans savoir si ces objets appartiennent ou non à la même classe. Il n y a pas de classes prédéfinies et le but est d effectuer les meilleurs regroupements possibles entre les objets et d en trouver une description explicative. L apprentissage non supervisé, appelé aussi apprentissage par observations ou par découverte, consiste en l élaboration de nouveaux concepts ou de nouvelles théories caractérisant les

18 16 Fouille de données : concepts et terminologies objets donnés. (Ketterlin, 1995) étudie la possibilité de prendre en compte dans la formation des concepts la «complexité structurelle intrinsèque» des données. Apprendre par l action Ce type d apprentissage renvoie à la première partie de la définition de H.Simon (Simon, 1983) où l apprentissage permet à un système de mieux accomplir une tache lorsqu elle se répète une deuxième fois. Nous supposons disposer d un système déjà capable de résoudre un problème. Ce système possède des heuristiques concernant l utilisation de règles ou d opérateurs de résolution du problème et propose une solution dite initiale et supposée optimale. C est à partir de cette solution initiale que l apprentissage commence en faisant ré-exécuter au système la tâche qu il vient de réussir. Deux cas se présentent alors : Soit le système repasse par la même succession d opérations que celle de la solution initiale, et dans ce cas, il n apprend rien. Soit il passe par des étapes différentes. Les règles seront alors modifiées pour obliger le système à passer par le chemin initial. Les méthodes de modification des heuristiques constituent le cœur de l apprentissage. Elles permettent d apprendre en analysant les solutions, d améliorer le raisonnement du système par l expérience et conduisent à des règles élaborées de résolution du problème. Cependant, un inconvénient de cet apprentissage est qu il est excessivement sensible au langage utilisé. Il faut introduire correctement les modifications des heuristiques pour obtenir des résultats intéressants. Comme extension de l apprentissage par l action, nous pouvons également citer le raisonnement à base de cas (Kolodner, 1993). Ce type de système dispose d une base d exemples (de cas) de problèmes résolus ainsi que de leur solution. Quand un nouveau problème à résoudre se présente, le système cherche dans la base les problèmes similaires résolus afin d obtenir une solution par analogie. L apprentissage consiste, certes, à effectuer ce raisonnement par analogie, mais il comporte aussi l enrichissement de la base d exemples du nouveau cas résolu en précisant si la solution obtenue par analogie est satisfaisante ou non. Apprendre par l explication Cette approche se fonde sur le fait que la réorganisation de la connaissance est aussi une forme d apprentissage. A l inverse de l apprentissage inductif, l apprentissage par explications ne permet pas de découvrir de nouvelles connaissances, mais analyse et met sous une forme plus «efficace» ou «opérationnelle» des connaissances déjà existantes. De tels systèmes exploitent une grande quantité de connaissances préalables et utilisent la déduction comme méthode d inférence fondamentale. L apprentissage par l explication est un processus qui part d une preuve formelle de la validité d un résultat, et qui utilise certaines heuristiques pour extraire de cette preuve formelle une information utile qui est appelée ensuite «explication». Apprendre ainsi, consiste à expliquer un exemple observé en termes de connaissances du domaine et à utiliser ensuite cette explication pour construire une description du

19 17 Fouille de données : concepts et terminologies concept plus efficace. Des méthodes de démonstration automatique de théorèmes et des méthodes heuristiques sont utilisées pour extraire l information nécessaire. Dans (Thrun, et al., 1993) est présentée une méthode d apprentissage qui combine, à la fois, l apprentissage par l explication et l apprentissage inductif supervisé. Cette méthode tente d allier à travers un réseau de neurones, les avantages des deux types d apprentissage afin de produire de bons résultats résistants au bruit tout en utilisant des connaissances du domaine. Nous proposons maintenant de définir un formalisme commun aux différentes méthodes d apprentissage inductif supervisé. I.2.c. Formalisme Le cadre méthodologique dans lequel nous nous plaçons est celui de la Reconnaissances de Formes (RdF). De nombreux ouvrages traitent de cette question (Duda, et al., 1973) (Devijver, et al., 1982), (Belaid, et al., 1992). Pour notre part, nous nous limitons à une présentation synthétique d un problème de RdF et nous adoptons le formalisme de (Zighed, et al., 1992). Soit Π une population d'individus, d exemples ou d'objets concernés par le problème de RdF. Par la suite nous parlerons généralement d exemples. A cette population est associé un attribut Y appelé variable endogène, classe ou concept selon les disciplines. A chaque exemple est associée une valeur de Y, notée Y (π ) = y, c est-à-dire une classe. Si l exemple appartient à la classe y avec j = (1, k, m) alors nous pouvons écrire Y (π) = y. L attribut Y prend ses valeurs dans un ensemble discret noté C, ensemble des classes : Y Π C = y,, y, y π Y(π) Dans le problème de demande d un crédit bancaire, l attribut Y sera "accord" et est défini par exemple selon deux classes y "Oui" et y "Non". Nous souhaitons mettre au point un dispositif qui permet d expliquer et de prédire la classe de tous les exemples de la population Π. Dans la réalité, nous ne disposons pas des exemples en tant que tels, mais d'une représentation de ces exemples. Et c'est à partir de cette représentation que nous souhaitons élaborer le dispositif de prédiction des classes. La représentation des exemples est matérialisée par des attributs, appelés aussi variables exogènes, notés X, X, X qui prennent leurs valeurs respectivement dans R (avec i = 1,, p). Nous noterons X (π ), la valeur prise par l exemple p pour l attribut X et R l'espace de représentation définit ci-dessous : Π R = R R R π (π) = (X (π),, X (π),, X (π)) Les R sont des ensembles quelconques de valeurs. Par exemple l attribut X le salaire, l attribut X l âge... peut être

20 18 Fouille de données : concepts et terminologies La population prise en compte sera représentée par une suite d individus (exemples) avec leurs classes correspondantes dans une table dite table Individus x Variables, comme illustré dans le tableau suivant : Ω X 1 (ω) X 2 (ω) X p (ω) Y(ω) ω 1 X 1 (ω 1 ) X 2 (ω 1 ) X p (ω 1 ) Y(ω 1 ) ω 2 X 1 (ω 2 ) X 2 (ω 2 ) X p (ω 2 ) Y(ω 2 ) ω n X 1 (ω n ) X 2 (ω n ) X p (ω n ) Y(ω n ) Tableau I. 1 La table Individus x Variables Ce tableau montre que ce n est pas toute la population Π qui sera considérée, mais seulement un échantillon prélevé de cette population, noté Ω. Il s agit de l échantillon d apprentissage, pour lequel on connaît pour tout exemple ω sa représentation X(ω) et sa classe Y(ω). L objectif est alors de chercher à élaborer, à partir de cet échantillon, un modèle φ (la fonction de classement) pour lequel on souhaite que φ(x(ω)) = Y(ω) pour une majorité de ω appartenant à Ω. Cette étape est dite étape d apprentissage. La mise au point d'un modèle par apprentissage supervisé nécessite deux étapes. La première dite «d'apprentissage» consiste à prélever dans la population un échantillon noté Ω, où pour tout exemple ω de Ω nous connaissons sa représentation X(ω) et sa classe Y(ω). A partir de cet échantillon Ω, dit d'apprentissage, nous cherchons à élaborer la fonction de classement φ pour laquelle nous souhaitons que φ X(ω) = Y(ω) pour une majorité de ω Ω. Les exemples d apprentissage pour lesquels φ X(ω) = Y(ω) sont désignés comme bien classés ou reclassés par la fonction de classement. Nous déterminons ainsi deux taux de classement en apprentissage : le taux de succès qui exprime la proportion d exemples bien reclassés parmi les exemples d apprentissage, et son complémentaire le taux d erreur. Un principe général consiste à construire la fonction φ permettant de bien reclasser les exemples d apprentissage. Mais ce simple principe ne suffit pas, car l objectif est avant tout d avoir de bonnes performances sur de nouveaux exemples. Pour estimer celles-ci, on emploie un ensemble test indépendant de l ensemble d apprentissage. La seconde étape dite de «validation» ou de «test» consiste à prélever un ensemble Ω', dit échantillon test, dont les éléments n'ont pas participé à l apprentissage, puis à classer ces exemples à l aide de la fonction φ et enfin à évaluer cette fonction par le taux de succès ou d erreur de classement en validation. Il est le plus souvent nécessaire d admettre que la fonction de classement ne reclasse pas parfaitement les exemples d apprentissage. En effet, des résultats très bons sur l apprentissage n entraînent pas nécessairement de bons résultats sur le test, il faut alors trouver un compromis entre performances en apprentissage et celles en test, c est-à-dire entre les taux de classement en apprentissage et en test. Ainsi, après avoir validé le dispositif φ, nous pourrons l utiliser pour prévoir les classes de tous les exemples de la population Π. Cette phase est appelée phase de généralisation : φ X(π) = Y(π) π Π

21 19 Fouille de données : concepts et terminologies Population Espace de représentation Ensemble des classes Figure I. 3 Schéma général d'un processus de RdF I.2.d. Les méthodes à base de graphes d induction La génération des modèles de prédiction sera réalisée par un système d apprentissage inductif supervisé. Ce système d induction peut être utilisé dans des démarches plus générales d extraction de connaissances ou de prédiction, comme il peut être utilisé pour l alimentation des systèmes experts. Ce dernier point est important, étant donné que l une des principales composantes d un système expert est la base de connaissances, que l on assimile souvent à une base de règles, et traditionnellement, ces bases sont construites par un expert du domaine, qui, à partir de son expérience et ses connaissances propose des règles de production. L introduction de l apprentissage supervisé, et notamment de l induction des règles à partir d exemples, a permis l accélération du processus d acquisition des connaissances, et une meilleure fiabilité face aux règles d experts et surtout une fiabilité qu on peut quantifier. Parmi les méthodes d apprentissage supervisé, l induction des règles à partir d exemples tient une place particulière parce qu elle est celle qui réalise le meilleur compromis entre performances en précision et compréhensibilité. Les méthodes à base de graphes d induction sont des méthodes d'apprentissage dites symboliques, très connues dans le domaine de l'i.a, et qui font partie des méthodes d apprentissage inductif supervisé. Elles produisent des fonctions de classement sous forme de graphes, ou dans le cas particulier, sous forme d arbres, compréhensibles par un utilisateur quelconque. Plus précisément, nous avons opté pour l induction par graphe grâce à la méthode SIPINA (Système Interactif pour les processus d Interrogation Non Arborescents) (Zighed, et al., 1992). Cette méthode présente l avantage d utiliser un système de représentation qui respecte parfaitement les critères de précision et de compréhensibilité, car la transformation du graphe en règles, pour alimenter les systèmes experts, se fait sans pertes ni modifications de leurs propriétés en classement. I.2.d.1. Quelques méthodes à base de graphes d induction D abord, il faut tracer une limite entre le terme de graphe d'induction et celui d'arbre de décision. Le graphe construit pour la plupart des méthodes basées sur les graphes d'inductions ne contient que des opérations d'éclatement au niveau des sommets, et de ce fait il est dit arborescent, et il est souvent appelé arbre de décision. Dans d'autres

22 20 Fouille de données : concepts et terminologies méthodes, comme la méthode SIPINA, on procède à des opérations de fusion de sommets lors de la construction du graphe, pour limiter la taille de ce dernier. Dans ce cas, le graphe est dit non arborescent. Ainsi, on peut dire que le graphe d induction est une généralisation de l'arbre de décision. Le principe de fusion est donc une caractéristique propre aux graphes d'induction qui ne sont pas des arbres de décision, toutefois, il est aussi exploité, mais sous une variante plus restreinte, dans des méthodes comme CART, ASSISTANT 86 ou GID3 (Rabaséda, 1996). Historiquement, les premiers travaux sur les arbres de décision datent des années soixante, où on trouve le premier programme d'apprentissage par graphe d'induction qui a été réalisé en 1963 par Sonquist et Morgan. Puis on assiste à l'apparition de l'algorithme ID3 en 1979, grâce à Ross Quinlan (Quinlan, 1986), suite aux travaux de Hunt avec le CLS. Ensuite, vers les années soixante-dix et quatre-vingt, plusieurs systèmes basés sur l'algorithme ID3 ont vu le jour, comme ASSISTANT 86, GID3, KATE, O-BTree, C4.5, SAFI etc. Ces méthodes sont alors considérées comme des descendants d'id3, cependant, il existe aussi d'autres méthodes à base de graphe d'induction, qu on peut citer par exemple les méthodes ELISEE, CART et SIPINA. I.2.d.2. Principe général Dans leur principe général, ces méthodes cherchent à discriminer les exemples selon leurs classes en fonction d attributs considérés comme les «meilleurs» au sens d un critère donné. Sur l échantillon d apprentissage, on cherche l attribut qui discrimine le mieux les exemples, puis sont constitués autant de sous-échantillons que l attribut possède de modalités. Ainsi, chaque sous-échantillon contient les exemples ayant la modalité associée de l attribut, et on cherche sur chaque sous-échantillon, de nouveau, le meilleur attribut, dans un processus récursif qui est réitéré jusqu à ce qu un même sous-échantillon contient des exemples possédant tous la même classe. Le classement d'un nouvel exemple se fait en parcourant un chemin partant de la racine à une feuille, et l'exemple appartient donc à la classe qui correspond aux exemples de la feuille : 7 15 X 6 =0 X 6 =1 7 0 X 3 =0 6 X 3 = Figure I. 4 Un exemple de graphe d induction

23 21 Fouille de données : concepts et terminologies Plus précisément, un graphe d induction est un ensemble de sommets reliés par des arcs. Il existe deux types de sommets particuliers : le sommet initial (la racine) qui n a pas de prédécesseur, et le sommet terminal (la feuille) qui n a pas de successeurs. Les feuilles sont étiquetées de la classe qu ont les exemples sur chacune d elles, et leur ensemble constitue une partition de l échantillon d apprentissage. Pour les sommets intermédiaires, chacun est associés à l attribut discriminant utilisé, et chaque chemin correspond à une valeur possible de cet attribut. A partir d un sommet intermédiaire, il y a autant de chemins que l attribut a de valeurs. Les graphes d induction en général contiennent un sommet initial unique et plusieurs sommets terminaux, et dans le cas où ils ne comportent pas de circuit, ils sont dits arborescents. Comme précisé, à chaque étape est choisi, parmi les attributs, le «meilleur» au sens d un critère donné de sélection. Chaque méthode utilise un critère particulier, et même si les critères semblent nombreux, ils reposent pratiquement tous sur un principe commun qui est de choisir le meilleur attribut qui permet de réduire l incertitude dans laquelle on se trouve lorsque l on veut classer des exemples. Ainsi, le principe de construction d'un graphe d'induction est le suivant (Rabaséda, 1996) : i. Calculer l'incertitude I(S) de la partition S. ii. Pour chaque attribut et sommet candidat à la segmentation, calculer I(S') avec S' la partition issue de S après la segmentation d'un sommet selon l'attribut X. iii. Sélectionner l'attribut qui maximise la réduction d'incertitude, c'est-à-dire l'écart ΔI(S) = I(S) I(S') et effectuer la segmentation selon cet attribut. iv. S S'. v. Si S est une partition homogène 1 alors affecter à chacune des feuilles une classe, sinon aller en (i). Dans ce principe, l'écart ΔI(S) = I(S) I(S'), appelé gain d'incertitude, est le critère de sélection des attributs, et qui représente la réduction d'incertitude. Pour toutes les méthodes, le but est de maximiser ce critère, mais avant cela, il faut d'abord utiliser des critères pour mesurer l'incertitude. Ces critères diffèrent d'une méthode à l'autre, et on peut citer principalement ceux provenant de la théorie de l'information, comme la mesure d'entropie (l'entropie quadratique, de Shannon, de Daroczy). I.2.d.3.La méthode ID3 ID3 utilise une mesure d incertitude basée sur l entropie de Shannon (Quinlan, 1983), (Quinlan, 1986). L entropie exprime l information nécessaire pour identifier la classe des exemples d un échantillon, cela revient à dire que l entropie exprime l incertitude dans laquelle on se trouve si l on veut classer les exemples. Compte tenu de la propriété d indépendance de la mesure d incertitude I (S) de la partition, nous choisissons de noter maintenant S le sommet de la partition concerné par l opération de segmentation. Le sommet S désigne l échantillon considéré, c'est-àdire, un sous ensemble de l échantillon d apprentissage initial. De plus, pour simplifier les notations, un attribut quelconque Xi est noté X. 1 Une partition homogène est une partition qui ne rassemble que des sommets homogènes, et un sommet homogène est un sommet qui ne représente que des exemples d'une même classe.

24 22 Fouille de données : concepts et terminologies Soient : S le sommet ou l échantillon considéré N le nombre d exemples présents sur le sommet S, Card(S) = N m le nombre de classes y 1, y j, y m les m classes, d effectif N. j sur le sommet S X un attribut quelconque ayant k valeurs notées x 1 x i x k S i le sous échantillon composé des exemples ayant la valeur x i = { ; ( ) = } N i. le nombre d exemples dans le sous échantillon S i, Card (S i ) =N i. N ij le nombre d exemple dans l échantillon S i appartenant à la classe y j d où. = = I(S) l incertitude du sommet S I X (S) l incertitude du sommet S après segmentation selon les valeurs de X. Le Gain d Information, noté Gain(X), apporté par la segmentation du sommet S selon les valeurs de l attribut X est défini de la façon suivante : Gain( X ) I( S) I( S) I ( S) x ( ) =. log. ( ) =.. log. Le Gain d Information est une expression de l information conjointe existante entre les classes et l attribut. Plus I X (S) est faible (c est-à-dire moins d information pour classer les exemples avec l attribut X est nécessaire), plus le Gain d Information apporté par l attribut X est important. Lors de la construction du graphe, qui est appelé arbre de décision, ID3 examine tous les attributs candidats pour une segmentation et avec le critère de gain sélectionne l attribut qui maximise le Gain d Information. Au départ, l échantillon S considéré est Ω, c'est-à-dire l échantillon d apprentissage. Ω est alors partitionné selon les p valeurs de X. Sur chaque sous-échantillon Ω p est recherché récursivement, parmi les attributs non encore sélectionnés, l attribut qui maximise le Gain d Information, jusqu à ce que tous les exemples d un même échantillon appartiennent à une même classe. I.2.d.4. La méthode C4.5 A l issue de plusieurs critiques, il est apparu que le Gain d Information utilisé dans l algorithme ID3 favorisait les attributs avec beaucoup de valeurs. Ayant reconnu ce biais, J. R. Quinlan utilise dans C4.5 (Quinlan, 1990), (Quinlan, 1993) une variante du Gain d Information. La quantité d information potentielle d un attribut dépend de la distribution des exemples selon les valeurs possibles de cet attribut. Moins il y a de valeurs différentes dans un attribut, moins cet attribut aura d information. D où l idée de normaliser le

25 23 Fouille de données : concepts et terminologies Gain apparent par l information Info(X) due au nombre de valeurs de l attribut X et de créer un nouveau critère : le Ratio de Gain ou en anglais le Gain Ratio : ( ) = ( ) ( ) ( ) =. log. Le Ratio de Gain exprime la proportion d information générée par le partitionnement selon l attribut X, qui est utilisable pour le classement. Pour éviter que le Ratio de Gain ne favorise excessivement les attributs avec un faible nombre de valeurs au détriment d attributs ayant un fort Gain, C4.5 calcule une moyenne des Gains de tous les attributs candidats à la segmentation d un sommet, et parmi ceux dont le Gain est supérieur à la moyenne, est retenu l attribut qui maximise le Ratio de Gain. I.2.d.5. La méthode SIPINA Le terme SIPINA signifie «Système Interactif pour les Processus d'interrogation Non Arborescent», et il désigne une méthode non arborescente. La méthode SIPINA était proposée en France en 1985 par Zighed (Zighed, et al., 1992). A l inverse des méthodes arborescentes, qui ne procèdent lors de la construction du graphe que par des opérations d'éclatement de sommets par les attributs, la méthode SIPINA introduit une opération de fusion entre sommets, dans le but de minimiser le nombre de sommets terminaux tout en s'assurant que ces derniers aient des effectifs suffisamment importants. En effet, la méthode SIPINA utilise lors de la construction du graphe d'induction trois opérations: la fusion, la fusion-éclatement et l'éclatement : L'opération de fusion entre des sommets consiste à regrouper les exemples appartenant à ces sommets, en un seul qui va contenir tous les exemples avec le même partage sur les valeurs de la classe (les exemples de chaque valeur de la classe sont regroupés séparément). La méthode procède à cette opération après le calcul du gain d'incertitude proposé par tout regroupement possible entre les sommets, et le choix du regroupement qui le maximise. Par contre, s'il n'y a pas de gain positif par regroupement, la méthode procède à une tentative de fusion-éclatement. L'opération de fusion-éclatement intervient quand une tentative de fusion échoue, et, comme son nom l'indique, elle est composée d'une opération de fusion et d une autre d'éclatement. La méthode procède à cette opération après le choix de l'attribut qui maximise le gain d'incertitude proposé par l'éclatement d'un sommet, mais que le sommet concerné sera, à son tour, obtenu après fusion de deux autres sommets. L'opération d'éclatement consiste à segmenter un sommet selon un attribut, pour générer autant de sommets que cet attribut a de valeurs, et les exemples contenus dans le sommet sont répartis sur les sommets résultants. La méthode procède à cette opération après le calcul du gain d'incertitude proposé par chaque éclatement possible par les attributs, et le choix de l'attribut qui le maximise, par contre s'il n'y a pas de gain positif par éclatement, la méthode se termine et aucune amélioration ne sera possible pour la partition courante.

26 24 Fouille de données : concepts et terminologies Pour la mesure d'incertitude, la méthode SIPINA utilise généralement l'entropie quadratique. Le gain d'informations ΔI(S) apporté selon l'entropie Quadratique est donné par la formule suivante : S un sommet, N son effectif (Card(S)=N) et X un attribut quelconque. S i le sous échantillon composé des exemples ayant la valeur x i. I(S) l'incertitude du sommet S. I x (S) l'incertitude du sommet S après segmentation selon les valeurs de X. N i. le nombre d'exemples dans le sous échantillon S i. N ij le nombre d'exemples dans l'échantillon S i appartenant à la classe c j. m le nombre de classes, et les c j sont les classes. N.j l'effectif des classes c j. λ un paramètre positif non nul. Le paramètre λ pénalise les nœuds de faibles effectifs, et il peut être à son tour calculé en fonction d'un autre paramètre τ qui décrit la contrainte d'admissibilité (c'est un entier représentant le nombre minimum d'individus supporté par un sommet). Le calcule de λ est réalisé en maximisant la fonction Z (λ) suivante : ) ( ) ( ) ( ) ( S I S I S I X Gain x m j j j m N N m N N S I ) ( k i i ij m j i ij i x m N N m N N N N S I ) ( ) 1 ( ) ( ) * ( ) ( m m m m m Z

27 25 Fouille de données : concepts et terminologies Voici l algorithme complet de la méthode SIPINA : Début Fin 1. Fixation de la mesure d'incertitude (Quadratique ou Shannon) 2. Fixation des paramètres (τ, λ) 3. Génération de la première partition à partir du sommet initial 4. Tentative de fusion (phase 1), si succès (gain > 0) Alors : 1. Générer partition (fusion) 2. Aller à (4) Sinon : 1. Aller à (5) 5. Tentative de fusion éclatement (phase 2), si succès (gain > 0) Alors : 1. Générer partition (fusion - éclatement) 2. Aller à (4) Sinon : 1. Aller à (6) 6. Tentative d'éclatement (phase 3), si succès (gain > 0) Alors : 1. Générer partition (éclatement) 2. Aller à (4) Sinon : 1. Fin de l'algorithme Figure I. 5- L'algorithme SIPINA A la fin de l algorithme, la fonction de classification est exprimée par un graphe qui peut être transformé sous forme de règles de production. Cependant, l utilisation directe des règles extraites n est pas possible, et il semble nécessaire de simplifier le graphe généré, et par conséquent les règles, avant de les utiliser dans un système d aide à la décision, grâce à la machine cellulaire.

28 26 Fouille de données : concepts et terminologies I.3. Induction par Automate Cellulaire La représentation et le traitement de la connaissance sont les deux questions les plus importantes dans la conception de n importe quel système d apprentissage automatique. C est peut-être également la considération fondamentale dans la conception de n importe quel système de classification ; parce que la représentation utilisée peut réduire la complexité de stockage et diminuer ainsi la compléxité du traitement. Dans cette partie, nous introduisons l architecture générale d une machine cellulaire, qui permet de réduire la taille des graphes d induction, et d optimiser automatiquement la génération des règles symboliques. Ainsi, après acquisition par apprentissage symbolique d un ensemble d exemples, le but de la machine cellulaire est de réduire la complexité de stockage, en plus de diminuer la durée de calcul par une modélisation et représentation booléenne de la base des connaissances. La modélisation booléenne (Atmani, et al., 2007) est une contribution à la conception d architecture parallèle. L idée de base est de présenter une machine cellulaire avec deux couches, qui simulent le fonctionnement du cycle de base d un moteur d inférence d un système expert. c'est-à-dire, construire une machine cellulaire capable de simuler le processus d inférence en chaînage avant et arrière. L idée de base est d utiliser le principe booléen dans la construction des arbres de décision par apprentissage automatique. I.3.a. Un système cellulo-symbolique Dans la conception d un système d apprentissage automatique, la représentation et le traitement de la connaissance sont les deux questions les plus importantes. La méthode cellulaire est une méthode de génération, de représentation et d optimisation des graphes d induction. En outre, dans le cas d utilisation du système d apprentissage, pour alimenter la base de connaissances d un système expert, des règles conjonctives sont produites à partir d une représentation booléenne des graphes d induction. La représentation cellulaire facilite la transformation des règles dans des expressions booléennes équivalentes, ainsi on peut compter sur l algèbre booléenne élémentaire pour vérifier plusieurs simplifications (Benamina, et al., 2008). D une façon générale, nous utilisons le principe cellulo-symbolique organisé en cellules, où chaque cellule est reliée à ses voisines seulement. Toutes les cellules obéissent, en parallèle, à la même règle appelée fonction de transition locale, qui a comme conséquence une transformation globale du système (Atmani, et al., 2007). I.3.b. Le principe d un automate cellulaire Un automate cellulaire est une grille composée de cellules qui changent d état dans des étapes discrètes, tel qu après chaque étape, l état de chaque cellule est modifiée selon les états de ses voisines dans l étape précédente. Les cellules sont mises à jour d une façon synchrone, et les transitions sont réalisées, théoriquement, simultanément. Grâce à des règles simples et des transitions spécifiques, un automate

29 27 Fouille de données : concepts et terminologies cellulaire peut effectuer, d une manière globale, des opérations complexes. Certains des concepts principaux pour les automates cellulaires sont (Atmani, et al., 2007) : Configuration : c est l état global de l automate cellulaire qui est défini par les états de toutes ses cellules. Voisinage : il est défini par l ensemble des voisines d une cellule dont les états sont pris en compte pour chaque transition. L état suivant de la cellule dépend de l état actuel de ses voisines, et la transition, d une configuration à une autre, est la conséquence des transitions locales de toutes les cellules. Parallélisme : toutes les cellules constituant l automate sont mises à jour d une manière simultanée et synchrone. Déterministe : le nouvel état de chaque cellule est déterminé par son état, et l état de son voisinage seulement. Homogénéité : pour déterminer leur prochain état, toutes les cellules utilisent la même règle de transition. Discrétisation : un automate cellulaire évolue discrètement dans le temps. Pour décrire un automate cellulaire, on utilise les quatre composants suivants : Dimension : même si dans la pratique on n utilise que des automates avec 1 ou 2, voir 3 dimensions, en réalité il n y a aucune limite à la dimension d un automate cellulaire. Voisinage de la cellule : il définit l ensemble de cellules voisines dont l état sera pris en compte pour déterminer le prochain état de chaque cellule. Espace d état : l ensemble fini d éléments que peut prendre une cellule. Fonction de transition : l ensemble de règles qui détermine le nouvel état de chaque cellule selon son état précédant, et ceux des cellules de son voisinage. I.3.c. Automate cellulaire pour des systèmes d inférences à base de règles L architecture générale de l automate cellulaire pour les systèmes d inférences à base de règles est décrite dans la figure I. 6 suivante (Atmani, et al., 2007) : Technique Apprentissage automatique symbolique COG Cellular Optimisation and generation CIE Cellular Inference Engine CV Cellular Validation Knowledge base Facts and Rules Figure I. 6- Diagramme général du système cellulaire CASI

30 28 Fouille de données : concepts et terminologies I.4. Conclusion Dans ce premier chapitre, nous avons introduit le processus d Extraction de connaissances à partir de données. Nous avons essayé d expliciter la problématique de fouille de données cœur de l ECD. Dans notre travail, nous nous intéressons aux techniques à base de graphe d induction et d arbre de décision. Notre approche est une approche d apprentissage automatique cellulo-symbolique, appliquée dans le cadre général d un processus d'extraction de Connaissances à partir de Données. Nous essayons d adapter les tâches du processus d extraction de connaissances à cette problématique, et surtout d introduire l approche cellulaire par une modélisation booléenne. Cette solution sera implémentée dans une plateforme open source d extraction des connaissances et de gestion des règles sur le web, qui sera assistée par un module d apprentissage artificiel automatique cellulaire. Cette plateforme open source et cellulaire de fouille de données propose certains services web qui assurent l extraction et la gestion des règles (EGR). Nous revenons dans le troisième chapitre en détails sur les techniques de graphe d induction et la machine cellulaire, afin de donner l architecture de notre plateformes, après nous décrivons les différents services web de la plateforme proposée.

31 29 Stratégies de développement de plateformes de datamining Chapitre II STRATEGIES DE DEVELOPPEMENT DE PLATEFORMES DE DATAMINING II.1. Introduction...30 II.2. Etat de l Art...31 II.2.a. Les plateformes monopostes...31 II.2.b. Les plateformes distribuées...32 II.3. Les plateformes open source...33 II.4. Méthodes de développement...34 II.4.a. RAD (Rapid Application Development)...34 II.4.b. DSDM (Dynamic Software Development Method)...34 II.4.c. UP (Unified Process)...34 II.5. UML pour la modélisation...35 II.6. Architectures de plateforme informatique...36 II.7. Intergiciels d intégration des plateformes web...39 II.7.a. Description de quelques Intergiciels existant...40 II.7.a.1. Java RMI...40 II.7.a.2. CORBA (Common Object Request BrokerArchitecture)...41 II.7.a.3. XML-RPC...41 II.7.b. Service Web vs RMI, CORBA et XML-RPC...42 II.8. Types et techniques des services web...42 II.8.a. Les services web de type REST...42 II.8.b. Les services web WS-*...43 II.8.c. Pourquoi les services web...44 II.9. Conclusion...45

32 30 Stratégies de développement de plateformes de datamining II.1. Introduction De nos jours, les techniques de fouille de données sont devenues de véritables outils d aide à l analyse et à la décision dans un nombre croissant d organisations et la mise en place de telles techniques est difficile et coûteuse. Un système (plateforme) de fouille de données, doit offrir des possibilités d exploration très fine et de représentation synthétique de l information recueillie et des nouvelles connaissances déduites. Grâce au développement continu de l informatique côté logiciel et matériel, et au développement des réseaux informatiques et de l internet, les concepteurs et les développeurs des logiciels et des plateformes de fouille de données travaillent pour construire des plateformes d extraction et de gestion des connaissances suivant la technologie quotidienne. L'Intranet est un moyen peu coûteux pour faire partager des ressources, des applications et des chercheurs, quelle que soit la localisation de ces acteurs dans le monde. Comme il présente un espace très large pour la réalisation et l utilisation d une plateforme de datamining. Généralement, il existe de nombreuses plateformes de datamining sur le net. Selon la disponibilité de code source, on distingue les open-sources telles que WEKA, Tanagra, Orange, etc. et ceux à aspect commercial. Une plateforme open source a l'avantage d'être développée par un grand nombre de personnes, ce qui lui permet d être relativement complète, fiable et fonctionnelle. En plus, comme tout projet open source, son code-source est disponible pour permettre d éventuelles modifications et pour répondre à ses propres besoins ou ajouter de nouvelles fonctionnalités. Afin de développer un projet informatique, il existe plusieurs méthodologies d analyse, de conception et de modélisation, des techniques et outils à suivre pour le développement. Dans Chaque méthode, technique et outils, il y a des avantages et des inconvénients. Dans ce chapitre, nous présentons des plateformes de datamining pour l objectif de conclure les bonnes techniques et outils pour la conception, la modélisation et l implémentation d une plateforme web de datamining. L objectif de ce chapitre est de répondre aux questions suivantes : comment et de quoi (outils de software et hardware) nous pouvons développer une plateforme web d EGC.

33 31 Stratégies de développement de plateformes de datamining II.2. Etat de l Art Plusieurs plateformes commerciales et expérimentales de fouille de données ont été développées jusqu'à aujourd hui. Il existe des plateformes de type monoposte (exécution et expérimentation locale) et d autre de type d accès à distance ou bien dites des applications web (des requêtes d exécution et d expérimentation envoyées à partir d un poste client à des applications ou des services existants dans un ou plusieurs serveurs), Nous citons : II.2.a. Les plateformes monopostes WEKA (Witten, et al., 2000) : c est une bibliothèque gratuite implémentée en Java qui comporte des algorithmes d apprentissage et une plateforme de programmation visuelle. Elle donne à l utilisateur la possibilité d ajouter facilement ses propres algorithmes. HIVE (Ross, et al., 2007) : c est un environnement de programmation visuel pour la réduction de dimensions. Il ne contient pas beaucoup de méthodes d analyse exploratoire de données et il est difficile de l étendre du fait de sa spécificité. YALE (Mierswa, et al., 2006) : c est un environnement gratuit, libre, d expérimentation pour l extraction de connaissances. Il intègre plusieurs méthodes de visualisation et d apprentissage et réutilise la bibliothèque WEKA. YALE est souple et extensible, cependant, il n est pas convivial pour la programmation visuelle. TANAGRA (Rakotomalala, 2005) : c est une plateforme gratuite d expérimentation pour la fouille de données. Implémentée en Delphi, elle contient des méthodes de fouilles de données issues du domaine de la statistique exploratoire, de l analyse de données, de l apprentissage automatique, mais ne comporte pas beaucoup de méthodes de visualisation et de techniques interactives. Elle est désignée aux étudiants pour l enseignement et aux chercheurs. ORANGE (Demsar, et al., 2004) : c est une plateforme d expérimentation pour la fouille de données. Elle est implémentée en C++/Qt/Python et englobe des méthodes d apprentissage automatique et de visualisation. GeoVista Studio (Takatsuka, et al., 2002): est un environnement de programmation visuel pour l analyse géo-spatiale. Il est gratuit, libre, souple, extensible et contient l implémentation en Java d algorithmes d apprentissage et des méthodes de visualisation et techniques interactives. GeoVista Studio n est pas encore convivial pour l utilisateur. Clémentine (Colin, 2007) : selon Colin Shearer, Clémentine est le marché phare d extraction de données depuis plus de dix ans, en particulier dans les entreprises qui cherchent à augmenter le rendement sur investissement de leur solution CRM. En outre, les innovations font de Clémentine SPSS Predictive une plate-forme plus efficace que jamais dans la stimulation de la productivité et apportent des fonctions analytiques de pointe. Oracle Data Mining (ODM) (Oracle, 2010) : une option d Oracle Database 11g Enterprise Edition qui permet de produire des informations prédictives exploitables et d élaborer des applications de business intelligence intégrées.

34 32 Stratégies de développement de plateformes de datamining Avec la fonction d extraction des données intégrée à Oracle Database 11g, les clients peuvent identifier des méthodes et des informations cachées dans leurs données. Les développeurs d applications peuvent rapidement automatiser la découverte et la distribution de nouvelles prévisions, de méthodes et de découvertes dans l ensemble de l entreprise. II.2.b. Les plateformes distribuées OLAM SE (Petr, et al., 2006) : Self Explaining On Line Analytical Mining est un environnement pour l exportation itératif et interactif des règles d'association multi niveaux. Il permet à l utilisateur de manipuler des quantités énormes de données, car il utilise des principes d'interactivité d'olap. K-Grid (Antonio, et al., 2006) : Knowledge Grid. Cette plateforme comporte deux niveaux (couches) hiérarchiques: o Core K-Grid layer: Ce niveau offre des services de base pour la gestion du méta-data qui décrivent les serveurs, les bases de données (exemples, expériences), les outils d'extraction de données et les outils de visualisation. o High-level K-Grid: la couche de niveau élevé de K-Grille. Cette couche regroupe les services de composition, de validation, et d exécution de processus de découverte de la connaissance. SINDBAD SAILS (Jörg, et al., 2008) : Service Architecture for Inductive Learning Schemes, une interface de service web implémentée en PHP dédiée à la plateforme SINDBAD. Cette interface permet à un utilisateur d accéder aux techniques de fouille de données de SINDBAD. Son prototype est implémenté en java et ses techniques de fouille de données sont implémentées comme des fonctions de PostgreSQL pour optimiser l'exécution. FAEHIM (Shaikh, et al., 2005) : Federated Analysis Environment for Heterogeneous Intelligent Mining, une plateforme qui regroupe un ensemble de services web assurant l extraction et la gestion des connaissances. Elle rassemble plusieurs techniques de fouille, et dont la plupart des services sont dérivés de la bibliothèque de WEKA. Open DMIX (Robert, et al., 2004) : une collection open source de plusieurs services web d accès, d exploitation, d intégration et d extraction des connaissances distribuées. La communication entre le client et le serveur d Open DMIX se fait selon l architecture SOAP+. OIDM (Qijun, et al., 2003) : c est une plateforme de fouille de donnée online, qui peut aider l'utilisateur à trouver l'algorithme d'extraction approprié. OIDM comporte trois techniques d extraction des connaissances à partir des données : la classification, l analyse associative et le clustering. Weka4WS (Domenico, et al., 2005) : une plateforme de l environnement Weka. Weka4WS utilise la technique WSRF (Web Service Resource Framework) pour implémenter ses services web. L application client de Weka4WS est une modification de l environnement WekaExplorer (ancien Weka Explorer + accès au Weka4WS). Les phases de prétraitement et la visualisation ne sont pas encore proposées comme des services web. Les services web de Weka4WS sont :

35 33 Stratégies de développement de plateformes de datamining o CreateResource: service de création d un nouveau WS-Resource. o Subscribe: service de notification de changement de propriétés. o Destroy: service de destruction des WS- Resource. o Classification: un service web pour lancer les algorithmes de classification caractérisé par le nom et les paramètres de l'algorithme de classification, les options à employer pendant la phase d expérimentation (TestOption), l index de l'attribut d observation (l attribut classe) et enfin l URL de la base d exemples tests. o Clustering: ce service permet d appliquer et de tester les algorithmes de segmentation (clustering). Il est caractérisé par le nom et les paramètres de l algorithme, les options à employer pour l expérimentation, les indexes des attributs sélectionnés et enfin l'attribut classe et l URL de la base test. o AssociationRules : Il permet d appliquer un algorithme de génération de règles d'association. Ce service est caractérisé par le nom, les paramètres de l algorithme choisi et l URL de la base de test. SAS 1 Enterprise Miner (Statistical Analysis System Enterprise Miner) (Sas, 2010) : Une solution de fouille de données complète, à la fois puissante, riche et conviviale. Elle repose sur une méthodologie éprouvée S.E.M.M.A. (Sample, Explore, Modify, Model, Assess), et propose la palette de modèles et d analyses la plus large du marché. Elle offre une grande facilité de partage des résultats et d exploitation des modèles. Cette plate-forme analytique permet de répondre aux besoins concrets des entreprises et les aide à optimiser leurs stratégies avec une offre logicielle et un service de conseil et d accompagnement. II.3. Les plateformes open source Il existe deux types de plateformes selon la disponibilité ou non du code source : il ya des plateformes commerciales et d autres open source. Ce deuxième type a plusieurs objectifs (Rakotomalala, 2005), que nous citons par exemple : L enseignement : pour les enseignants et les étudiants, les logiciels de fouille de données open source représentent des outils pédagogiques pour expliquer le fonctionnement des méthodes de la fouille de données. La recherche scientifique : le chercheur dans ce domaine a besoin d outils pour expérimenter et tester des méthodes et comparer des résultats. Ce type de plateformes permet, en plus, aux chercheurs d accéder au code et d implémenter ses propres méthodes. L apprentissage de la programmation : elles constituent un bon moyen d apprendre la programmation, et de connaitre les outils et les bibliothèques. La validation du code source de la plateforme par les chercheurs de fouille de données et par les différentes expérimentations des utilisateurs. La comparaison des interprétations d un même problème par différentes versions du code source afin de produire une nouvelle version optimale. 1 Leader mondial du décisionnel et des solutions de business analytics, et le plus important éditeur indépendant du marché du décisionnel

36 34 Stratégies de développement de plateformes de datamining Le partage du code en tant qu une bibliothèque de fouille de données dans les environnements de programmation. Que ce soit le type de la plateforme, open source ou non. Elle peut être modifiée par un suivi de développement par les producteurs originaux ou d autres, donc elle a besoin d une stratégie qui montre le détail de son réalisation. dans ce cadre, il existe plusieurs méthodes de développement d applications logiciels. II.4. Méthodes de développement Pour réaliser un système d information capable de traiter une grande quantité de données nous avons besoin d une étude bien détaillée et structurale. Nous savons qu un tel logiciel est constitué d un volumineux code source. Il existe plusieurs méthodes de développement, nous nous intéressons aux méthodes Agiles. Les Méthodes Agiles visent à réduire le cycle de vie du logiciel (donc accélérer son développement) en développant une version minimale, puis en intégrant les fonctionnalités par un processus itératif basé sur une écoute client et des tests tout au long du cycle de développement. Ce type de méthodes de développement (Méthodes Agiles) nous permettra d obtenir très vite une première mise en production du projet à développer. Ainsi, il est possible d'associer les utilisateurs entre eux dès le début de développement du projet. En 2009, 76% d organisations dans le monde industriel ont adopté les méthodes agiles pour le développement d un projet ou plus (Ambler, 2009). II.4.a. RAD (Rapid Application Development) RAD (Rapid Application Development) est une méthode de développement rapide d'applications, définie par James Martin au début des années 80, consiste en un cycle de développement court basé sur 3 phases (Cadrage, Design et Construction) dans un délai idéal de 90 jours et de 120 jours au maximum (Jeff, 2008). II.4.b. DSDM (Dynamic Software Development Method) DSDM (Dynamic Software Development Method) a été mise au point en s'appuyant sur la méthode RAD afin de combler certaines de ses lacunes, notamment en offrant un canevas prenant en compte l'ensemble du cycle de développement. Les principes fondateurs de la méthode DSDM sont les suivants (Jeff, 2008) : Une implication des utilisateurs Un développement itératif et incrémental Une fréquence de livraison élevée L'intégration des tests au sein de chaque étape L'acceptation des produits livrés dépend directement de la satisfaction des besoins. II.4.c. UP (Unified Process) La méthode du Processus Unifié (UP pour Unified Process), que nous avons adopté dans notre développement, est un processus de développement itératif et incrémental,

37 35 Stratégies de développement de plateformes de datamining ce qui signifie que le projet est découpé en phases très courtes à l'issue de chacune desquelles une nouvelle version incrémentée est livrée (Yves, et al., 2003) (Pascal, 2008). C'est un patron de processus pouvant être adaptée à une large classe de systèmes logiciels, à différents domaines d'application, à différents types d'entreprises, à différents niveaux de compétences et à différentes tailles de l'entreprise. Il s'agit d'une démarche s'appuyant sur la modélisation UML (Unified Modeling Language) pour la description de l'architecture du logiciel (fonctionnelle, logicielle et physique) et la mise au point de cas d'utilisation permettant de décrire les besoins et exigences des utilisateurs. La figure II.1 montre un aspect général du processus itératif de la méthode UP. C est une architecture centrée, dont chaque itération prend en compte un certain nombre de cas d'utilisations. Exigences Analyse et conception Planning Planning initiale Implémentation Evaluation Tests Déploiement Figure II. 1 Une Itération de la Méthode UP II.5. UML pour la modélisation Le traitement d un problème complexe, est conceptuellement impossible de l appréhender d un seul bloc. Donc on doit découper et raffiner le problème afin de pouvoir le comprendre pas à pas. Une fois le problème découpé en sous-problèmes de tailles plus petites, l analyse de chacun de ces sous-problèmes devient alors plus simple et lisible. Il existe plusieurs techniques de modélisation et de conception, une des techniques les plus utilisée dans le monde informatique, et la quelle on a adopté pour la modélisation de notre plateforme est le langage UML. UML (Unified Modeling Language) (Pascal, 2008) c est un langage de modélisation objet unifié, né de la fusion des trois méthodes qui ont le plus influencé la modélisation objet au milieu des années 90 : OMT, Booch et OOSE. De très nombreux acteurs industriels de renom ont adopté UML et participent à son développement. UML n'impose pas de méthode de travail particulière, il peut être intégré à n'importe quel processus de développement logiciel de manière transparente. UML est une sorte de boîte à outils, qui permet d'améliorer progressivement une méthode de travail telle que la méthode agile UP (la méthode est conduite par les cas d utilisations issus du modèle UML).

38 36 Stratégies de développement de plateformes de datamining Figure II. 2 Exemple d un cas d utilisation. II.6. Architectures de plateforme informatique La conception des systèmes d information peut, en général, être organisée selon trois couches, la couche présentation, logique d application et enfin la couche de gestion des ressources. Ces couches séparent logiquement les fonctionnalités d un système d information. Nous pouvons présenter architecturalement ces dernières sous quatre architectures : L Architecture 1-tier la plus ancienne, les trois couches sont faites dans la mainframe. Figure II. 3 L Architecture 1-tier. Dans cette optique d architecture, la couche présentation réside dans la machine client. par conséquent, les ressources qu elle utilisait deviennent disponibles pour les couches de logique de l application et de gestion de ressources.

39 37 Stratégies de développement de plateformes de datamining Figure II. 4 L Architecture 2-tiers Dans cette architecture, la couche de présentation réside dans le client comme. La logique de l application réside dans le middle tier où se situe l intergiciel (middleware, software facilite et gère les interactions entre applications fonctionnant généralement sur des plates-formes hétérogènes). Figure II. 5 L Architecture 3-tiers La figure II.6 montre la possibilité d utiliser les systèmes d architecture 3-tiers avec l Internet. Cette variante d architecture 3-tiers est connue sous le nom de 3-tiers avec client, parce que la présentation n est plus créée dans le client, mais par un serveur d application Web dédié. Celui-ci génère la présentation en utilisant la création dynamique de pages HTML qui sont ensuite affichées par un navigateur Web. Nous pouvons citer comme exemples de technologies pour créer des pages Web dynamiques : Java Servlets, JSP (Java Server Pages), ASP.NET (Active Server Pages dotnet) et PHP (Personal Home Page) ou JSF (Java Server Face).

40 38 Stratégies de développement de plateformes de datamining Figure II. 6 L Architecture 3-tiers avec Client léger Un autre type d architecture est proposé pour les projets de plus en plus complexes, pour leurs réalisations et surtout leurs maintiens. Pour cette raison nous avons opté pour l architecture MVC (Model-Vue- Contrôle). Ce modèle d architecture est devenu très courant et indispensable pour la réalisation des projets complexes. Modèle Requête Notifications de changements Changement Vue Actions utilisateurs Choix de la vue Contrôleur Figure II. 7 Modèle MVC La figure II.7 montre les interactions dans le modèle MVC. Ce modèle est une architecture et une méthode de conception pour le développement d applications logicielles qui sépare le modèle de données, l interface utilisateur et la logique de contrôle. L architecture MVC facilite la réalisation et la mise-à-jour des projets, avec ce modèle, la vue peut consulter directement le modèle sans passer par le contrôleur. Par contre la vue doit nécessairement passer par le contrôleur pour effectuer une modification. Sur une architecture 3-tiers, un modèle en couches, ou chaque couche communique seulement avec ses couches adjacentes.

41 39 Stratégies de développement de plateformes de datamining II.7. Intergiciels d intégration des plateformes web Pour implémenter des plateformes distribuées sur Internet, il existe de nombreuses techniques basées sur l aspect conception, architecture et intergiciels (middlewares). Maintenant nous ciblons principalement l aspect intergiciels qui constitue un des supports indispensables pour les plateformes distribuées. Grâce aux intergiciels (middlewares) du web, il est possible de mettre en service des plateformes de fouille de données sur le net. L intergiciel est un logiciel de connexion formé d un groupe de services qui permettent l exécution de plusieurs applications sur une ou plusieurs machines connectées en réseau. Cette technologie fournit une couche d abstraction qui permet l interopérabilité entre différents langages de programmation, systèmes d exploitation et architectures d ordinateurs. Les intergiciels peuvent se classer en différentes catégories (Denivaldo, 2005) : Systèmes basés sur RPC (Remote Procedure Call) : RPC est la forme la plus basique d intergiciel. Elle fournit l infrastructure nécessaire pour transformer les appels de procédures locales en appels de procédures distantes de façon uniforme et transparente. TP monitors (Moniteurs Transactionnels) : ils sont la forme la plus ancienne et la plus connue des intergiciels. Ils sont aussi les plus fiables, les mieux testés, et la technologie la plus stable en EAI (Enterprise Application Integration). Object brokers : ils sont similaires à RPC, mais ont été introduits pour prendre en charge les systèmes orientés objets. L exemple le plus populaire d object brokers est CORBA de l OMG. Object monitors : ils sont la fusion des TP monitors et des object brokers. Message-oriented : ce type d intergiciels est connu comme MOM (Message Oriented Middleware) et est basé sur les messages asynchrones. Il fournit un mécanisme d accès transactionnel pour files, persistance pour files, et un numéro de primitives pour lire et pour écrire dans une file locale ou distante. WfMS (Workflow Management Systems) : un système de gestion de workflow qui permet le contrôle de l envoi des informations entre les participants d un processus ainsi que la définition de la logique métier nécessaire pour intégrer les systèmes hétérogènes et distribués. Services Web : c est le type le plus récent d intergiciels. Il a été conçu pour supporter l interopérabilité sur l Internet. Web service est une manière standardisée d intégration d applications basée sur le web en utilisant les standards ouverts tels que XML, SOAP, WSDL, UDDI et les protocoles de transport de l Internet. XML est utilisé pour représenter les données, SOAP pour transporter les données, WSDL pour décrire les services disponibles, et UDDI pour lister les fournisseurs des services et les services disponibles (webopedia, 2010).

42 40 Stratégies de développement de plateformes de datamining II.7.a. Description de quelques Intergiciels existant Les services web sont des intergiciels plus adaptés à l Internet que leurs prédécesseurs. Cependant, l expérience a montré que la création d un nouveau intergiciel (même avec des standards) n est pas une solution viable à long terme pour supporter le développement logiciel. En effet, les services web peuvent aider dans la création des logiciels, mais ils restent d un niveau d abstraction bas. Les intergiciels (middlewares) tels que CORBA (Common Object Request Broker Architecture), Java RMI (Java Remote Methode Invocation) et DCOM (Distributed Component Object Model) ont été proposés pour simplifier le développement des logiciels et permettre l interopérabilité entre les systèmes distribués et hétérogènes. Ils ont répondu de manière assez satisfaisante à l interopérabilité dans le contexte des systèmes distribués, mais l apparition de l Internet a introduit de nouvelles exigences (par exemple, interopérabilité sur Internet) auxquelles ils n étaient pas adaptés. Dans un premier temps, ces intergiciels ont été étendus afin de faire face à ces nouvelles exigences, mais avec peu de succès. Ainsi les services web ont été proposés afin de remplacer ou compléter les anciens intergiciels incapables de répondre efficacement à l exigence d interopérabilité sur l Internet. II.7.a.1. Java RMI Java RMI est un intergiciel spécifique à la plateforme Java. Les interfaces sont définies en Java. L annuaire est très limité et se résume à un service de nommage. Le protocole de communication JRMP (Java Remote Method Protocol), la représentation d informations et le protocole de transfert sont spécifiques à Java. En fait, Java RMI est une adaptation de RPC au monde Java. Dans (Juric, et al., 2004), les auteurs présentent une étude détaillée de performance entre Java RMI et les services web. Cette étude a démontré que l utilisation de Java RMI 8.5 est plus performante que l utilisation de services web sur un réseau local. Cependant, l auteur remarque que sur l Internet, l utilisation de Java RMI demande souvent une technique de tunneling comme HTTP-to-port, HTTP-to-CGI et HTTP-to-Servlet. L effort pour déployer et configurer Java RMI et les composants de tunneling est plus significatif que dans le cas de services web. De plus, Java RMI et les techniques de tunneling ont présenté une performance inférieure aux services web. L utilisation de Java RMI et HTTP-to-port a été quatre fois moins performante que les services web. L utilisation de Java RMI et HTTP-to-servlet a été trois fois moins performante. Selon les résultats obtenus, l auteur conseille l utilisation des services web au détriment de Java RMI avec la technique de tunneling, et il recommande l utilisation de Java RMI (sans tunneling) pour les scénarios qui n ont pas de problèmes avec les pare-feu ou qui demandent plus de performance que d interopérabilité. Selon (Denivaldo, 2005), l auteur a montré que, dans certains contextes et avec l utilisation de techniques d optimisation, les services web peuvent être plus performants que Java RMI (sans tunneling).

43 41 Stratégies de développement de plateformes de datamining II.7.a.2. CORBA (Common Object Request BrokerArchitecture) CORBA (Common Object Request Broker Architecture) est un modèle d'objets distribués indépendant du langage de développement dont les spécifications sont fournies par l'omg (OMG, 2002). Il peut supporter plusieurs types d applications distribuées, mais il n est pas efficacement adaptable à l Internet. Dans (Denivaldo, 2005), l auteur présente un cas d étude qui démontre l intérêt et la nécessité de faire cohabiter les services web et CORBA. De plus, ils remarquent que les services web représentent un intergiciel pour intergiciel, c-à-d un intergiciel universel qui permet l intégration de différents intergiciels afin d assurer l interopérabilité. Ainsi, la coexistence entre services web et CORBA peut être justifiée dans certaines situations. Dans d autres contextes, une seule des deux technologies peut être plus adaptée et suffisante pour supporter le développement des services. De plus, les services web présentent des avantages significatifs par rapport à CORBA. Le WSDL contient deux parties, l une abstraite et l autre concrète. La partie abstraite contient le contrat du service, et la partie concrète contient les liaisons (bindings) et la localisation du service. IDL-CORBA (Interface Definition Language) ne fournit, par contre, que la partie abstraite (le contrat du service). Les types de données codifiées en IDL-CORBA sont prédéfinis, bien qu il est possible de créer des types complexes (par exemple : structures, unions) et des types dynamiques avec le constructeur any. Par opposition, WSDL permet la description de types qui ne sont pas prédéfinis dans sa spécification, et ceci grâce à l extensibilité de XML et les schémas XML. SOAP est un protocole de communication plus riche qu IIOP. Comme SOAP est basé sur XML, il permet la création de types de données plus flexibles et non prédéfinis. De plus, SOAP peut être étendu pour répondre à de nouvelles exigences (par exemple sécurité, transaction) sans modifier la normalisation de SOAP. En fait, SOAP est plus simple pour être adaptée aux besoins d un contexte. Ainsi comme les autres technologies des services Web, UDDI peut être étendu pour répondre à de nouvelles exigences. Par rapport à CORBA, UDDI fournit en plus la possibilité de classer un service par ses caractéristiques techniques (Denivaldo, 2005). XML est un mécanisme plus riche que CDR pour représenter les données. XML a été conçu pour être extensible et compréhensible par les humains et aussi par les ordinateurs. En contrepartie, CDR est une représentation binaire qui n est pas extensible ni compréhensible par les humains. Il faut souligner aussi que l utilisation de XML permet une plus grande interopérabilité et extensibilité que CDR. En opposition, l utilisation de XML exige un traitement plus élaboré que CDR, ce qui occasionne un impact sensible dans la performance des services web. II.7.a.3. XML-RPC XML-RPC est seulement un RPC basé sur XML et HTTP. De plus, il est très limité pour supporter des applications complexes sur l Internet. Les services web sont la technologie la plus récente utilisée pour supporter le développement de systèmes d information distribués, en particulier les applications B2B sur l Internet.

44 42 Stratégies de développement de plateformes de datamining Aujourd hui, ils semblent être la solution la plus adaptée pour assurer l interopérabilité sur l Internet. II.7.b. Service Web vs RMI, CORBA et XML-RPC Les services web présentent plusieurs avantages par rapport aux autres intergiciels. Pour dresser un comparatif plus précis, nous comparons la pile de standards de Java RMI, CORBA et XML-RPC avec la pile de services web conforme au tableau II.1 (Denivaldo, 2005) : Fonction Java RMI CORBA XML-RPC Description Annuaire Protocole de Communication Représentation de donnée Protocole de transport Interfaces en Java +/- rmiregistry JRMP Services Web IDL-CORBA - WSDL CORBA Services GIOP - UDDI Protocole XML-RPC SOAP Message Sérialisation CDR XML XML RMI HTTP HTTP HTTP Tableau II. 1 Comparaison entre les Services Web et les autres intergiciels II.8. Types et techniques des services web Il existe plusieurs technologies derrière le terme service web (Cesare, et al., 2009) : Les services web REST exposent entièrement leurs fonctionnalités comme un ensemble de ressources (URI) identifiables et accessibles par la syntaxe et la sémantique du protocole HTTP. Les services web type REST sont donc basés sur l'architecture du web et ses standards de base: HTTP et URI. Les services web WS-* exposent ces mêmes fonctionnalités sous la forme de services exécutables à distance. Leurs spécifications reposent sur les standards SOAP et WSDL pour transformer les problématiques d'intégration héritées du monde Middleware en objectif d'interopérabilité. Les standards WS-* sont souvent décriés comme l'étaient leurs ancêtres CORBA, RMI ou DCOM : des technologies complexes héritées du vieux principe RPC, fortement couplées et difficilement interopérables dans des environnements hétérogènes (Denivaldo, 2005). A contrario, le web est par nature une plateforme interopérable II.8.a. Les services web de type REST Le World Wide Web est une application conçue selon l'architecture REST. L'architecture du Web remplace donc les concepts applicatifs clients et serveurs par les concepts agents et ressources. Des agents interagissent avec des ressources pour créer, accéder, modifier ou supprimer une ressource. Jusqu'à présent, on parlait

45 43 Stratégies de développement de plateformes de datamining surtout de l'interaction entre agents utilisateurs, principalement les navigateurs avec les ressources. Aujourd'hui, on parle de plus en plus de l'interaction entre agents ressources, c-à d la relation entre les ressources : une ressource devient l'agent d'une autre ressource, mais reste elle-même une ressource accessible par d'autres agents. C'est exactement l'architecture décrite par l'exemple d'implémentation applicative des Mashups. Les services web traitent donc des agents ressources là où le mode opératoire classique du Web parle d'agents utilisateurs. Mais les deux concepts reposent sur la même architecture : REST. Il n'y a donc pas de différences fondamentales entre l'interaction d'un navigateur avec une ressource et celle d'un service web avec une ressource. La principale différence se situe au niveau du format de la représentation des données : HTML pour les navigateurs ou agents utilisateurs, XML ou JSON pour les services web ou agents ressources... On peut donc définir un service web comme l'implémentation logicielle d'une ressource, identifiée par une URL, et accessible en utilisant les protocoles internet. Les agents s'occupent du contenu, de la représentation de leur état, pas du type du contenu. Il faut donc voir les services web comme le moyen de manipuler l'information, et non comme un simple fournisseur de services. II.8.b. Les services web WS-* Les services web WS-* désignent l'implémentation logicielle des spécifications WS-* et reposent tous sur un ensemble de protocoles et de standards de base utilisés pour l'échange de données entre applications dans des environnements hétérogènes (Ramesh, 2004): SOAP (Simple Object Access Protocol) pour l'échange de messages. WSDL (Web Service Description Language) pour la description des services web, de leurs opérations, des messages utilisés, des types de données utilisées, des protocoles utilisés et de leur localisation au sens internet (URI / URL), les annuaires UDDI qui peuvent référencer des services web. Ces services web WS-* sont par ailleurs définis selon le type d'architecture SOA. Les logiciels écrits dans divers langages de programmation et sur diverses plates-formes peuvent employer des services web WS-* pour échanger des données à travers des réseaux informatiques comme Internet. L'OASIS et le World Wide Web Consortium (W3C) sont les comités de coordination responsables de l'architecture et de la standardisation des services web. Pour améliorer l'interopérabilité entre les réalisations de service web, l'organisation WS-I a développé une série de profils pour faire évoluer les futures normes impliquées.

46 44 Stratégies de développement de plateformes de datamining II.8.c. Pourquoi les services web Grâce aux services web, les applications peuvent être vues comme un ensemble de services métiers structurés et correctement décrits, dialoguant selon un standard international plutôt qu'un ensemble d'objets et de méthodes entremêlés. Le premier bénéfice de ce découpage est la facilité de maintenance de l'application, ainsi que l'interopérabilité qui permet de modifier facilement un composant (un service) pour le remplacer par un autre éventuellement développé par un tiers. Les services web permettent de réduire la complexité d'une application car le développeur peut se focaliser sur un service, indépendamment du reste de l'application. Les services web facilitent non seulement les échanges entre les applications de l'entreprise mais surtout permettent une ouverture vers les autres entreprises. Les premiers fournisseurs de services web sont ainsi les fournisseurs de services en ligne (météo, bourse, planification d'itinéraire, pages jaunes, etc.), mettant à disposition des développeurs des API (Application Programmable Interface) payantes ou non, permettant d'intégrer leur services au sein d'applications tierces. La table II.2 résume les deux propriétés open sources et service web qui distinguent les différentes plateformes étudiées et recensées dans le chapitre I, lesquelles nous nous sommes basés pour la conception et l implémentation de notre plateforme d extraction et de gestion de connaissances : Plateforme Open source Service web WEKA * HIVE YALE * TANAGRA * ORANGE Clementine ODM GEOVISTA-STUDIO * OLAM SE K-GRID * SINDBAD SAILS * FAEHIM * OPEN DMIX * * OIDM WEKA4WS * * Enterprise Miner * * Tableau II. 2 Etude comparatif selon les propriétés open source et web service des plateformes recensées dans le chapitre I.

47 45 Stratégies de développement de plateformes de datamining II.9. Conclusion Dans ce chapitre nous avons présenté les grandes lignes à suivre pour développer une plateforme en général, et une plateforme open source de datamining en particulier. De cette étude, nous somme arrivé à conclure que les méthodes agiles sont bien adaptées pour le développement de ce type de plateformes. En plus, la modélisation d un tel système par le langage UML facilite la tâche de développement du système ainsi que sa maintenance et son évolution, surtout en introduisant l architecture MVC. La mise en service d une plateforme peut faire appel à la technologie des services web qui sont basés sur des technologies standardisées, ce qui réduit l hétérogénéité et fournit un support pour l intégration d applications. De plus, les services web constituent un support pour de nouveaux paradigmes, tel que le traitement et l architecture orientée service. En fait, le traitement orienté service existe depuis longtemps, mais avec l utilisation des services web, il atteint un niveau d importance significatif.

48 46 L approche de WS4KDM Chapitre III L APPROCHE DE WS4KDM III.1. Introduction...47 III.2. Description de l approche WS4KDM...48 III.3. La fouille de données cellulaire...48 III.3.a. Le principe d automate cellulaire...49 III.3.b. Un échantillon d apprentissage...50 III.3.c. Initialisation, optimisation et génération...52 III.3.c.1. Initialisation...54 III.3.c.2. Optimisation...55 III.3.c.3. Génération...56 III.3.d. Inférence...57 III.4. Présentation de la plateforme...58 III.4.a. Architecture de la plateforme...58 III.4.b. Description des Entres/Sorties des module...59 III.4.c. Les Services Web de la plateforme...61 III.5. Implémentation de la plateforme...62 III.6. Conclusion...64

49 47 L approche de WS4KDM III.1. Introduction Notre travail consiste à proposer une approche booléenne d extraction de connaissances, sous forme de règles, à partir des données, puis d assurer la gestion de ces règles par l intégration du principe de la machine cellulaire. Cette approche est basée sur les algorithmes de datamining à base de graphes d induction et d arbres de décision. Elle permet d appliquer un processus de fouille de données à travers des services web. La problématique de l ECD exploite les principes de l apprentissage automatique et utilise de façon privilégiée les méthodes d apprentissage inductif supervisé. Parmi ces méthodes, nous nous intéressons plus particulièrement à celles basées sur les graphes d induction où nous apportons plusieurs contributions. En premier lieu, implémenter une plateforme open source d extraction et de gestion des connaissances par les techniques à base de graphe d induction. Deuxièmement, les techniques de fouille de données présentées dans la plateforme s appuient sur une nouvelle méthode cellulaire d extraction de règles à partir des données nommée CASI (Cellular Automaton for Symbolic Induction) (Atmani, et al., 2007). Troisièmement, proposer les différentes fonctionnalités de la plateforme comme services web. Ces services web permettent l accès et l exécution, via internet ou un réseau local, d un processus complet d Extraction et de Gestion des Règles (EGR). Ce chapitre est consacré à la présentation de l approche booléenne sur laquelle se base WS4KDM. Plusieurs aspects qui sont en relation avec la préparation des données et l élaboration des modèles sont étudiés. Ces aspects sont introduits dans la deuxième section. La fouille de données par automate cellulaire, étant la contribution fondamentale de l approche, sera détaillée dans la dernière section. On expliquera aussi comment cette notion cellulaire permet d améliorer les performances d un système expert.

50 48 L approche de WS4KDM III.2. Description de l approche WS4KDM Dans ce contexte, l objectif de ce travail est de proposer une approche permettant l extraction et la gestion des connaissances à partir d une base d apprentissage. Cette approche basée sur les différentes techniques qui sont utilisées actuellement dans le développement des plateformes informatiques en générale, et dans le développement des plateformes d extraction et de gestion des connaissances en particulier. Donc, notre objectif est de proposer une plateforme open source de fouille de données basée sur la modélisation booléenne qui regroupe plusieurs services web dédiés à l Extraction et la Gestion des Connaissances (WS4KDM). Les techniques de fouille de données présentes dans WS4KDM s appuient sur une nouvelle méthode cellulaire d extraction de règles à partir des données nommée CASI (Cellular Automaton for Symbolic Induction). Nous proposons dans cette approche, des services web de préparation et de prétraitement des bases d apprentissage et de validation par l intégration de la bibliothèque WEKA (une bibliothèque open source écrite en Java et enrichie par plusieurs méthodes de préparation, de transformation, de filtrage et de discrétisation). Le but, après une modélisation booléenne des règles de classification, est double : d une part affiner le processus d Extraction de Règles à partir de Données par une fouille de donnée orchestrée par CASI, et d autre part réduire la complexité de stockage, ainsi que le temps de calcul. Pour atteindre cet objectif, il faut s adresser à un certain nombre d aspects qui sont en relation avec la préparation des données et l application des techniques de fouille de données. Les paragraphes qui suivent s adressent à ces aspects dans les étapes d ECD. Machine Cellulaire CASI Service web Technique de Graphe d induction Bibliothèque WEKA Bases d apprentissage et de test Bases d apprentissage et de test Figure III. 1 Illustration de l approche de WS4KDM proposée III.3. La fouille de données cellulaire Nous nous replaçons maintenant dans l étape de fouille de données de notre approche, où les données obtenues jusqu'à présent sont sous la forme d une table Individus &

51 49 L approche de WS4KDM Variables, et où chaque exemple appartient à une classe particulière. L objectif de cette étape est de construire un modèle qui explique l attribut classe par les autres attributs. Pour ce fait, nous nous intéressons à l apprentissage inductif, et plus particulièrement à l apprentissage empirique qui vise à produire des règles générales à partir d une série d observations. Ce processus d induction peut s insérer dans des démarches plus générales d extraction de connaissances, où on distingue deux champs d application : l extraction de connaissances à partir de données, l alimentation des systèmes experts. Cette induction des règles à partir d exemples réalise le meilleur compromis entre performances et compréhensibilité, en plus qu il s agit certainement de la forme de connaissance la plus utilisée dans les systèmes experts. Par exemple, une règle en logique propositionnelle d ordre O + est de la forme : Si Prémisse Alors Conclusion Où Prémisse est une conjonction de proposition du type attribut-valeur : X j = valeur et Conclusion : Y = c k De nombreuses méthodes produisent des classifieurs en utilisant explicitement cette forme d induction. On a opté pour celles qui utilisent l induction par graphe qui présente l avantage d utiliser une représentation respectant les critères de précision et de compréhensibilité. En effet la transformation du graphe en règles pour alimenter les systèmes experts se fait sans pertes ni modifications de leurs propriétés en classement. Toutefois, la représentation et le traitement de la connaissance sont les deux questions importantes dans la conception de n importe quel système d apprentissage automatique. elles sont peut-être aussi la considération fondamentale dans la conception de n importe quel système de classification, parce que la représentation utilisée peut réduire la complexité du stockage et diminuer ainsi la complexité du traitement. Donc, c est à ce niveau là que se situe notre contribution fondamentale, qui consiste à utiliser la méthode cellulaire pour la génération, la représentation et l optimisation des graphes d induction. Ainsi, pour alimenter la base de connaissances d un système expert cellulaire, on produira des règles conjonctives à partir d une représentation booléenne des graphes d induction. La représentation cellulaire, d un graphe d induction, facilite la transformation des règles dans des expressions booléennes équivalentes, ce qui permettra d utiliser l algèbre booléenne pour vérifier plusieurs simplifications. III.3.a. Le principe d automate cellulaire La notion d automate cellulaire a été introduite brièvement dans le chapitre I. Dans cette partie, nous revenons plus en détail sur cette notion et son fonctionnement. Ceci étant, un automate cellulaire est une grille composée de cellules qui changent d état dans des étapes discrètes, tel qu après chaque étape, l état de chaque cellule est modifié selon les états de ses voisines dans l étape qui précède. Les cellules sont mises à jour d une façon synchrone, et les transitions sont réalisées théoriquement,

52 50 L approche de WS4KDM simultanément. Grâce à des règles simples et des transitions spécifiques, un automate cellulaire peut effectuer, d une manière globale, des opérations complexes. L architecture générale de l automate cellulaire pour les systèmes d inférence à base de règles CASI (Cellular Automaton for Symbolic Induction) est décrite dans la figure III.2 (Atmani, et al., 2007) : Tandis que le processus général d apprentissage est organisé normalement en trois étapes, qui sont l élaboration, la validation et la généralisation du modèle, celui que le système cellulaire CASI applique à une population Ω, est organisé en quatre étapes : Graphe d induction COG Génération et optimisation Cellulaire CIE Moteur inférence Cellulaire Base de connaissances Règles et faits Base de test, validation Erreur, classification CV Validation cellulaire Figure III. 2 Diagramme générale de graphe d induction cellulaire 1. Initialisation du graphe d induction par automate cellulaire (coopération entre les modules COG et CIE); 2. Optimisation du graphe d induction cellulaire (coopération entre les modules COG et CIE); 3. Génération des règles de production (coopération entre les modules COG et CIE); 4. Validation des règles cellulaires (coopération entre les modules CV et CIE); III.3.b. Un échantillon d apprentissage Dans ce qui suit nous allons décrire le déroulement du processus sur un exemple fictif. Supposons que notre échantillon d apprentissage ΩA se compose de 16 connexions qui se répartissent en deux classes : normal et attack (voir le Tableau III.1). Nous commençons le traitement symbolique pour la construction du graphe d induction booléen en utilisant la démarche d élaboration du modèle par automate cellulaire et le principe de la méthode SIPINA.

Introduction au datamining

Introduction au datamining Introduction au datamining Patrick Naïm janvier 2005 Définition Définition Historique Mot utilisé au départ par les statisticiens Le mot indiquait une utilisation intensive des données conduisant à des

Plus en détail

Pourquoi l apprentissage?

Pourquoi l apprentissage? Pourquoi l apprentissage? Les SE sont basés sur la possibilité d extraire la connaissance d un expert sous forme de règles. Dépend fortement de la capacité à extraire et formaliser ces connaissances. Apprentissage

Plus en détail

Introduction au Data-Mining

Introduction au Data-Mining Introduction au Data-Mining Alain Rakotomamonjy - Gilles Gasso. INSA Rouen -Département ASI Laboratoire PSI Introduction au Data-Mining p. 1/25 Data-Mining : Kèkecé? Traduction : Fouille de données. Terme

Plus en détail

FOUILLE DE DONNEES. Anne LAURENT ECD. laurent@lirmm.fr

FOUILLE DE DONNEES. Anne LAURENT ECD. laurent@lirmm.fr FOUILLE DE DONNEES Anne LAURENT laurent@lirmm.fr ECD Pourquoi la fouille de données? Données disponibles Limites de l approche humaine Nombreux besoins : Industriels, Médicaux, Marketing, Qu est-ce que

Plus en détail

Intelligence Artificielle et Systèmes Multi-Agents. Badr Benmammar bbm@badr-benmammar.com

Intelligence Artificielle et Systèmes Multi-Agents. Badr Benmammar bbm@badr-benmammar.com Intelligence Artificielle et Systèmes Multi-Agents Badr Benmammar bbm@badr-benmammar.com Plan La première partie : L intelligence artificielle (IA) Définition de l intelligence artificielle (IA) Domaines

Plus en détail

Weka_S2D : Système de Surveillance de Diabétiques

Weka_S2D : Système de Surveillance de Diabétiques Weka_S2D : Système de Surveillance de Diabétiques TALEB ZOUGGAR Souad(*), ATMANI Baghdad(*) Souad.taleb@gmail.com, atmani.baghdad@univ-oran.dz (*) Equipe de recherche «Simulation, Intégration et fouille

Plus en détail

Conception d une plateforme d ingénierie de maintenance guidée par les données : Application à la maintenance préventive et curative

Conception d une plateforme d ingénierie de maintenance guidée par les données : Application à la maintenance préventive et curative Département d Informatique MEMOIRE Présenté par : BENAMEUR Abdelkader Pour obtenir LE DIPLOME DE MAGISTER Spécialité : Informatique Option : Informatique & Automatique Intitulé : Conception d une plateforme

Plus en détail

Arbres binaires. Hélène Milhem. Institut de Mathématiques de Toulouse, INSA Toulouse, France IUP SID, 2011-2012

Arbres binaires. Hélène Milhem. Institut de Mathématiques de Toulouse, INSA Toulouse, France IUP SID, 2011-2012 Arbres binaires Hélène Milhem Institut de Mathématiques de Toulouse, INSA Toulouse, France IUP SID, 2011-2012 H. Milhem (IMT, INSA Toulouse) Arbres binaires IUP SID 2011-2012 1 / 35 PLAN Introduction Construction

Plus en détail

Techniques de DM pour la GRC dans les banques Page 11

Techniques de DM pour la GRC dans les banques Page 11 Techniques de DM pour la GRC dans les banques Page 11 II.1 Introduction Les techniques de data mining sont utilisé de façon augmentaté dans le domaine économique. Tels que la prédiction de certains indicateurs

Plus en détail

Annexe 4 Programmes des classes préparatoires aux Grandes Ecoles

Annexe 4 Programmes des classes préparatoires aux Grandes Ecoles Annexe 4 Programmes des classes préparatoires aux Grandes Ecoles Filière : scientifique Voie : Technologie et biologie (TB) Discipline : Informatique Première et seconde années Programme d informatique

Plus en détail

Annexe 4 Programmes des classes préparatoires aux Grandes Ecoles

Annexe 4 Programmes des classes préparatoires aux Grandes Ecoles Annexe 4 Programmes des classes préparatoires aux Grandes Ecoles Filière : scientifique Voie : Biologie, chimie, physique et sciences de la Terre (BCPST) Discipline : Informatique Première et seconde années

Plus en détail

Arbres de décision. Intelligence Artificielle et Systèmes Formels Master 1 I2L

Arbres de décision. Intelligence Artificielle et Systèmes Formels Master 1 I2L Arbres de décision Intelligence Artificielle et Systèmes Formels Master 1 I2L Sébastien Verel verel@lisic.univ-littoral.fr http://www-lisic.univ-littoral.fr/ verel Université du Littoral Côte d Opale Laboratoire

Plus en détail

- Mobiliser les résultats sur le second degré dans le cadre de la résolution d un problème.

- Mobiliser les résultats sur le second degré dans le cadre de la résolution d un problème. Mathématiques - classe de 1ère des séries STI2D et STL. 1. Analyse On dote les élèves d outils mathématiques permettant de traiter des problèmes relevant de la modélisation de phénomènes continus ou discrets.

Plus en détail

Généralités sur les bases de données

Généralités sur les bases de données Généralités sur les bases de données Qu est-ce donc qu une base de données? Que peut-on attendre d un système de gestion de bases de données? Que peut-on faire avec une base de données? 1 Des données?

Plus en détail

BI = Business Intelligence Master Data-ScienceCours 7 - Data

BI = Business Intelligence Master Data-ScienceCours 7 - Data BI = Business Intelligence Master Data-Science Cours 7 - Data Mining Ludovic DENOYER - UPMC 30 mars 2015 Ludovic DENOYER - Typologie des méthodes de Data Mining Différents types de méthodes : Méthodes

Plus en détail

Modélisation Informatique de Clients Douteux, En utilisant les Techniques de DATAMINING

Modélisation Informatique de Clients Douteux, En utilisant les Techniques de DATAMINING Modélisation Informatique de Clients Douteux, En utilisant les Techniques de DATAMINING Mostafa Hanoune, Fouzia Benabbou To cite this version: Mostafa Hanoune, Fouzia Benabbou. Modélisation Informatique

Plus en détail

Principes généraux de codage entropique d'une source. Cours : Compression d'images Master II: IASIG Dr. Mvogo Ngono Joseph

Principes généraux de codage entropique d'une source. Cours : Compression d'images Master II: IASIG Dr. Mvogo Ngono Joseph Principes généraux de codage entropique d'une source Cours : Compression d'images Master II: IASIG Dr. Mvogo Ngono Joseph Table des matières Objectifs 5 Introduction 7 I - Entropie d'une source 9 II -

Plus en détail

Morgan Beau Nicolas Courazier

Morgan Beau Nicolas Courazier EPSI - 2010 Rapport projet IA Conception et mise en œuvre d un générateur de systèmes experts Morgan Beau Sommaire Cahier des charges 3 Présentation générale 4 Analyse et modélisation 6 Le moteur d inférence

Plus en détail

Bouchekif Abdesselam 11 mars 2012

Bouchekif Abdesselam 11 mars 2012 Expériences sur les données du répertoire de données de UCI avec une boîte à outils Bouchekif Abdesselam 11 mars 2012 Résumé Les dix dernières années ont été témoin de grands progrès réalisés dans le domaine

Plus en détail

Algorithmes d'apprentissage

Algorithmes d'apprentissage Algorithmes d'apprentissage 1 Agents qui apprennent à partir d'exemples La problématique : prise de décision automatisée à partir d'un ensemble d'exemples Diagnostic médical Réponse à une demande de prêt

Plus en détail

L apprentissage automatique

L apprentissage automatique L apprentissage automatique L apprentissage automatique L'apprentissage automatique fait référence au développement, à l analyse et à l implémentation de méthodes qui permettent à une machine d évoluer

Plus en détail

Partie I : Automates et langages

Partie I : Automates et langages 2 Les calculatrices sont interdites. N.B. : Le candidat attachera la plus grande importance à la clarté, à la précision et à la concision de la rédaction. Si un candidat est amené à repérer ce qui peut

Plus en détail

Analyse de données textuelles Panorama des fonctions, des méthodes et des usages

Analyse de données textuelles Panorama des fonctions, des méthodes et des usages Analyse de données textuelles Panorama des fonctions, des méthodes et des usages Sylvie Dalbin Assistance & Techniques Documentaires DocForum, Le 17 Novembre 2005 Déroulé de l'intervention (1) 1. Définition

Plus en détail

PJE : Analyse de comportements avec Twitter Classification supervisée

PJE : Analyse de comportements avec Twitter Classification supervisée PJE : Analyse de comportements avec Twitter Classification supervisée Arnaud Liefooghe arnaud.liefooghe@univ-lille1.fr Master 1 Informatique PJE2 2015-16 B. Derbel L. Jourdan A. Liefooghe 1 2 Agenda Partie

Plus en détail

Conventions communes aux profils UML

Conventions communes aux profils UML Conventions communes aux profils UML Auteur : Projet ACCORD (Assemblage de composants par contrats en environnement ouvert et réparti)* Référence : Livrable 2.1 Date : Juin 2002 * : Les partenaires du

Plus en détail

I - Introduction à La psychologie Expérimentale

I - Introduction à La psychologie Expérimentale LA METHODE EXPERIMENTALE I - Introduction à La psychologie Expérimentale I.1. Introduction I.2. Critiques concernant l utilisation de la méthode expérimentale en psychologie I.2.A. Critiques morales I.2.A.

Plus en détail

MATHÉMATIQUES CYCLE TERMINAL DE LA SÉRIE ÉCONOMIQUE ET SOCIALE ET DE LA SÉRIE LITTERAIRE CLASSE DE PREMIÈRE

MATHÉMATIQUES CYCLE TERMINAL DE LA SÉRIE ÉCONOMIQUE ET SOCIALE ET DE LA SÉRIE LITTERAIRE CLASSE DE PREMIÈRE Annexe MATHÉMATIQUES CYCLE TERMINAL DE LA SÉRIE ÉCONOMIQUE ET SOCIALE ET DE LA SÉRIE LITTERAIRE CLASSE DE PREMIÈRE L enseignement des mathématiques au collège et au lycée a pour but de donner à chaque

Plus en détail

Introduction au Data-Mining

Introduction au Data-Mining Introduction au Data-Mining Gilles Gasso, Stéphane Canu INSA Rouen -Département ASI Laboratoire LITIS 8 septembre 205. Ce cours est librement inspiré du cours DM de Alain Rakotomamonjy Gilles Gasso, Stéphane

Plus en détail

Reconnaissance des formes : Classement d ensembles d objets

Reconnaissance des formes : Classement d ensembles d objets Reconnaissance des formes : Classement d ensembles d objets Données Méthodes Extraction de connaissances Applications Expertise Apprentissage Bernard FERTIL Directeur de Recherche CNRS Équipe LXAO, UMR

Plus en détail

PROBABILITES ET STATISTIQUE I&II

PROBABILITES ET STATISTIQUE I&II PROBABILITES ET STATISTIQUE I&II TABLE DES MATIERES CHAPITRE I - COMBINATOIRE ELEMENTAIRE I.1. Rappel des notations de la théorie des ensemble I.1.a. Ensembles et sous-ensembles I.1.b. Diagrammes (dits

Plus en détail

Rapport du Jury du Concours 2010 Épreuve Pratique d Algorithmique et de Programmation (EPAP)

Rapport du Jury du Concours 2010 Épreuve Pratique d Algorithmique et de Programmation (EPAP) Rapport du Jury du Concours 2010 Épreuve Pratique d Algorithmique et de Programmation (EPAP) Loris Marchal, Guillaume Melquion, Frédéric Tronel 21 juin 2011 Remarques générales à propos de l épreuve Organisation

Plus en détail

Noureddine Kerzazi noureddine.kerzazi@polymtl.ca

Noureddine Kerzazi noureddine.kerzazi@polymtl.ca Domaine de la modélisation des processus pour le génie logiciel. Noureddine Kerzazi noureddine.kerzazi@polymtl.ca DSL4SPM Domain-Specific-Language for Software Process Modeling Il s agit d un nouveau cadre

Plus en détail

MASTER SIS PRO : logique et sécurité DÉTECTION D INTRUSIONS. Odile PAPINI, LSIS. Université de Toulon et du Var. papini@univ-tln.

MASTER SIS PRO : logique et sécurité DÉTECTION D INTRUSIONS. Odile PAPINI, LSIS. Université de Toulon et du Var. papini@univ-tln. MASTER SIS PRO : logique et sécurité DÉTECTION D INTRUSIONS Odile PAPINI, LSIS. Université de Toulon et du Var. papini@univ-tln.fr Plan Introduction Généralités sur les systèmes de détection d intrusion

Plus en détail

1. Vue rapide des logiciels disponibles

1. Vue rapide des logiciels disponibles Voici une revue rapide des progiciels gratuits accessibles [FREE AND SHAREWARE] dans la section SUITES du site KDNUGGETS (http://www.kdnuggets.com/software/suites.html). L étude sera approfondie pour les

Plus en détail

Big Data et Graphes : Quelques pistes de recherche

Big Data et Graphes : Quelques pistes de recherche Big Data et Graphes : Quelques pistes de recherche Hamamache Kheddouci Laboratoire d'informatique en Image et Systèmes d'information LIRIS UMR 5205 CNRS/INSA de Lyon/Université Claude Bernard Lyon 1/Université

Plus en détail

Ingénierie d aide à la décision

Ingénierie d aide à la décision Ingénierie d aide à la décision Maria Malek 1 er septembre 2009 1 Objectifs et débouchés Nous proposons dans cette option deux grands axes pour l aide à la décision : 1. La recherche opérationnelle ; 2.

Plus en détail

Sélectionner la bonne base de données de gestion de configurations pour mettre en place une plate-forme efficace de gestion de services.

Sélectionner la bonne base de données de gestion de configurations pour mettre en place une plate-forme efficace de gestion de services. Solutions de Service Management Guide d achat Sélectionner la bonne base de données de gestion de configurations pour mettre en place une plate-forme efficace de gestion de services. Aujourd hui, toutes

Plus en détail

Droit d auteur Max2G 2012 : Reproduction permise avec obligation d indiquer la source www.max2g.com

Droit d auteur Max2G 2012 : Reproduction permise avec obligation d indiquer la source www.max2g.com Max2G Démarche d analyse de risques avec l Assistant Méhari L analyse de risques est une approche de gestion permettant d identifier les risques négatifs pouvant affecter une organisation et de déterminer

Plus en détail

Ce qu est le Data Mining

Ce qu est le Data Mining Data Mining 1 Ce qu est le Data Mining Extraction d informations intéressantes non triviales, implicites, préalablement inconnues et potentiellement utiles à partir de données. Autres appellations: ECD

Plus en détail

Guillaume SOLDERA (B guillaume.soldera@serli.fr) SERLI Informatique Bull OW2 Consortium. Comparatif Choco/Drools dans le cadre du projet JASMINe

Guillaume SOLDERA (B guillaume.soldera@serli.fr) SERLI Informatique Bull OW2 Consortium. Comparatif Choco/Drools dans le cadre du projet JASMINe Guillaume SOLDERA (B guillaume.soldera@serli.fr) SERLI Informatique Bull OW2 Consortium dans le cadre du projet JASMINe Avril 2008 Table des matières 1 Introduction 3 1.1 Rappel sur JASMINe.......................................

Plus en détail

Présentation de la plateforme d analyse linguistique médiévale

Présentation de la plateforme d analyse linguistique médiévale Présentation de la plateforme d analyse linguistique médiévale 1. Introduction Tout au long de ce document, notre projet sera présenté à travers la méthodologie suivie pour développer la plateforme d analyse

Plus en détail

Fouille de données orientée motifs, méthodes et usages.

Fouille de données orientée motifs, méthodes et usages. Fouille de données orientée motifs, méthodes et usages. François RIOULT GREYC - Équipe Données-Documents-Langues CNRS UMR 6072 Université de Caen Basse-Normandie France Résumé La fouille de données orientée

Plus en détail

Les ordinateurs dispositifs électroniques fonctionnant sur la principe de création, transmission et conversion d impulses électriques

Les ordinateurs dispositifs électroniques fonctionnant sur la principe de création, transmission et conversion d impulses électriques Les ordinateurs dispositifs électroniques fonctionnant sur la principe de création, transmission et conversion d impulses électriques Les informations traitées par l ordinateur (nombres, instructions,

Plus en détail

Plan du cours. Intelligence Artificielle et Manipulation Symbolique de l Information. Induction de règles (rappels) L induction logique

Plan du cours. Intelligence Artificielle et Manipulation Symbolique de l Information. Induction de règles (rappels) L induction logique Intelligence Artificielle et Manipulation Symbolique de l Information Cours 0 mercredi 8 avril 205 Plan du cours Raisonner par induction l induction Induction par arbres de décision Christophe Marsala

Plus en détail

LE PROBLEME DU PLUS COURT CHEMIN

LE PROBLEME DU PLUS COURT CHEMIN LE PROBLEME DU PLUS COURT CHEMIN Dans cette leçon nous définissons le modèle de plus court chemin, présentons des exemples d'application et proposons un algorithme de résolution dans le cas où les longueurs

Plus en détail

SECTION 5 BANQUE DE PROJETS

SECTION 5 BANQUE DE PROJETS SECTION 5 BANQUE DE PROJETS INF 4018 BANQUE DE PROJETS - 1 - Banque de projets PROJET 2.1 : APPLICATION LOGICIELLE... 3 PROJET 2.2 : SITE WEB SÉMANTIQUE AVEC XML... 5 PROJET 2.3 : E-LEARNING ET FORMATION

Plus en détail

Concevoir des applications Web avec UML

Concevoir des applications Web avec UML Concevoir des applications Web avec UML Jim Conallen Éditions Eyrolles ISBN : 2-212-09172-9 2000 1 Introduction Objectifs du livre Le sujet de ce livre est le développement des applications web. Ce n est

Plus en détail

Apprentissage supervisé

Apprentissage supervisé Apprentissage supervisé 1 Apprendre aux ordinateurs à apprendre Objectif : appliquer la démarche de l apprentissage par l exemple à l ordinateur. Montrer des exemples à l ordinateur en lui disant de quoi

Plus en détail

Introduction à la B.I. Avec SQL Server 2008

Introduction à la B.I. Avec SQL Server 2008 Introduction à la B.I. Avec SQL Server 2008 Version 1.0 VALENTIN Pauline 2 Introduction à la B.I. avec SQL Server 2008 Sommaire 1 Présentation de la B.I. et SQL Server 2008... 3 1.1 Présentation rapide

Plus en détail

Algorithmique et Analyse d Algorithmes

Algorithmique et Analyse d Algorithmes Algorithmique et Analyse d Algorithmes L3 Info Cours 11 : Arbre couvrant Prétraitement Benjamin Wack 2015-2016 1 / 32 La dernière fois Rappels sur les graphes Problèmes classiques Algorithmes d optimisation

Plus en détail

L informatique des entrepôts de données

L informatique des entrepôts de données L informatique des entrepôts de données Daniel Lemire SEMAINE 13 L exploration des données 13.1. Présentation de la semaine L exploration de données (ou data mining) est souvent associée à l intelligence

Plus en détail

La détection de spams : un jeu d enfant?

La détection de spams : un jeu d enfant? La détection de spams : un jeu d enfant? Tristan Mary-Huard, chargé de recherche INRA à INRA-AgroParisTech Comment distinguer automatiquement un spam d un message normal? Les filtres anti-spams analysent

Plus en détail

L approche Bases de données

L approche Bases de données L approche Bases de données Cours: BD. Avancées Année: 2005/2006 Par: Dr B. Belattar (Univ. Batna Algérie) I- : Mise à niveau 1 Cours: BDD. Année: 2013/2014 Ens. S. MEDILEH (Univ. El-Oued) L approche Base

Plus en détail

Data Mining. Vincent Augusto 2012-2013. École Nationale Supérieure des Mines de Saint-Étienne. Data Mining. V. Augusto.

Data Mining. Vincent Augusto 2012-2013. École Nationale Supérieure des Mines de Saint-Étienne. Data Mining. V. Augusto. des des Data Mining Vincent Augusto École Nationale Supérieure des Mines de Saint-Étienne 2012-2013 1/65 des des 1 2 des des 3 4 Post-traitement 5 représentation : 6 2/65 des des Définition générale Le

Plus en détail

Objectifs du cours d aujourd hui. Informatique II : Cours d introduction à l informatique et à la programmation objet. Complexité d un problème (2)

Objectifs du cours d aujourd hui. Informatique II : Cours d introduction à l informatique et à la programmation objet. Complexité d un problème (2) Objectifs du cours d aujourd hui Informatique II : Cours d introduction à l informatique et à la programmation objet Complexité des problèmes Introduire la notion de complexité d un problème Présenter

Plus en détail

Heuristique et métaheuristique. 8. Optimisation combinatoire et métaheuristiques. Optimisation combinatoire. Problème du voyageur de commerce

Heuristique et métaheuristique. 8. Optimisation combinatoire et métaheuristiques. Optimisation combinatoire. Problème du voyageur de commerce Heuristique et métaheuristique IFT1575 Modèles de recherche opérationnelle (RO) 8. Optimisation combinatoire et métaheuristiques Un algorithme heuristique permet d identifier au moins une solution réalisable

Plus en détail

Ebauche Rapport finale

Ebauche Rapport finale Ebauche Rapport finale Sommaire : 1 - Introduction au C.D.N. 2 - Définition de la problématique 3 - Etat de l'art : Présentatio de 3 Topologies streaming p2p 1) INTRODUCTION au C.D.N. La croissance rapide

Plus en détail

Travailler avec les télécommunications

Travailler avec les télécommunications Travailler avec les télécommunications Minimiser l attrition dans le secteur des télécommunications Table des matières : 1 Analyse de l attrition à l aide du data mining 2 Analyse de l attrition de la

Plus en détail

Structures de données non linéaires

Structures de données non linéaires Structures de données non linéaires I. Graphes Définition Un graphe (simple) orienté G est un couple (S, A), où : S est un ensemble dont les éléments sont appelés les sommets. A est un ensemble de couples

Plus en détail

Didier MOUNIEN Samantha MOINEAUX

Didier MOUNIEN Samantha MOINEAUX Didier MOUNIEN Samantha MOINEAUX 08/01/2008 1 Généralisation des ERP ERP génère une importante masse de données Comment mesurer l impact réel d une décision? Comment choisir entre plusieurs décisions?

Plus en détail

Outils Statistiques du Data Mining

Outils Statistiques du Data Mining Outils Statistiques du Data Mining Pr Roch Giorgi roch.giorgi@univ-amu.fr SESSTIM, Faculté de Médecine, Aix-Marseille Université, Marseille, France http://sesstim-orspaca.org http://optim-sesstim.univ-amu.fr

Plus en détail

Les principaux domaines de l informatique

Les principaux domaines de l informatique Les principaux domaines de l informatique... abordés dans le cadre de ce cours: La Programmation Les Systèmes d Exploitation Les Systèmes d Information La Conception d Interfaces Le Calcul Scientifique

Plus en détail

Entrepôt de données 1. Introduction

Entrepôt de données 1. Introduction Entrepôt de données 1 (data warehouse) Introduction 1 Présentation Le concept d entrepôt de données a été formalisé pour la première fois en 1990 par Bill Inmon. Il s agissait de constituer une base de

Plus en détail

Thibault Denizet. Introduction à SSIS

Thibault Denizet. Introduction à SSIS Thibault Denizet Introduction à SSIS 2 SSIS - Introduction Sommaire 1 Introduction à SQL Server 2008 Integration services... 3 2 Rappel sur la Business Intelligence... 4 2.1 ETL (Extract, Transform, Load)...

Plus en détail

I Arbres binaires. Lycée Faidherbe 2014-2015. 1 Rappels 2 1.1 Définition... 2 1.2 Dénombrements... 2 1.3 Parcours... 3

I Arbres binaires. Lycée Faidherbe 2014-2015. 1 Rappels 2 1.1 Définition... 2 1.2 Dénombrements... 2 1.3 Parcours... 3 I Arbres binaires 2014-2015 Table des matières 1 Rappels 2 1.1 Définition................................................ 2 1.2 Dénombrements............................................ 2 1.3 Parcours.................................................

Plus en détail

Classification supervisée de documents

Classification supervisée de documents Classification supervisée de documents 1. Introduction La classification automatique supervisée de document devient nécessaire à cause du volume de documents échangés et stockés sur support électronique.

Plus en détail

Recommandation dans les réseaux sociaux professionnels

Recommandation dans les réseaux sociaux professionnels Recommandation dans les réseaux sociaux professionnels Application sur un réseau bibliographique 6 mai 2010 Objectif et Motivation Techniques utilisées Algorithme exhaustive de recherche de toutes les

Plus en détail

Initiation à la fouille de données et à l apprentissage automatiq

Initiation à la fouille de données et à l apprentissage automatiq Initiation à la fouille de données et à l apprentissage automatique 1 Laboratoire d Informatique Fondamentale de Marseille Université de Provence christophe.magnan@lif.univ-mrs.fr www.lif.univ-mrs.fr/

Plus en détail

Cours IFT6266, Exemple d application: Data-Mining

Cours IFT6266, Exemple d application: Data-Mining Cours IFT6266, Exemple d application: Data-Mining Voici un exemple du processus d application des algorithmes d apprentissage statistique dans un contexte d affaire, qu on appelle aussi data-mining. 1.

Plus en détail

Méthodes d apprentissage statistique («Machine Learning»)

Méthodes d apprentissage statistique («Machine Learning») Méthodes d apprentissage statistique («Machine Learning») Journées d Etudes IARD Niort, 21 Mars 2014 Fabrice TAILLIEU Sébastien DELUCINGE Rémi BELLINA 2014 Milliman. All rights reserved Sommaire Introduction

Plus en détail

Introduction pratique au Développement orienté Modèle Pierre Parrend, Mars 2005

Introduction pratique au Développement orienté Modèle Pierre Parrend, Mars 2005 MDA : Un Tutoriel Introduction pratique au Développement orienté Modèle Pierre Parrend, Mars 2005 1 Sommaire Table des matières 1 Sommaire 1 2 Introduction 2 2.1 A qui s adresse ce tutoriel......................

Plus en détail

Première STMG1 2014-2015 progression. - 1. Séquence : Proportion d une sous population dans une population.

Première STMG1 2014-2015 progression. - 1. Séquence : Proportion d une sous population dans une population. Première STMG1 2014-2015 progression. - 1 Table des matières Fil rouge. 3 Axes du programme. 3 Séquence : Proportion d une sous population dans une population. 3 Information chiffrée : connaître et exploiter

Plus en détail

Jade. Projet Intelligence Artificielle «Devine à quoi je pense»

Jade. Projet Intelligence Artificielle «Devine à quoi je pense» Jade Projet Intelligence Artificielle «Devine à quoi je pense» Réalisé par Djénéba Djikiné, Alexandre Bernard et Julien Lafont EPSI CSII2-2011 TABLE DES MATIÈRES 1. Analyse du besoin a. Cahier des charges

Plus en détail

Spring IDE. Mise en œuvre. Eclipse

Spring IDE. Mise en œuvre. Eclipse A Spring IDE Bien que Spring mette à disposition d intéressants mécanismes afin d améliorer l architecture des applications Java EE en se fondant sur l injection de dépendances et la programmation orientée

Plus en détail

Big Data et Graphes : Quelques pistes de recherche

Big Data et Graphes : Quelques pistes de recherche Big Data et Graphes : Quelques pistes de recherche Hamamache Kheddouci http://liris.cnrs.fr/hamamache.kheddouci Laboratoire d'informatique en Image et Systèmes d'information LIRIS UMR 5205 CNRS/INSA de

Plus en détail

ENSIIE - Intelligence Artificielle (RIIA) - 1er cours

ENSIIE - Intelligence Artificielle (RIIA) - 1er cours ENSIIE - Intelligence Artificielle (RIIA) - 1er cours Benjamin PIWOWARSKI 28 septembre 2015 Benjamin PIWOWARSKI IA - 1er cours 28 septembre 2015 1 / 53 Introduction Plan 1 Introduction 2 Définitions 3

Plus en détail

Arithmétique binaire. Chapitre. 5.1 Notions. 5.1.1 Bit. 5.1.2 Mot

Arithmétique binaire. Chapitre. 5.1 Notions. 5.1.1 Bit. 5.1.2 Mot Chapitre 5 Arithmétique binaire L es codes sont manipulés au quotidien sans qu on s en rende compte, et leur compréhension est quasi instinctive. Le seul fait de lire fait appel au codage alphabétique,

Plus en détail

Intelligence Artificielle

Intelligence Artificielle Intelligence Artificielle p. 1/1 Intelligence Artificielle Les arbres de décisions Maria Malek Département Systèmes Informatiques Formels & Intelligents Intelligence Artificielle p. 2/1 Extraire les connaissances

Plus en détail

Machine de Turing. Informatique II Algorithmique 1

Machine de Turing. Informatique II Algorithmique 1 Machine de Turing Nous avons vu qu un programme peut être considéré comme la décomposition de la tâche à réaliser en une séquence d instructions élémentaires (manipulant des données élémentaires) compréhensibles

Plus en détail

Systèmes d information et bases de données (niveau 1)

Systèmes d information et bases de données (niveau 1) Systèmes d information et bases de données (niveau 1) Cours N 1 Violaine Prince Plan du cours 1. Bibliographie 2. Introduction aux bases de données 3. Les modèles 1. Hiérarchique 2. Réseau 3. Relationnel

Plus en détail

Sciences de Gestion Spécialité : SYSTÈMES D INFORMATION DE GESTION

Sciences de Gestion Spécialité : SYSTÈMES D INFORMATION DE GESTION Sciences de Gestion Spécialité : SYSTÈMES D INFORMATION DE GESTION Classe de terminale de la série Sciences et Technologie du Management et de la Gestion Préambule Présentation Les technologies de l information

Plus en détail

Analyse de données électroniques et intelligence d affaires

Analyse de données électroniques et intelligence d affaires Analyse de données électroniques et intelligence d affaires Valoriser les données internes et externes 3 avril 2014 Ordre du jour UNE INTRODUCTION À L ANALYSE DE DONNÉES Analyse de données et l intelligence

Plus en détail

Offre de formation de troisième cycle (LMD)

Offre de formation de troisième cycle (LMD) Offre de formation de troisième cycle (LMD) (Arrêté n 250 du 28 juillet 2009, fixant l organisation de la formation de troisième en vue de l obtention du diplôme de doctorat) Etablissement Faculté / Institut

Plus en détail

Le cinquième chapitre

Le cinquième chapitre Le cinquième chapitre Objectif : présenter les supports matériels ou immatériels permettant d'étayer cette nouvelle approche de la fonction maintenance. I. Evolution du domaine technique - Différents domaines

Plus en détail

BUSINESSOBJECTS EDGE PREMIUM

BUSINESSOBJECTS EDGE PREMIUM PRODUITS BUSINESSOBJECTS EDGE PREMIUM Avantages de la Business Intelligence Assurer une visibilité intégrale des activités Identifier de nouvelles opportunités Détecter et résoudre les problèmes Remplacer

Plus en détail

L INFORMATION GEOGRAPHIQUE

L INFORMATION GEOGRAPHIQUE Champs sur Marne ENSG/CERSIG Le 19-nove.-02 L INFORMATION GEOGRAPHIQUE Archivage Le Système d information géographique rassemble de l information afin de permettre son utilisation dans des applications

Plus en détail

Arbres de décisions et forêts aléatoires.

Arbres de décisions et forêts aléatoires. Arbres de décisions et forêts aléatoires. Pierre Gaillard 7 janvier 2014 1 Plan 1 Arbre de décision 2 Les méthodes d ensembles et les forêts aléatoires 2 Introduction 3 Introduction Jeu de données (ex

Plus en détail

Méthodes de DM pour la GRC dans les banques

Méthodes de DM pour la GRC dans les banques Techniques de DM pour la GRC dans les banques Page 21 III.1 Introduction Avant de chercher des techniques à appliquer dans la gestion des relations avec les clients. Il faut étudier les données des clients

Plus en détail

FOUILLE DE DONNEES. Anne LAURENT POLYTECH'MONTPELLIER IG 5

FOUILLE DE DONNEES. Anne LAURENT POLYTECH'MONTPELLIER IG 5 FOUILLE DE DONNEES Anne LAURENT POLYTECH'MONTPELLIER IG 5 Pourquoi la fouille de données? Données disponibles Limites de l approche humaine Nombreux besoins : Industriels, Médicaux, Marketing, Qu est-ce

Plus en détail

Le Data Mining, Outil d aide à la prise de décision dans l action commerciale

Le Data Mining, Outil d aide à la prise de décision dans l action commerciale Université Ibn Zohr Faculté des Sciences Juridiques, Économiques et Sociales Exposé sous le thème : Le Data Mining, Outil d aide à la prise de décision dans l action commerciale Plan : Introduction : L

Plus en détail

BE1 2 : Phase d analyse Gestion des prêts dans une médiathèque

BE1 2 : Phase d analyse Gestion des prêts dans une médiathèque Gestion des prêts dans une médiathèque Équipe enseignante Revision : 1302 CSC 4002 Télécom SudParis Octobre 2015 Première étape : mise au point de la solution, aspect statique L étape d analyse nécessite

Plus en détail

PROBLEMES D'ORDONNANCEMENT AVEC RESSOURCES

PROBLEMES D'ORDONNANCEMENT AVEC RESSOURCES Leçon 11 PROBLEMES D'ORDONNANCEMENT AVEC RESSOURCES Dans cette leçon, nous retrouvons le problème d ordonnancement déjà vu mais en ajoutant la prise en compte de contraintes portant sur les ressources.

Plus en détail

SONDY : une plateforme open-source d analyse et de fouille pour les réseaux sociaux en ligne

SONDY : une plateforme open-source d analyse et de fouille pour les réseaux sociaux en ligne SONDY : une plateforme open-source d analyse et de fouille pour les réseaux sociaux en ligne Adrien GUILLE, C. Favre, Djamel Abdelkader Zighed To cite this version: Adrien GUILLE, C. Favre, Djamel Abdelkader

Plus en détail

De la donnée à la décision. Sofian MAABOUT LaBRI. Université Bordeaux 1

De la donnée à la décision. Sofian MAABOUT LaBRI. Université Bordeaux 1 De la donnée à la décision Sofian MAABOUT LaBRI. Université Bordeaux 1 1 Décider c est choisir, parmi plusieurs actes possibles, celui qui apparaît comme le plus pertinent pour atteindre un résultat envisagé,

Plus en détail

Chacun est conscient qu il sera souvent nécessaire de mobiliser les notions abordées en première et, parfois, de les reprendre.

Chacun est conscient qu il sera souvent nécessaire de mobiliser les notions abordées en première et, parfois, de les reprendre. UE Atelier B Deux groupes de stagiaires ont suivi les exposés sur les séquences pédagogiques. Les échanges ont principalement porté sur les apports notionnels (quelles notions aborder), le bornage (jusqu

Plus en détail

Contexte général de l étude

Contexte général de l étude 1 2 Contexte général de l étude Les entrepôts de données associés à des outils d analyse On Line Analytical Processing (OLAP), représentent une solution effective pour l informatique décisionnelle (Immon,

Plus en détail

Glossaire Analyse en Composantes Principales (ACP) Analyse Factorielle des Correspondances (AFC) Apprentissage supervisé Apprentissage non supervisé

Glossaire Analyse en Composantes Principales (ACP) Analyse Factorielle des Correspondances (AFC) Apprentissage supervisé Apprentissage non supervisé Glossaire Analyse en Composantes Principales (ACP) : *méthode factorielle (Pearson 1901, Hotelling 1933) permettant de fournir un résumé descriptif (sous forme graphique le plus souvent) d une population

Plus en détail

Résumé CONCEPTEUR, INTEGRATEUR, OPERATEUR DE SYSTEMES CRITIQUES

Résumé CONCEPTEUR, INTEGRATEUR, OPERATEUR DE SYSTEMES CRITIQUES Aristote ----- Cloud Interopérabilité Retour d'expérience L A F O R C E D E L I N N O V A T I O N Résumé Les systèmes d'information logistique (SIL) sont des outils qui amènent des gains de productivité

Plus en détail

Théorie des Langages

Théorie des Langages Théorie des Langages Automates Claude Moulin Université de Technologie de Compiègne Printemps 2013 Sommaire 1 Automate fini 2 Automate et langages réguliers 3 Automate à pile Automate fini déterministe

Plus en détail

Service On Line : Gestion des Incidents

Service On Line : Gestion des Incidents Service On Line : Gestion des Incidents Guide de l utilisateur VCSTIMELESS Support Client Octobre 07 Préface Le document SoL Guide de l utilisateur explique comment utiliser l application SoL implémentée

Plus en détail