Fouille des règles d`association guidée par des ontologies et des

publicité
République Algérienne Démocratique et Populaire
Ministère de l’Enseignement Supérieur et de la Recherche Scientifique
Université des Sciences et de la Technologie d’Oran «Mohamed Boudiaf»
Faculté des Sciences
Département d’Informatique
MEMOIRE EN VUE DE L’OBTENTION DU DIPLÔME
DE MAGISTER
Spécialité : Informatique
Option: Modélisation, Optimisation et Evaluation des performances
des systèmes (MOEPS)
Fouille des règles d’association
guidée par des ontologies
et des schémas de règles :
Application au domaine de la production
SONATRACH / AVAL
Présenté par : Mr DAHMANI Djilali
Soutenu le 29/06/2011 devant le jury composé de:
Présidente:
Mme H. Belbachir
r
Professeur USTO
Rapporteur :
M S.A.RAHAL
Maître de conférences USTO
Examinateur:
Mr K. Belkadi
Maître de conférences USTO
Examinatrice:
Mme L. Zaoui
Maître de conférences USTO
Invité:
Mr S. Khiat
Doctorant USTO
-
Année 2011 -
Remerciements
Je remercie tout d’abord Allah le tout puissant pour le courage et la volonté qu’il m’a donné
pour arriver à bout de ce travail.
Ce mémoire a été réalisé au sein du laboratoire «Modélisation, Optimisation et Evaluation des
Performances des Systèmes » du département informatique, Université des Sciences et de la
Technologies d’Oran en collaboration avec la branche AVAL de l’entreprise SONATRACH.
Je tiens à remercier toutes les personnes qui ont contribué de manière directe ou indirecte à
l’aboutissement de ce travail.
En premier lieu, je remercie vivement Mr RAHAL Sid Ahmed d’avoir accepté d’être l’encadreur
et le rapporteur de mon mémoire. Je le remercie pour l’attention avec laquelle il a lu et évalué ce
mémoire ainsi que pour ses conseils et ses remarques pertinentes.
Je remercie vivement Mr BELKADI Khaled, responsable de la post graduation, qui m’a permis
d’effectuer ce mémoire au sein de son laboratoire. J’ai apprécié son enthousiasme, sa
disponibilité et sa gentillesse.
Je remercie beaucoup mon co-encadreur Mr KHIAT Salim pour toutes ses remarques et critiques
constructives qu’il m’a adressé pour la finalisation de ce travail.
Je remercie également Mme Belbachir et Mme Zaoui qui ont accepté d’être membres du jury.
Je remercie vivement le personnel de la direction Exploitation du siège SH/AVAL qui
m’ont permis d’effectuer ce travail dans des bonnes conditions, ainsi que tout le personnel de la
production. Je les remercie beaucoup de m’avoir expliqué et faire connaître le système de la
production.
Je n’oublierai pas de souligner ma reconnaissance pour tous mes enseignants de la
post-graduation, option MOEPS, qui ont tenu à nous encadrer durant toute notre formation de
magistère: M r BELKADI, M r RAHAL, M me ZAOUI, M elle NOUREDDINE,
M r SAADOUNI, M me FIZAZI,... Merci à tous.
Sans oublier ma promotion de la post-graduation MOEPS 2008-2009, ainsi que toutes les
personnes que j’ai connues au sein de l’université. Que tous ceux que j’ai oubliés n’en
reçoivent pas moins mes reconnaissances.
Mr DAHMANI Djilali
Dédicace
Je dédie ce mémoire tout d’abord à mes parents : ma chère mère (‫ )ﺣﻔﻈﮭﺎ اﷲ‬et mon cher père
( ‫ )رﺣﻤﮫ اﷲ‬que Allah l’accueille dans son vaste paradis.
Ainsi que tous les membres de ma petite famille : ma femme Zohra, ma petite fille Fatima
Zohra, mes petits fils Ali et Mohamed Yasser.
A mes sœurs Nebia, Kheira, Fadila, Djamila, Zina, Fatiha, et mon frère Farid.
Je dédie aussi ce mémoire à toute ma grande famille, et surtout à ma grand mère Aicha.
Je dédie également ce mémoire à tous mes professeurs et enseignants de l’université USTO
qui m’ont instruit durant le cursus de l’ingéniorat et la post-graduation.
A mes chers amis Chaba Kada, Sahraoui Amine, Khiat Salim, Aid Hakim, Chaibdraa Djilali,
Belarbi BouabdAllah, Kadour, Abbes, Ibrahim, Abdelfatah, et tous mes amis, mes collègues de
travail, et à tous ceux et celles qui me connaissent.
A toute personne qui m’a donné son soutien, encouragement, conseils et orientations pour la
réalisation de ce travail.
Mr DAHMANI Djilali
Résumé
L'introduction du Data Mining dans les systèmes d’information est devenue très
enthousiasmante. La technique des règles d’association est très utilisée pour extraire des
connaissances utiles. Elle repose sur deux étapes : la recherche des items fréquents, et la
génération des règles d’association. Néanmoins son inconvénient majeur est le nombre
important des règles générées, d’où la nécessite d’un post-traitement
pour choisir
manuellement les règles utiles. Ceci nécessite beaucoup de temps en plus de l’expertise
demandée. Pour résoudre ce problème, plusieurs propositions ont été faites pour faire appel aux
ontologies ou aux schémas de règles afin de générer les règles pertinentes.
Cependant, le nombre important des règles à traiter reste toujours difficile à surpasser.
Notre proposition consiste à introduire dés le début le filtrage des règles utiles en se basant sur
des schémas de règles préalablement choisis par l’expert du domaine. Ce choix est fait en
utilisant une ontologie proposée pour le champ d’étude. Par la suite, la génération des règles
concerne juste celles qui respectent les schémas de règles choisis. Grâce à l’implication du
choix de l’expert dés le début du processus, cette approche permet de réduire le temps et le
coût du traitement, et procéder ainsi à l’optimisation et la compréhension des tendances
générales. Pour illustrer cette approche, une étude de cas est réalisée sur le domaine de
production du système d’information de l’entreprise Sonatrach/Aval.
Mots clés : Data Mining, fouille de données, règles d'associations, post-traitement, schémas de
règles, connaissances de domaine, système de production, ontologies.
Abstract
The technique of the association rules model in data mining is very useful for extraction
knowledge. But it generates a huge quantity of rules which requires an adapted post-processing
in order to target the most useful rules. For resolve this problem, several researches propose to
explicitly integrate user's domain knowledge with ontology, and then select the most useful
rules after generating all rules. This article proposes a new approach for integrate user's domain
knowledge before generating any association rule. By using ontology associated with the rules
patterns, we propose to introduce this knowledge at the first of the treatment before the
generation of association rules. In results, only the association rules which respect the rules
patterns will be generated. This method allows reducing execution time and minimizing cost of
the post- processing. This approach is illustrated by an example applied on production domain,
which is a part of the information system of Sonatrach/Aval Company.
Keywords: Data mining, domain knowledge, association rules, rules patterns, post-processing,
production system, and ontology.
Sommaire
Chapitre I : Introduction Générale
1. La fouille de données dans les systèmes d’information ____________________ 1
2. Problèmes de génération des règles d’association _________________________2
3. Sujet du mémoire ___________________________________________________2
4. Cas pratique : application au domaine de la production ___________________3
5. Organisation du mémoire ____________________________________________4
Chapitre II : Le Data Mining et les Règles
d’association
1. Le Data Mining __________________________________________________5
1.1 Introduction __________________________________________________5
1.2 Définition du Data Mining_______________________________________5
1.3 Les domaines d’applications du Data Mining________________________6
1.4 Le Data Mining dans le processus ECD____________________________ 8
1.4.1. Identification du (ou des) problème(s) _____________________ 8
1.4.2. Sélection (Rassemblement) des données____________________9
1.4.3. Préparation des données_________________________________9
1.4.4. Data Mining (modélisation des données) __________________10
1.4.5. Evaluation des résultats (des modèles) ____________________13
1.4.6. Déploiement et interprétation ___________________________13
1.5 Les tâches du Data Mining _____________________________________13
1.6 Les outils (techniques de modélisation) du DataMining ______________ 14
1.6.1. Les règles d’association________________________________14
1.6.2. La méthode du plus proche voisin ou RBC_________________15
1.6.3. La détection de clusters________________________________ 15
1.6.4. Les arbres de décision_________________________________ 16
1.6.5. Les réseaux neuronaux artificiels________________________ 17
1.6.6. Les algorithmes génétiques_____________________________ 17
1.7 Conclusion__________________________________________________ 17
2. Les règles d’association_________________________________________ 18
2.1 Introduction ________________________________________________ 18
2.2 Domaines d’application _______________________________________ 18
2.3 Extraction de règles d’association _______________________________ 18
2.3.1. Quelques définitions__________________________________ 19
2.3.2. Processus d’extraction de règles d’association______________ 20
2.4 Algorithmes de recherche de règles d’association ___________________ 23
2.4.1. Algorithme général___________________________________ 23
2.4.2. Algorithme APRIORI__________________________________23
2.4.3. Discussion__________________________________________ 28
2.5 Différentes approches d’extraction des motifs fréquents ______________ 29
2.5.1. Motifs Fréquents_____________________________________ 29
2.5.2. Motifs fréquents maximaux____________________________ 31
2.5.3. Motifs fréquents fermés_______________________________ 31
2.6 Conclusion _________________________________________________ 32
Chapitre III : Les Ontologies
1. Introduction ______________________________________________________ 33
2. Définition d’une ontologie___________________________________________ 34
3. Graphe d’ontologie ________________________________________________ 35
4. Objectifs d’une ontologie ___________________________________________ 35
5. Les domaines d’applications des ontologies_____________________________36
6. Cycle de vie d’une ontologie _________________________________________ 36
7. Critères d'évaluation d'une ontologie__________________________________37
8. Langages des ontologies ____________________________________________ 38
9. Outils de travail avec des ontologies __________________________________ 38
9. 1 L’outil Protégé _____________________________________________ 39
9. 2 L’éditeur Protégé-OWL ______________________________________ 40
10. Conclusion_______________________________________________________40
Chapitre IV : Etat de l’art des approches
d’emploi des ontologies dans le
processus du Data Mining
1. Introduction_______________________________________________________ 41
2. Différentes approches_______________________________________________ 41
2.1 Approches par mesures d'intérêt_________________________________ 41
2.2 Approches par étalons (templates) _______________________________ 42
2.3 Approches par taxonomie______________________________________ 43
2.4 Approches par ontologie et schémas de règles______________________ 43
3. Comparaison des approches__________________________________________44
4. Présentation de l’approche proposée__________________________________ 44
4.1 Explication succincte_________________________________________ 44
4.2 Explication schématisée (esquisse)_______________________________45
4.3 Explication formelle__________________________________________ 46
4.4 Avantages de cette contribution_________________________________ 47
5. Conclusion________________________________________________________ 47
Chapitre V : Implémentation de la solution
sur le système de production
1. Introduction_______________________________________________________48
2. Présentation du système d’information SH/AVAL_______________________49
2.1. Généralités_________________________________________________49
2.2. Le sous système de la production________________________________50
3. Présentation du logiciel développé (PRONTODAM) _____________________ 52
3.1. Connexion à la base (source) de données__________________________52
3.2. Choix de la table de données et Ontologie_________________________56
3.3. Traitement_________________________________________________ 58
3.4. Amélioration de PRONTODAM pour la recherche globale___________63
4. Expérimentation de PRONTODAM sur la production____________________63
4.1. Les données choisies de la production____________________________63
4.2. Ontologie modélisée pour ces données___________________________ 66
4.3. Application par PRONTODAM________________________________ 68
5. Résumé des gains en optimisation et performance de l’approche __________ 73
6. Analyse et interprétation des résultats_________________________________ 75
7. Conclusion________________________________________________________ 76
Chapitre VI : Conclusion Générale
et Perspectives
1. Conclusion générale________________________________________________ 77
2. Perspectives_______________________________________________________ 78
2.1. Perspectives techniques_______________________________________ 78
2.2. Perspectives fonctionnelles____________________________________ 78
BIBLIOGRAPHIE
GLOSSAIRE
Introduction
Générale
1. La fouille de données dans les systèmes d’information
2. Problèmes de génération des règles d’association
3. Sujet du mémoire
4. Cas pratique : application au domaine de la production
du système d’information SONATRACH / AVAL
5. Organisation du mémoire
Chapitre I
Introduction générale
Introduction Générale
1. La fouille de données dans les systèmes d’information
Avec la généralisation et l’évolution rapide de l’informatique dans les différents domaines
d’application, les quantités de données récoltées sont devenues très volumineuses. La source de
collecte des données a dépassé actuellement le stade des saisies manuelles traditionnelles, et
vient d‘être complété de plus en plus par le processus de la récolte des données de manière
automatique. Cette extension de sources automatique est le résultat de l’emploi de
l’informatique industrielle, où des capteurs et des appareils industriels peuvent capter des
informations sous format quelconque (analogique, thermique, dynamique,…etc.) et les enregistrent
directement sous format informatique.
Bien que les anciens systèmes d’information étaient basés sur des fichiers et des bases de
données traditionnelles avec des tailles moyennement contrôlables, les nouveaux systèmes
d’information évolués sont actuellement basés sur des grandes quantités de données exploitées
appelés VLDB (Very Large Data Base), et qui peuvent être emmagasinées dans des stocks de
données appelées des Data Warehouses. En plus, les industriels d’aujourd’hui sont de plus en
plus équipés de systèmes d’acquisition et de décisions numériques. Ces systèmes, qu’ils agissent
au niveau de la conception des produits, de la gestion ou du suivi de la production génèrent des
Giga Octets de données. Le volume de données est tel qu’il est désormais impossible à un
décideur d’avoir une vue d’ensemble sur ces données. Il est alors nécessaire d’équiper les
décideurs d’outils performants leur permettant d’extraire des informations pertinentes.
Les entreprises industrielles, de commerce, de télécommunication, d’administration générale,
ont conçu leurs systèmes d’information de manière appropriée pour tenir compte de la gestion
et le stockage de leurs données. Une fois ces grands volumes de données remplissent leur rôle
principal de gestion, elles peuvent être détruites ou archivées pour des besoins d’historique. En tenant
compte de la baisse du coût de stockage, la plus part des propriétaires des données préfèrent les
garder pour des raisons justifiables, ainsi ils supposent que ces données contiennent peut être des
connaissances d’une grande valeur commerciale ou scientifique. Par exemple pour une
entreprise commerciale, ce type de données contient des informations utiles sur le
comportement des leurs clients, et qui peuvent être utilisées pour améliorer la productivité et la
satisfaction des clients dans l’avenir.
Cependant, l’analyse et l’exploitation de ces grands volumes de données reste très difficiles, car il
n’existe pas de moyen pour les exploiter. C’est en fait le postulat principal qui motive l’extraction
de connaissances dans les données (ECD).
Pour les entreprises, l’objectif principal est d’extraire à partir de leurs bases de données, des
connaissances vitales et utiles pour un emploi éventuel dans leur processus d’aide à la décision
(Business intelligence). C’est ainsi qu’apparaît la notion du Data Mining ou fouille de données.
Plusieurs méthodologies et approches du Data Mining ont été élaborées ou en cours d’étude
par les chercheurs, leur objectif est de mettre en évidence des techniques pour bénéficier des
connaissances, tout en facilitant l’emploi et le traitement des informations obtenues.
Les techniques du Data Mining sont dédiées à la découverte des modèles non triviaux,
implicites, non connus, potentiellement utiles et compréhensibles à partir d’un grand
ensemble de données. L’idée sous-jacente de la fouille de données est donc d’extraire les
connaissances cachées à partir d’un tas de données disponible. Diverses formes de
connaissances peuvent êtres apprises à partir de données: Elles peuvent être sous forme de règles,
de modèles, de régularités, de concepts, ...etc.
-1-
Chapitre I
Introduction générale
Il existe plusieurs techniques d’extraction de connaissances: Arbres de décisions, Réseaux
de neurones, Clustering, ....etc. Un premier problème trivial consiste à bien choisir la
technique convenable aux données analysées et à la nature du champ d’application.
La technique des règles d’association est un moyen pratique très utilisé dans le domaine de
recherches des connaissances, et qui a été l’objet de plusieurs recherches pour améliorer son
implémentation. L’avantage principal des règles d’association réside dans sa clarté et sa
simplicité d’implantation. Cependant cette technique souffre d’inconvénient majeur qui la rend
inappropriée dans le cas de bases de données volumineuses (VLDB). Le point suivant explique
ce phénomène.
2. Problèmes de génération des règles d’association
La technique des règles d’association est un moyen très répandu qui permet de rechercher et
détecter les liens (associations) entre les données. Le principe de cette technique est simple à
implémenter ; il consiste à extraire des connaissances en passant par deux étapes:
-
l’extraction de motifs intéressants (fréquents).
génération de règles d’association à partir de ces motifs.
Un motif décrit des relations dans un sous-ensemble de données avec une certaine certitude.
Selon une mesure d’intérêt choisie par l’utilisateur, un motif intéressant est appelé
connaissance si cette mesure d’intérêt est relativement supérieure à un seuil fixé a priori.
Néanmoins l’inconvénient majeur de cette technique est le nombre très important des règles
générées, d’où la nécessite d’un post-traitement pour choisir manuellement les règles utiles.
Ceci nécessite beaucoup de temps en plus de l’expertise demandée. L’utilisateur final se
retrouve noyé dans ce nombre important de règles générées, et donc ne bénéficiera pas
beaucoup des résultats obtenues. Cet inconvénient est un handicap qui rend cette technique
inexploitable dans le cas où le champ d’étude concerne des bases volumineuses (VLDB), ou
des entrepôts de données (Data Warehouses).
Pour résoudre ce problème, des propositions ont été faites pour faire appel aux connaissances
utilisateurs experts du métier. Leur objectif principal est d’automatiser au maximum le
post-traitement pour filtrer les règles d’association utiles à partir de l’ensemble des règles
générées. Cependant, il n’existe pas un moyen standard pour modéliser les connaissances
d’expertise, ceci reste lié au champ d’étude.
3. Sujet du mémoire
Face au problème de traitement des règles d’association, des nouvelles recherches ont proposé
les concepts des ontologies pour compléter le processus du post-traitement. Ces concepts vont
servir pour un filtrage ciblé des informations en se basant sur les connaissances acquises des
experts dans les différents domaines de métiers.
L’objectif de ce mémoire est de proposer une contribution face au problème décrit ci-dessous.
Cette contribution doit prendre en compte la réduction de l’effort humain déployé lors du posttraitement, l’optimisation du temps ainsi que et le coût du traitement.
Une implémentation d’une telle contribution est nécessaire pour automatiser le processus,
ensuite il faut appliquer cette solution dans un domaine de métier réel en choisissant une
approche convenable du Data Mining, et en modélisant une ontologie spécifique à ce domaine.
Pour illustrer notre travail, une étude de cas sera réalisée sur le domaine de la production
industrielle de l’entreprise SONATRACH/AVAL. Après avoir présenter la base de données de la
production, on doit tout d’abord répondre aux questions suivantes :
-2-
Chapitre I
Introduction générale
- Quelle sont l’approche et l’algorithme les plus adaptés à cette application?
- Quelles sont les informations utilisateurs utiles du domaine qui peuvent être retenues pour
modéliser une telle ontologie ?
- Comment implémenter notre proposition dans cette approche pour des raisons de performance
et simplifier le post-traitement ?
En modélisant une ontologie, des schémas de règles sont employés pour filtrer juste les règles
utiles, les attentes qu’on peut avoir des connaissances extraites, permettent de réduire le coût,
procéder à l’optimisation et la compréhension des tendances générales des clients…etc.
4. Cas pratique : Application au domaine de la production
du système d’information SH/AVAL
Le domaine de la production industrielle est un sous système qui fait parti du système
d’information Sonatrach/Aval. C’est un domaine stratégique important, car il présente le cœur
de métier et la raison d’être de l’entreprise. Tous les autres domaines sont des domaines de
soutien pour la production.
La production industrielle a été toujours une préoccupation majeure pour le management. Cette
préoccupation s’explique par la complexité des installations mises en place et les difficultés
inhérentes aux opérations. Ce domaine de production concerne la gestion de toute la chaîne du
procédé des différents produits commercialisés liquéfiée et traités par des trains (équipement
stratégique pour le procédé), le stockage dans des bacs, le chargements dans des navires, la
gestion des pertes, de l’autoconsommation, les transferts et les réceptions entre les unités, la
charge réceptionnée, ainsi que les produits utilités (électricité, vapeur, eau dessalée, etc.), la
gestion des prévisions et les arrêts des équipements, le manque à produire, …etc.
Les objectifs assignés à la fonction production visent la préservation de l’outil de production par
l’organisation et la prise en charge de l’exploitation au maximum des équipements pour
satisfaire les objectifs fixés, et en même temps à réduire au minimum l’autoconsommation et
les coûts. Les objectifs doivent être stricts concernent en premier lieu les contrats de fourniture
des différents produits commercialisés aux clients externes.
Les moyens internes de la fonction production, aussi bien organisationnels, humains que
matériels, doivent être consacrés essentiellement aux activités clés, à savoir:
- L’exploitation convenable des équipements stratégiques (trains, turbocompresseurs, turbo
générateurs, pompes, chaudières ...) pour la produire à temps des quantités demandées avec
les qualités spécifiées dans les contrats.
- L’exploitation de l’instrumentation et du contrôle (contrôle conventionnel, DCS) pour le
contrôle de qualité.
- L’exploitation des installations utilités (tensions électriques, vapeur, ...etc.) afin d’assurer le
bon fonctionnement de la chaîne de production.
Notre cas pratique consiste à introduire la notion de fouille de données dans le domaine de la
production industrielle de l’activité AVAL, et qui n’a jamais été l’objet d’une étude dans ce sens.
Tout d’abord, nous allons modéliser une ontologie en consultant les experts du domaine.
Ensuite nous allons utiliser la technique des règles d’association et des schémas de règles en
appliquant notre contribution pour générer juste les règles d’association utiles pour l’utilisateur
final. Des résultats obtenus sont donnés après le traitement. L’interprétation et les commentaires
sur la démarche et les gains obtenus sont présentés à la fin.
Les attentes qu’on peut avoir des connaissances extraites, permettent de réduire le coût,
procéder à l’optimisation et la compréhension des tendances générales des clients…etc.
-3-
Chapitre I
Introduction générale
5. Organisation du mémoire
Dans ce mémoire un survol est donné sur les différentes recherches qui ont proposé l’emploi
des ontologies et les schémas de règles dans le post-traitement des règles générées, ensuite un
détail est présenté sur notre contribution dans ce sens.
Ce mémoire est constitué de 6 chapitres:
Ce premier chapitre courant est une introduction générale au thème du mémoire, le travail
attendu, et son application.
Le chapitre II introduit la définition du Data Mining, son domaine d’application, ses tâches et
ses outils. Un plus détail est donné sur la technique d’extraction des règles d’association:
définitions, applications, processus d’extraction des règles d’association ainsi que l’algorithme
APRIORI et ses variantes.
Le chapitre III introduit la notion des ontologies, leurs objectifs, cycle de vie, leurs outils de
modélisation, ainsi que leur utilisation dans la fouille de données.
Le chapitre IV fait l’état de l’art de l’emploi des ontologies dans le processus la fouille de
données pour filtrer les règles utiles. Ainsi, une synthèse sur les différentes approches
proposées est définie. Une proposition est faite comme contribution dans ce processus.
Le chapitre V présente une expérimentation avec un cas d’étude pour réaliser notre démarche sur le
système de production de SH/AVAL. Une présentation de la production industrielle est donnée,
puis la modélisation d’une ontologie spécifique, et l’application de notre approche à la base de
données de la production industrielle avec quelques résultats et interprétation des résultats.
Enfin, le chapitre VI clôture ce mémoire avec une conclusion générale et quelques perspectives
fonctionnelles et techniques d’éventuels travaux futurs.
-4-
Le Data Mining et les règles
d’association
1. Le Data Mining
1.1 Introduction
1.2 Définition du Data Mining
1.3 Les domaines d’applications du Data Mining
1.4 Le Data Mining dans le processus ECD
(Méthodologie de travail)
1.5 Les tâches du Data Mining
1.6 Les outils (techniques de modélisation) du Data Mining
1.7 Conclusion
2. Les règles d’association
2.1 Introduction
2.2 Domaines d’application
2.3 Extraction de règles d’association
2.4 Algorithmes de recherche de règles d’association
2.5 Différentes approches d’extraction des motifs fréquents
2.6 Conclusion
Chapitre II
Data Mining et Règles d’association
1. Le Data Mining
1.1. Introduction
Durant les dernières années on assiste à une croissance importante des moyens de génération
et de collection des données. Ceci est dû principalement à l’évolution de la technologie des
supports de stockage, leurs capacités, et la réduction considérable de leurs coûts. Du fait de
l'informatisation rapide des entreprises, des administrations, du commerce, des télécommunications,
la quantité de données disponibles augmente très rapidement. Cependant, l'analyse et
l'exploitation de ces données restent très difficiles.
Les modèles classiques de recherche d’informations ne sont pas adaptés pour traiter des masses
gigantesques de données, souvent hétérogènes « Beaucoup de données et aucune information en
retour ». C’est ce constat qui a permis au concept de Data Mining d’émerger et e vulgariser les
méthodes d’analyse. [C-06]
Il s’est ainsi créé un besoin d’acquisition de nouvelles techniques et méthodes intelligentes de gestion
qui permettent d’extraire des données, des informations utiles appelées connaissances. C’est ainsi
que l’on a commencé à parler de découverte de connaissances à partir de données (KDD) ou
encore de Data Mining ou de fouille de données. Ces masses de données contiennent des
connaissances d'une grande valeur commerciale ou scientifique.
Le processus d'extraction de connaissances ne se limite donc pas à une extraction
automatique, il comporte plusieurs étapes pendant lesquelles l'expert humain a un rôle
important. Il faut tout d'abord récupérer les données qui peuvent être issues de plusieurs
sources différentes et les mettre dans un format commun pour pouvoir les fusionner. Il faut
ensuite les préparer, par exemple résoudre le problème posé par les valeurs manquantes ou
aberrantes, et sélectionner les données sur lesquelles va être appliqué l'algorithme d'extraction de
connaissances proprement dit. Ensuite, il faut post-traiter les résultats de cet algorithme et les
interpréter. Ce post-traitement peut consister à sélectionner les résultats les plus prometteurs,
à les trier ou à vérifier leur pertinence à l'aide d'outils statistiques. [K-07]
Dans ce chapitre, on va présentée le processus complet d'extraction de connaissances à partir de
données ainsi que les domaines d’applications, les tâches et les techniques du Data Mining.
Ensuite on va focaliser sur une technique très répandue qui est les règles d’association. Un plus
détail est donné sur cette technique et leurs différents algorithmes.
1.2. Définition du Data Mining
Le Data Mining (en français fouille de données) est un néologisme américain qui signifie
"recherche de pépites d'information utile dans un grand ensemble de données". [K-07]
Le terme de Data Mining signifie littéralement forage de données. Comme dans tout forage,
son but est de pouvoir extraire un élément : la connaissance. Ces concepts s’appuient sur le
constat qu’il existe au sein de chaque entreprise des informations cachées dans le gisement de
données. Ils permettent, grâce à un certain nombre de techniques spécifiques, de faire apparaître
des connaissances. [K-07]
Donc, le Data Mining a pour objet l’extraction d’un savoir à partit de grandes quantités de
données, par des méthodes automatiques ou semi-automatiques. Le Data Mining repose sur
un ensemble de fonctions mais aussi sur une méthodologie de travail (voir le point 1.4).
-5-
Chapitre II
Data Mining et Règles d’association
On pourrait définir le Data Mining comme une démarche ayant pour objet de découvrir des
relations et des faits, à la fois nouveaux et significatifs, sur de grands ensembles de données. On
devrait ajouter que la pertinence et l’intérêt du Data Mining sont conditionnés par les enjeux
attachés à la démarche entreprise, qui doit être guidée par des objectifs directeurs clairement
explicités (améliorer la performance commerciale, fidéliser la clientèle, ... etc.).
Nous appellerons Data Mining l'ensemble des techniques qui permettent de transformer les
données en connaissances. Les techniques de Data Mining permettent de découvrir des
informations importantes cachées dans les données. Elles permettent par exemple de trouver les
tendances qui se dégagent dans les ventes d’un supermarché. La connaissance de telles
informations peut permettre au supermarché d’élaborer des stratégies commerciales ou de
marketing en direction de ses clients.
Le Data Mining fait appel à un lot de méthodes issues de la statistique, de l’analyse des
données, de la reconnaissance de formes, de l’intelligence artificielle (connexionisme, réseaux de
neurones) ou de l’apprentissage automatique.
Il faut noter que le Data Mining a une approche très différente de la méthode statistique qui
exige qu’on se fixe une hypothèse qui sera confirmée ou non par l’analyse des données. Rien
de tel avec le Data Mining qui, au contraire, fait émerger à partir des données brutes des
réponses à des questions. [C-06]
Le consortium CRISP-DM qui regroupe des membres spécialisés du Data Mining ont défini ce
concept comme étant tout sauf une opération improvisée, et ils ont tous adopté la
méthodologie de développement présentée dans le point 1.4 de ce chapitre. [CRISP]
1.3. Les domaines d’applications du Data Mining
Avec la performance des systèmes informatiques actuels et la maturité des méthodes
d'apprentissage automatique, le Data Mining est devenu très attrayant dans de nombreux
domaines d'applications: médecine, génétique, astronomie, processus industriels, agriculture ou
encore la gestion de la relation client, et la production industrielle, … etc.
Les entreprises ont mis en oeuvre ces outils pour améliorer leur connaissance afin de mieux les
servir et augmenter leur satisfaction et leur fidélité, pour enfin augmenter leur rentabilité. Les
principaux secteurs économiques utilisant ces techniques sont le secteur financier
(banques et assurances), les télécommunications ainsi que les entreprises de grande
distribution. Dans ces secteurs, massivement informatisés depuis longtemps, les données sont
disponibles au sein d’entrepôts de données. [K-07]
On peut résumer les champs d’application les plus importants du Data Mining dans les domaines
suivants :
- La gestion de relation client ( CRM Customer Relationship Management)
C’est le domaine principal où le Data Mining a prouvé son efficacité. En effet, dans ce cas, le
Data Mining permet d'accroître les ventes par une meilleure connaissance de la clientèle. Dans un
contexte concurrentiel de plus en plus soutenu, la capacité à conquérir et à retenir les clients repose
sur une connaissance fine de leurs besoins et de leur comportement. Les objectifs des analyses en
Data Mining sont multiples, tels que la fidélisation, les ventes additionnelles et croisées,
l’efficacité de la force de vente, la personnalisation de l'offre, le contact client, l’enquête de
satisfaction des clients, …etc.
- L’aide à la décision (Business intelligence)
C’est l’un des meilleurs facteurs d’augmentation de la productivité. Le Data Mining est
incorporé dans cette activité pour mieux analyser les données, rechercher des facteurs expliquant
les défauts de la production et leur qualité, et anticiper d’éventuelles réactions.
-6-
Chapitre II
Data Mining et Règles d’association
Les industriels, notamment dans les unités de production, le contrôle et la surveillance, ont
toujours fait appel aux méthodes statistiques et de la modélisation.
- La recherche scientifique et médicale
Le Data Mining fournit aux établissements hospitaliers des solutions et des services pour leur
permettre de mieux connaître les comportements sanitaires et les pathologies rencontrées à savoir: Le
diagnostic médical, l’état des lieux des comportements en matière de santé, l’analyse des risques
sanitaires, l’étude de traitements de thérapies, ainsi que les différentes études en milieu hospitalier telle
que la génomique, le code génétique, …etc.
- Le domaine financier (Banques et Assurances)
Grâce au Data Mining, un organisme financier peut déterminer le profil exact de ces clients afin
de cibler ceux de même profil (mailing). D’autres applications peuvent y avoir telles que la
Gestion et calcul du risque client, l’analyse des sinistres, l’assistance au recouvrement en
orientant la bonne démarche, la recherche de Fraudes, la recherche des corrélations entre les
indicateurs financiers, le retour sur investissement de portefeuilles d’actions.
- Laboratoires pharmaceutiques et cosmétiques
Le Data Mining fournit aux laboratoires pharmaceutiques et de cosmétologie des solutions et des
services pour leur permettre à la fois de mieux connaître leur cœur de cible et d'améliorer les
procédés de fabrication, de s'assurer de la qualité de leurs produits et d'évaluer leur potentiel de
commercialisation.
- Internet [K-07]
L'utilisation du Data Mining est envisagée dans de nombreuses applications concrètes à
différentes étapes de la relation Internet et notamment:
- Optimiser la relation Internet, en rendant celle-ci personnalisée, voire adaptative.
- Identifier des segments de marché et les attributs des prospects à valeur ajoutée.
- Identifier les attributs-clés des clients Internet pour chaque produit.
- Sélectionner des stratégies de promotion les mieux adaptées à un segment de consommateur.
- Améliorer le ciblage des consommateurs Internet, et ceux susceptibles d’être intéressés par de
nouveaux produits.
- Tester et identifier les actions marketing qui ont plus d'impact.
- Identifier les meilleurs prospects online pour un service.
- Réduire les coûts et améliorer la qualité des contacts avec les consommateurs.
- Maximiser l'impact des publicités online.
…etc.
-7-
Chapitre II
Data Mining et Règles d’association
1.4. Le Data Mining dans le processus ECD (Méthodologie
de travail)
Le Data Mining peut être vu comme « un processus qui transforme des données en
connaissances ». Il s’inscrit dans un processus plus général comme élément essentiel. Il s’agit du
processus d’Extraction des Connaissances à partir des Données (ECD). [K-2007]
L’ECD est comprend une succession d’étapes. Plusieurs méthodologies sont proposées par des
organismes intéressés de ce domaine. Nous adoptons ici la méthodologie de développement
proposée par le Consortium CRISP-DM [CRISP]. Cette méthodologie consiste en la succession
des étapes suivantes:






Identification du (ou des) problème(s).
Rassemblement (Sélection) des données.
Préparation des données:
- Nettoyage et enrichissement des données.
- Transformation (formatage) et réduction de la dimension.
Data Mining (modélisation des données).
Évaluation des résultats (des modèles).
Déploiement et interprétation.
Figure 1.1: Processus de découverte de
connaissances à partir de données.
Ci-dessous une explication pour chaque étape du processus ECD.
1.4.1. Identification du (ou des) problème(s)
L’identification du problème est primordiale dans la réalisation du processus ECD, et ne peut en
aucun cas être négligée, c’est le facteur clé du succès du Data Mining. Par exemple, une entreprise
qui obtient de mauvais taux de réponses aux mailings qu’elle envoie peut profiter de certains
outils de Data Mining de manière à mieux cibler son courrier [K-07].
Il faut noter que les systèmes de Businees Intelligence ne se construisent pas sur des données
techniques, mais sur la compréhension des objectifs métiers de l’entreprise. Cette recherche
préliminaire aboutit à la définition de problèmes auxquels le Data Mining tentera d’apporter une
réponse [C-06].
-8-
Chapitre II
Data Mining et Règles d’association
1.4.2. Sélection (Rassemblement) des données
La plupart du temps, les projets Data Mining assemblent une grande quantité de données en
combinant plusieurs sources de données hétérogènes.
Cette phase consiste à présélectionner et collecter les données nécessaires au traitement. Il
s’agit de faire l’inventaire aussi bien des données a priori utiles pour atteindre l’objectif fixé que
des données réellement disponibles et des moyens à mettre en œuvre pour les récupérées.
L’emploi du Data Warehouse est fréquent. Les entreprises tentent de regrouper les
informations dont elles disposent au sein de leurs différents départements en un immense
« entrepôt » de données qui servira de support à de multiples décisions. Ce transfert de données
des départements au Data Warehouse doit se faire régulièrement via des formules
sophistiquées élaborées spécifiquement par des spécialistes.
Il faut noter que lorsque la source n’est pas directement un Data Warehouse, une première
phase consiste à rapatrier les données brutes et à les stocker localement sous forme d’une
base de données.
Les données peuvent être de type structuré (attributs binaires, attributs numériques) ou non
structuré (texte, images, coordonnées de système géodésique, vidéo, etc.).
1.4.3. Préparation des données
Dans la réalité, les données extraites doivent être filtrées, mises en forme, traitées avant de
pouvoir être exploitées par les algorithmes de Data Mining. Cette préparation est une étape
cruciale car elle permet d’effectuer des traitements préliminaires tels que la jointure de
plusieurs tables afin de présenter une vue unique des données, la transformation d’attributs
numériques, le traitement des valeurs extrêmes, l’élimination des valeurs erronées ou la
régénération de valeurs manquantes.
La préparation des données dépend du type de modèle utilisé ainsi que des caractéristiques
des données.
Il est couramment admis que le travail de préparation représente près de 80 % du tems global
de la modélisation. [CRISP]
Cette étape peut être divisée en deux sous étapes: «Nettoyage et enrichissement des données»
et «Transformation et réduction de la dimension».

Nettoyage et enrichissement des données
Le nettoyage des données intervient toujours, et en cas ou un enrichissement est nécessaire,
une deuxième étape de nettoyage est primordiale.
Les politiques adaptées pour accomplir cette tâche dépendent du cas particulier considéré. Le
traitement des données manquantes relève généralement du remplacement par des
estimateurs: moyennes, moyennes conditionnelles, ... etc. Si les données disponibles ne semblent
pas adéquates ou suffisantes pour la tâche prévue, alors trois types d’enrichissement peuvent être
envisagés: interne; externe; ou par transformation.
L’enrichissement interne consiste à se retourner vers le système d’information pour essayer
d’intégrer une autre source aux données d’analyse.
Dans certains cas, si les données disponibles en interne semblent inexploitables sans une donnée
extérieure identifiée, on peut envisager d’acquérir cette donnée: on parlera alors
d’enrichissement externe.
Enfin, l’enrichissement le plus souvent pratiqué est un enrichissement par transformation: il s’agit
de créer de nouveaux indicateurs par calcul sur les données.
-9-
Chapitre II

Data Mining et Règles d’association
Transformation et réduction de la dimension
L’objectif de cette étape est de transformer les données afin de disposer d’une présentation
standard et uniforme, compatible avec les méthodes de Data Mining qui vont être appliquées. Ces
transformations dépendent de la technique de Data Mining utilisée.
Plusieurs techniques de transformation existent tels que :
-
Transformation par Winsorizing : consiste à affecter aux valeurs extrêmes (inférieures ou
supérieures) d’un attribut la valeur extrême de l’intervalle le plus proche. Par exemple
une transformation par Winsorizing à 90% crée 3 ensembles : les valeurs inférieures à 5
% sont réinitialisées à 5%, les valeurs entre 6% et 95% restent inchangées, et les valeurs
supérieures à 95% situées sont réinitialisées à 95%.
-
Transformation par Trimming (ou Clipping) : consiste à ignorer simplement les valeurs
extrêmes en leur affectant nulles.
-
Transformation par regroupement (Binning ou Discretizing) : permet d’amalgamer des
valeurs reliées ensemble afin de réduire au final le nombre de valeurs distinctes dans
l’attribut. Ceci permet de diminuer le volume de données à traiter mais peut aussi
diminuer la pertinence de manière significative. Il existe trois méthodes pour déterminer
les frontières des regroupements : Classement par Top-N de la fréquence (les N premières
groupes le plus présentés), Classement par groupe numérique (N intervalles de taille
D=(Max-Min)/N), Classement par quantiles (fonction NTILE).
-
Normalisation : convertit les valeurs afin qu’elles soient dans le même intervalle, ceci
élimine les pics (valeurs extrêmes). L’algorithme K-Means par exemple tire parti de ce
principe.
-
Interprétation des valeurs manquantes : Certains algorithmes interprètent une valeur Null
comme étant une absence de données, d’autres comme une donnée éparse.
Les données sont éparses si la majeure partie (généralement 80%) des attributs
représentés ont des valeurs nulles ou égales à 0.
Une fois les données préparées et présentées sous le format standard, elles vont pouvoir être
analysées. Cependant, pour les VLDB (grandes bases de données), l’analyse nécessite une étape
intermédiaire, la réduction de la dimension. En effet, les meilleurs modèles sont parfois obtenus
grâce à des groupes de données réduits.
Les outils de Data Mining peuvent potentiellement s’adapter à des données de toute taille mais
plus un modèle comportera de données, plus de cas exceptionnels il devra intégrer. Dans cette
perspective, le modèle aura tendance à trouver des solutions qui n’en sont pas. L’étape de la
réduction du nombre de dimensions élimine ce risque et permet également aux programmes
d’analyse une étude moins coûteuse en temps et en puissance informatique.
1.4.4. Data Mining (modélisation des données)
La fouille de données consiste à appliquer des méthodes intelligentes dans le but d’extraire des
connaissances convoitées. Si l’opération se limite juste à explorer les données, les outils
d’analyse multidimensionnelle, type OLAP, suffisent largement. Par contre, si l’opération se
centre sur un modèle ou la déduction d’hypothèses sur les données, la fouille de données se
révèle alors incontournable. Il est possible de définir la qualité d’un modèle en fonction de
critères comme les performances obtenues, la fiabilité, la compréhension, la rapidité de
construction et d’utilisation et enfin l’évolutivité.
Cette étape est la plus intéressante car des méthodes et des outils intelligents sont employés afin
de construire des modèles informatiques pour accomplir des tâches bien définies. Pour cela la
construction des modèles ou l’analyse des données précédemment traitées peut se faire de deux
manières distinctes : supervisée, ou non supervisée.
-10-
Chapitre II
Data Mining et Règles d’association
Modélisation avec les fonctions supervisées : [C-06]
Dans la classification supervisée (appelée aussi prédictive ou directe), où il s’agit de résoudre un
problème spécifique qui aurait été posé. Dans ce cas, on connaît les classes possibles et on
dispose d'un ensemble d'objets déjà classés, servant d'ensemble d'apprentissage. Le problème est
alors d'être capable d'associer à tout nouvel objet sa classe la plus adaptée, en se servant des
exemples déjà étiquetés. Par exemple, déterminer à partir d'une base de données exprimant les
problèmes cardiovasculaires d'un ensemble de patients, quels risques cardio-vasculaires peut
avoir un nouveau patient.
Donc, Les fonctions supervisées du Data Mining, qui travaillent avec une cible permettent de
prédire une valeur. La modélisation et la décision se fondent sur l’observation du passé.
Formellement il s’agit de trouver une fonction f(X1, …Xp) permettant de prédire Y.
Parmi les fonctions supervisées ou prédictives, nous citons:
 Les fonctions de classification : regroupe les éléments dans des classes et prédisent à quelle
classe un nouveau élément appartient à partir de certains traits descriptifs. Ces classes
conviennent en particulier au problème de la prise de décision automatisée.
Voici quelques exemples d’algorithmes employés dans cette classe :
-
Algorithme des arbres de décisions (Decision Tree) : permet de formuler les prédictions
avec des règles explicites.
-
Algorithme NB (Naïve Bayes) : permet une construction rapide du modèle.
-
Algorithme de réseaux bayésiens ABN (Adaptive Bayes Network) : permet une
construction évolutive avec des règles optionnelles pour le modèle.
-
Algorithme SVM (Support Vector Machine) : permet de construire le modèle le plus
précis possible avec des données éparses ou non.
 Les fonctions de régression : utilisent un échantillon d’observation pour prévoir une variable
Y comme fonction d’un ensemble doté de N caractéristiques. Ces modèles sont similaires
aux modèles de classification mais ne travaillent que sur des cibles dotées d’attributs
numériques. L’algorithme SVM cité avant est employé aussi pour ces fonctions.
 Les fonctions d’importance attribuée (Attribute Importance): recherchent les attributs
significatifs pour la prédiction d’une valeur cible. Elles permettent de classer les éléments en
fonction de leur influence. L’identification des attributs ayant un fort pouvoir prédictif est
prépondérante pour effectuer les prévisions. Ces modèles fournissent une solution pour
améliorer la vitesse lorsque les données possèdent un grand nombre d’attributs. Ceci est
possible en identifiant un sous ensemble ad hoc des attributs appropriés pour prédire la cible.
L’algorithme MDL (Minimum Description Length) est utilisé pour ce type de classe.
 Les fonctions de détection d’anomalies (Anomaly Detection): recherchent les éléments dont
les attributs sont hors norme. Elles identifient les éléments inattendus dans une distribution.
L’algorithme SVM cité avant peut aussi être employé pour ces fonctions.
-11-
Chapitre II
Data Mining et Règles d’association
Modélisation avec les fonctions non supervisées : [C-06]
Dans la classification non supervisée (appelée aussi descriptive ou indirecte), il s’agit de la
recherche de groupement (ou clustering). Ces modèles ne précisent pas de valeur pour la cible
mais se concentrent sur des relations entre données. L’analyse peut également être effectuée de
manière exploratoire, c’est à dire sans idée a priori des résultats qui vont en découler. Dans ce
cas, les classes possibles ne sont pas connues à l'avance, et les exemples disponibles sont non
étiquetés. Le but est donc de regrouper dans un même groupe (ou cluster) les objets considérés
comme similaires, pour constituer les classes. Par exemple, créer différents groupes de textes, à
partir d'un ensemble de textes de tous genres, selon la similarité de leur contenu. Dans ce cas,
le problème est alors de définir cette similarité entre objets. Les fonctions non supervisées du
Data Mining détectent des relations, des analogies ou des concordances entre des données. Ces
fonctions n’utilisent aucune cible, et s’appuient sur le clustering hiérarchique, les centres
mobiles, les règles d’association, …etc. pour extraire des similitudes dans les données.
Parmi les fonctions supervisées ou prédictives, nous citons :
 Les fonctions de Clustering : décomposent les données en collections. Ces fonctions
permettent de regrouper les données dans des ensembles. Le modèle Clustering commence
par placer les éléments de l’échantillon au hasard sur une grille, puis les déplace de façon à
réduire le coût progressivement. Le Clustering peut aussi être une étape intermédiaire de
préparation des données pour effectuer ensuite un traitement supervisé. L’algorithme
Enhanced K-Means et l’algorithme O-Cluster (Orthogonal Partitioning Clustering) sont
utilisés pour ces fonctions.
 Les fonctions d’association (Rules Association) : analysent les données et recherchent les
liens. Elles permettent de découvrir des relations entre les éléments. L’algorithme Apriori est
le plus employé pour ce type de fonction.
 Les fonctions d’extraction de traits (Feature Extraction) : permettent d’extraire des
caractéristiques des données source. Elles créent un sous ensemble d’attributs pertinents afin
de réduire le nombre d’attributs. L’algorithme NMF (Non Negative Matrix Factorization) est
utilisé pour cette classe.
En résumé, l’analyse non supervisée identifie des structures au sein des données et l’analyse
supervisée les explique. En général, les techniques d’extraction de connaissances s’effectuent avant
les méthodes d’analyse supervisée quand le nombre de données disponible est insuffisant ou
que l’on n’a pas d’idée précise sur les informations que celle-ci contiennent. Elle offre un
support à la décision et peuvent être suivies par des analyses de test d’hypothèse ou de
prédiction. Le problème de ce genre de recherche réside dans le fait que la pertinence d’un
certain nombre d’informations qui ressortent peut être discutée.
Il faut noter qu’un problème peut avoir plusieurs solutions techniques car les fonctions
supervisées et non supervisées s’appuient sur plusieurs algorithmes. A priori, il n’y a pas
d’algorithme qui soit le meilleur que les autres, mais chaque algorithme a une compétence précise
et son champ d’application présente des avantages et des inconvénients suivant les échantillons de
données à traiter. Dans le point 1.6, un plus de détail est donné sur les techniques et les
algorithmes appartenant aux deux familles de modèles d’analyse supervisés, et non supervisés.
-12-
Chapitre II
Data Mining et Règles d’association
1.4.5. Evaluation des résultats (des modèles)
Cette phase est constituée de l’évaluation, qui mesure l’intérêt des motifs extraits, et de la
présentation des résultats à l’utilisateur grâce à différentes techniques de visualisation. Ce n’est qu’à
partir de la phase de présentation que l’on peut employer le terme de connaissances, à condition
que ces motifs soient validés par les experts du domaine.
L’évaluation du (ou des) modèles est une étape importante qui permet de vérifier que les questions
posées lors de l’étape « identification du problème » ont bien trouvé une réponse fiable. Une fois les
modèles construits, il peut s’avérer nécessaire de revoir les étapes «Rassemblement » et
« Préparation» afin d’affiner la collecte et la préparation des données.
Le passage avec succès de cette étape conditionne le déploiement.
1.4.6. Déploiement et interprétation
Après avoir été validés, les modèles du Data Mining sont déployés dans leurs domaines
d’application respectifs. Le déploiement couvre des domaines aussi divers que la production de
rapports ou l’automatisation de l’acquisition des données dans le Data Warehouse.
L’interprétation des résultats obtenus est faite par les experts en leu offrant une interface
conviviale qui fait intervenir des notions d’interaction homme machine.
1.5. Les tâches du Data Mining
Pour le Data Mining, plusieurs types de problèmes peuvent être regroupés, suivant leur
formalisation, dans l’une des tâches suivantes :
 Classification
 Estimation
 Prédiction
 Groupement par similitudes
 Segmentation (clustering)
 Description.
Aucun des outils de Data Mining exposés plus bas ne peut résoudre tous les types de tâches.
Chaque outil a ses spécificités et usages propres.
 Classification
La classification consiste à examiner les caractéristiques d'un objet et lui attribuer une classe
prédéfinie. La classe est un champ particulier à valeurs discrètes. Comme exemple de
classification, on peut citer l’attribution ou non un prêt à un client, l’acceptation ou le refus d’un
retrait dans un distributeur, ...etc. A noter que la classification se rapporte à des événements
discrets (le prêt a été accepté ou non, le patient a été ou non hospitalisé).
Les techniques des arbres de décision, les plus proches voisins, et les réseaux de neurones sont les
plus appropriées à cette tâche de classification.
 Estimation
Contrairement à la classification qui se rapporte à des événements discrets, l’estimation se fait
sur des variables continues (durée du prêt, la durée d’hospitalisation). Elle consiste à estimer la
valeur d'un champ à partir des caractéristiques d'un objet. Un des intérêts de l’estimation est de
pouvoir ordonner les résultats pour ne retenir que les N meilleures valeurs. Cette technique sera
souvent utilisée en marketing pour proposer des offres aux meilleurs clients potentiels.
L'estimation peut être utilisée dans un but de classification, en attribuant une classe particulière à
un intervalle de valeurs du champ estimé. Par exemple, on peut estimer le revenu d’un ménage
selon divers critères (type de véhicule, catégorie socioprofessionnelle, type d’habitation, ...etc.). Il
sera ensuite possible de définir des tranches de revenus pour classifier les individus.
La technique des réseaux de neurones est la plus appropriée à l’estimation.
-13-
Chapitre II
Data Mining et Règles d’association
 Prédiction
Cette fonction est proche de la classification ou de l’estimation mais les observations sont
classées selon un comportement ou une valeur estimée futur. Le modèle, construit sur les
données d’exemples et appliqué à de nouvelles données, permet de prédire un comportement
futur. Tout comme les tâches précédentes, elle s’appuie sur le passé et le présent mais son
résultat se situe dans un futur généralement précisé. A noter que les méthodes de classification
et d'estimation peuvent être utilisées en prédiction.
On peut citer comme exemples de prédiction, la prédiction des valeurs futures d'actions, du prix
de produits commercialisés, et les départs de clients au vu de leurs actions passées, …etc.
Les techniques les plus appropriées à la prédiction sont : les règles d’association, les plus proches
voisins, les arbres de décision, et les réseaux de neurones.
 Groupement par similitudes (selon les affinités)
Cette tâche est assimilée à la technique des règles d’associations. Il s’agit de déterminer quels
produits sont achetés ensemble lors d’une même transaction.
La technique des règles d’association est la plus adéquate à cette tâche.
 Segmentation (clustering)
Elle permet le fractionnement d’une population hétérogène d’individus en un ensemble de
sous-groupes (clusters) plus homogènes. La différence avec la classification réside dans le fait
que la segmentation ne se base pas sur des classes prédéfinies. Des outils de détection des
clusters sont employés à cet effet.
Les techniques ad hoc à la segmentation sont l’analyse des clusters et les réseaux de neurones.
 Description
Cette tâche permet simplement de décrire ce qui se passe au sein d’une base de données complexe
dans l’objectif d’augmenter la compréhension de celle-ci.
Les techniques convenables à la description sont les règles d’association et les arbres de décisions.
1.6. Les outils (techniques de modélisation) de Data Mining
Il existe plusieurs techniques de Data Mining, et il faut insister sur le fait que chacune a une
utilité propre par rapport aux tâches présentées ci-dessus. Ces techniques proviennent en fait de
diverses disciplines.
Cependant il est impossible de détailler chacune de ces techniques vu l’amplitude du domaine du
Data Mining. On présente ici un survol sur certaines approches à savoir:
>
>
>
>
>
>
Les règles d’association.
La méthode du plus proche voisin ou RBC
La détection de clusters.
Les arbres de décision.
Les réseaux neuronaux artificiels.
Les algorithmes génétiques.
1.6.1. Les règles d’association
Les règles d’association sont une des méthodes de Data Mining les plus répandus dans le domaine
du marketing et de la distribution.
Les règles d'association générées sont de la forme "Si action1 ou condition alors action2".
Elles peuvent se situer dans le temps : "Si action1 ou condition à l'instant t1 alors action2 à
l'instant t2" c’est les règles d’association séquentielles.
-14-
Chapitre II
Data Mining et Règles d’association
Leur principale application est « l'analyse du panier de la ménagère », qui consiste, comme l'indique
son nom, en la recherche d'associations entre produits sur les tickets de caisse et l'étude de ce
que les clients achètent. La méthode recherche quels produits tendent à être achetés ensemble.
Elles peuvent être appliquées à tout secteur d'activité pour lequel il est intéressant de rechercher
des groupements potentiels de produits ou de services.
Voici quelques exemples de règles:
-
Si un client achète du lait alors il achète du pain (90%)
Si un client achète une télévision, il achètera un récepteur satellite dans un mois (50%)
Si maladie X et traitement Y alors guérison (95%)
Si maladie X et traitement Y alors guérison dans Z années (97%)
Si présence et travail alors réussite à l’examen (99%)
Ces règles sont intuitivement faciles à interpréter car elles montrent comment des produits ou des
services se situent les uns par rapport aux autres. Elles sont particulièrement utiles en
marketing et peuvent être facilement utilisées dans le système d'information de l'entreprise.
Le but principal de cette technique est donc descriptif. Dans la mesure où les résultats
peuvent être situés dans le temps, cette technique peut être considérée comme prédictive.
Cependant, il faut noter que cette méthode, si elle peut produire des règles intéressantes, peut
aussi produire des règles triviales ou inutiles (provenant de particularités de l'ensemble
d'apprentissage). La recherche de règles d'association est une méthode non supervisée car on ne
dispose en entrée que de la description des achats.
Puisque la technique des règles d’association sera utilisée pour réaliser notre travail dans ce
mémoire, un plus de détail est exposé plus bas dans la deuxième partie de ce chapitre.
1.6.2. La méthode du plus proche voisin ou RBC
La méthode des plus proches voisins PPV (ou nearest neighbor) est une méthode dédiée à la
classification qui peut être étendue à des tâches d'estimation. PPV est une méthode de
raisonnement à base de cas RBC (ou Case Based Reasoning, CBR). L’être humain base la
plupart de ses décisions sur ses expériences passées. Lorsqu’un individu réagit face à une
situation quelconque, son processus de décision consiste à faire appel à sa mémoire et dans celleci, aux cas vécus précédemment, à identifier certains de ceux-ci comme étant voisins ou similaires à
la situation vécue au moment présent et à prendre une décision en fonction de ces voisins.
Lorsque l'on présente un nouvel enregistrement, le RBC trouve les voisins les plus proches et
positionne ce nouvel élément. Le RBC s'adapte bien aux bases de données relationnelles, qui sont
les plus courantes dans le domaine de gestion. On peut l'utiliser pour estimer des éléments
manquants, détecter des fraudes, déterminer le meilleur traitement d'un malade, prédire si un
client sera intéressé ou non par telle offre, ou pour classifier les réponses en texte libre, …etc.
De façon similaire, cette technique de Data Mining, permet de classer ou de prédire des données
inconnues à partir d’instances connues. En conservant une base de données de cas passés, cette
méthode recherche, au sein de celle-ci, des cas similaires ou voisins au cas à analyser soit pour
le classer, lorsque le but est la classification, soit pour en faire une prédiction.
1.6.3. La détection de clusters
En classification non-supervisée (ou clustering), les classes possibles et leur nombre ne sont
pas connues à l'avance et les exemples disponibles sont non étiquetés. Le but est donc de
découvrir des relations intéressantes qui peuvent exister implicitement entre les données et qui
permettront de regrouper dans un même groupe (ou cluster) les objets considérés comme
similaires, pour constituer les classes.
-15-
Chapitre II
Data Mining et Règles d’association
On distingue trois grandes familles de clustering :



Clustering hiérarchique: son objectif est de former une hiérarchie de clusters, telle que plus on
descend dans la hiérarchie, plus les clusters sont spécifiques à un certain nombre d'objets
considérés comme similaires.
Clustering par partition: son objectif est de former une partition de l'espace des objets,
chaque partition représentant alors un cluster; dans cette famille, plusieurs méthodes se
distinguent fortement (Clustering basé sur les K-means, basé sur la densité, basé sur
l'utilisation de grilles, et basé sur les réseaux de neurones).
Clustering par sous espace (subspace) : son objectif est de cibler les clusters denses existant
dans des sous-espaces de l'espace original.
Plusieurs propriétés peuvent être associées aux différentes techniques de Clustering :
o Ascendant / Descendant
Une méthode ascendante va démarrer avec autant de clusters que d'objets, puis va concaténer
successivement les clusters jusqu'à ce qu'un critère d'arrêt soit satisfait. A l'inverse, une méthode
descendante va démarrer avec un cluster réunissant tous les objets, puis va diviser les clusters
jusqu'à ce qu'un critère d'arrêt soit satisfait.
o Déterministe / Stochastique
Avec les mêmes données en entrée, un algorithme déterministe exécutera toujours la même suite
d'opérations et fournira donc toujours le même résultat. A l'inverse, une méthode stochastique
pourra donner des résultats différents pour des données en entrée identiques, car elle permet
l'exécution d'opérations aléatoires. Les algorithmes stochastiques sont donc moins précis mais
généralement moins coûteux. C'est pour cette cause qu’ils sont utilisés pour de larges données.
o Incrémental / Non-incrémental
Une méthode incrémentale va être exécutée de façon continue, et va intégrer les données au fur
et à mesure de leur arrivée dans l'algorithme. A l'inverse, une méthode non-incrémentale va
considérer un ensemble de données fournies en entrée et sera exécutée sur cet ensemble de données.
Si, par la suite, une nouvelle donnée devait être fournie en entrée de l'algorithme, celui-ci devrait
être relancé à nouveau.
o Hard / Fuzzy
Une méthode Hard va associer à chaque objet un cluster unique, alors que Fuzzy va associer à
chaque objet un degré d'appartenance à chaque cluster. Un Fuzzy clustering peut être converti en
Hard, en assignant chaque donnée au cluster dont le degré d'appartenance est le plus fort.
1.6.4. Les arbres de décision
Les arbres de décisions est un outil puissant utilisé tant pour la classification que pour la
prédiction. Ces arbres permettent de distinguer différentes classes et de leur associer une ou
plusieurs règles. L’atout principal des arbres de décision par rapport aux réseaux neuronaux
artificiels, réside dans le fait qu’elles représentent des règles faciles à comprendre. Il existe un
certain nombre d’algorithmes qui partagent cette qualité de compréhension. Les arbres de
classification et de régression (CART), et les «CHisquared Automatic Interaction Detection»
(CHAID) sont parmi les plus répandus.
1.6.5. Les réseaux neuronaux artificiels
Les réseaux neuronaux sont des outils très évolués. Ces réseaux issus de la biologie, sont en
pleine expansion, et représentent de façon simplifiée, les interconnections du cerveau
humain. Les réseaux neuronaux artificiels utilisent des méthodes statistiques telles que les
probabilités et les distributions. Cependant, les résultats obtenus sont très faibles, et les modèles
qui en découlent sont difficiles à comprendre et très sensibles au format des données traitées.
-16-
Chapitre II
Data Mining et Règles d’association
Il existe deux types de réseaux :


Réseaux à apprentissage supervisé où la réponse est connue à l’avance.
Réseaux à apprentissage non supervisé où le résultat n’est pas connu à l’avance.
Ces outils sont généralement utilisés pour la classification, l'estimation, la prédiction et la
segmentation. Ceux-ci obtiennent de bonnes performances, en particulier, pour la reconnaissance
de formes. Donc, ils sont bien adaptés pour des problèmes comprenant des variables continues
éventuellement bruitées. Le principal désavantage est qu'un réseau est défini par une architecture
et un grand ensemble de paramètres réels (les coefficients synaptiques), le pouvoir explicatif
est faible : on parle parfois de « boîte noire ».
1.6.6. Les algorithmes génétiques
La technique des algorithmes génétiques est une méthode dirigée qui se base sur les mécanismes
génétiques pour élaborer des paramètres de prévision des plus optimaux. Elle crée plusieurs
générations de solutions qui évoluent au cours du temps afin d’obtenir la solution la plus
performante. Cette évolution se fait suivant trois procédés:



la sélection : ce processus est similaire à celui de la sélection naturelle, ainsi
uniquement les meilleures solutions se reproduisent.
le croisement : il se produit lorsque deux individus choisis au hasard parmi la
population sont reliés (accouplés) de sorte que le résultat final contient une partie de
l’information de chacun de ses parents.
la mutation : elle arrive soudainement lorsqu’il y a une erreur dans la transmission du
code génétique des parents à l’enfant.
La méthode des algorithmes génétiques peut servir d’amélioration aux raisonnements basés sur
la mémoire, mais elle consiste plus en une technique de recherche qu’en un algorithme de Data
Mining. Elle est plus utile à des fins d’optimisation qu’à des fins de classification / prédiction.
1.7. Conclusion
Le Data Mining est le résultat de la combinaison de nombreux facteurs technologiques et
économiques. Il peut être vu comme une nécessité imposée par le besoin des entreprises de
valoriser les données qu’elles accumulent dans leurs entrepôts de données. Le développement
des capacités de stockage et les vitesses de transmission des réseaux ont conduit les
utilisateurs à accumuler de plus en plus de données. Le Data Mining répond au besoin
d’exploitation pour bénéficier de ces données collectées.
D’une façon générale, le Data Mining est l’art d’extraire des connaissances à partir de
données qui peuvent être stockées dans des entrepôts, des bases de données distribuées ou sur
Internet. Le Data Mining ne se limite pas au traitement des données structurées sous forme de
tables numériques; Il offre des moyens pour aborder les données textuelles exprimées en langage
naturel (Text Mining), les images (Image Mining), le son (Sound Mining) ou la vidéo et dans ce cas, on
parle alors plus généralement de Multimedia Mining et sur Internet le Web Mining.
Ce chapitre a fait un tour d’horizon sur le concept du Data Mining, sa définition et ses
domaines d’applications, ensuite le processus de l’ECD a été décrit, ainsi que les tâches et les
techniques du Data Mining.
Parmi les techniques citées ci-dessus, la technique des règles d’association est la mieux
adaptée à notre étude de cas qui consiste à fouiller les données de la production industrielle, afin
de trouver des connaissances et les relations cachées et utiles pour l’utilisateur.
Dans le reste de chapitre, on va détailler cette technique avec ses algorithmes.
-17-
Chapitre II
Data Mining et Règles d’association
2. Les règles d’association
2.1. Introduction
La technique d'extraction des règles d'association a attiré le plus l'attention des chercheurs qui
l’ont adopté pour effectuer leurs travaux parmi les autres méthodes de fouille de données.
Ceci est justifié par le fait que cette technique permet la découverte de règles intelligibles et
exploitables dans un ensemble de données, tout en exprimant des associations entre les données.
L’objectif du processus d'extraction est de découvrir des règles (relations) significatives entre
attributs extraits des bases de données, dont le support et la confiance sont au moins égaux à
des seuils minimaux définis par l'utilisateur.
Dans cette section, nous allons décrire les domaines d’applications, le processus de
l’extraction des règles d’association. Par la suite, nous présenterons l’algorithme générique de
l’extraction des règles d’association tout en s’attardant sur l’algorithme de base APRIORI, puis
un survol sur l’autres algorithmes, et enfin une conclusion.
2.2. Domaines d’application
Etant un outil efficace de fouille de données, la recherche des règles d'associations est appliquée
dans tous les domaines du Data Mining. Vu ses avantages offerts, cette technique est devenue un
sujet attractif et actif appliqué à un large champ d'applications dans divers domaines.
Nous citons ici une liste non exhaustive des applications dont les résultats ont pu être améliorés
par l’analyse des règles d’association extraites.
Marketing et Planification commerciale: placement des articles achetés fréquemment
ensemble (étagère ou une page de catalogue), organisation des catalogues, choix des articles
en promotion, …etc.
Réseaux de télécommunication: filtrage des alarmes non informatives, identification des
causes d’anomalies, prédiction des anomalies, …etc.
Recherche médicale: aide au diagnostic et définition de traitement, identification de population à
risque vis-à-vis de certaines maladies, prédiction de résultats d’analyses par combinaison de
caractéristiques des patients et de résultats d’autres analyses.
Analyse de données spatiales: détection des relations entre caractéristiques des données,
prédiction d’évènements, etc.
Internet: Amélioration des modes d’accès aux informations, Modification de la structure des
pages et des liens, Personnalisation des pages suivant le profil utilisateur, l’intelligence
économique dans les sites E-commerce, suggestion aux clients (comme c’est la cas du site
Amazon.com), etc.
Le domaine industriel : prévision des ventes, surveillance des unités de production,
diagnostic et analyse des pannes, contrôle de qualité, etc.
Multimédia: analyse d’imagerie, prévision météorologique, aide aux enquêtes, etc.
2.3. Extraction de règles d’association
L’extraction de règles d’association est un processus itératif et interactif constitué de plusieurs
phases. Avant d’évoquer ce processus, on défini certains concepts de bases.
-18-
Chapitre II
Data Mining et Règles d’association
2.3.1. Quelques définitions
Item:
Un item est tout article, attribut, littéral appartenant à un ensemble fini d’éléments distincts X = {x1,
x2, ..., xn}.
Par exemple, dans les applications de type analyse du panier de la ménagère, les articles en vente
dans un magasin sont des items. L’ensemble X peut contenir les items A, B, C et D correspondant
aux articles lait, beurre, pain et confiture par exemple.
ItemSet:
Un itemset ou motif est tout sous-ensemble d’items de X. Un itemset constitué de k-items sera
appelé un k-itemset. Par exemple, l’itemset {A,B,C} est un 3-itemset noté ABC.
Contexte d’extraction de règles :
Un contexte d’extraction de règles d’association est un triplet D= (O,I,R) dans lequel O et I sont
respectivement des ensembles finis d’objets et d’items, et R O * I est une relation binaire
entre les objets et les items. Un couple (o, i)  R dénote le fait que l’objet o  O est en relation
avec l’item i  I. Donc, un contexte d’extraction de taille m est une partie d’une base de données
dans laquelle s’effectué le traitement.
Ensemble des itemsets fréquents :
Soit un contexte d’extraction D = (O, I, R). Etant donné un seuil minimal de support minsup,
l’ensemble F des itemsets fréquents ou motifs fréquents dans D est:
F = {l I | l   support(l)  minsup }
Dans le cas d’un ensemble d’items I de taille m, le nombre d’itemsets potentiels est de 2m-1. Ces
items forment le treillis des parties de I, également appelé treillis (voir def. Treillis ci-dessous) des
itemsets de I, dont la hauteur est de m+1.
Borne inférieure (Minorant) et borne supérieure (Majorant) :
Soit E un ensemble ordonné et F une partie de E.
Un minorant de F est un élément x de E tel que tous les éléments de F sont supérieurs ou égaux
à x. De même, un majorant de F est un élément x de E tel que tous les éléments de F sont
inférieurs ou égaux à x.
Treillis :
Formellement, un ensemble ordonné (E,≤) non vide est un treillis si pour tout couple
d’éléments x,yE l’ensemble {x,y} possède un plus petit majorant et un plus grand minorant. Un
ensemble ordonné (E,≤) est un treillis complet si tout sous-ensemble S E admet un plus petit
majorant et un plus grand minorant.
Donc, un treillis est un graphe des sous ensemble des itemset de taille 0 à i contenant toutes les
combinaisons possibles, où i est le nombre des items dans le contexte D. A noter que pour un
ensemble d’items I de taille i, on aurait 2i-1 itemsets potentiels. Et donc le treillis contient 2i (si
on considère aussi l’itemset vide).
Pour l’exemple, voir le treillis généré dans la phase 3.2.2 (Recherche d’itemsets fréquents).
Support et Confiance :
Chaque règle est évaluée par deux mesures (facteurs) : le support et la confiance.
Le support est une mesure d’importance statistique (statistical significance). Pour qu’une règle
x y vérifie un facteur de support S si et seulement si au moins S % des transactions dans la base
de données x et y vérifie.
La confiance est une mesure de la force de la règle (strength of the rule). Pour qu’une règle
x  y vérifie un facteur de confiance C si au moins C % des transactions dans la base de données
qui vérifient x vérifie aussi y.
-19-
Chapitre II
Data Mining et Règles d’association
Par exemple, dans une base de données d’enseignement, si on considère la règle suivante:
« 75 % des étudiants qui suivent le cours “Linux/ Unix ”, suivent également le cours de
“Programmation C ”, et 30 % de tous les étudiants ont en fait suivis les deux cours ».
On peut dire que cette règle est vérifiée avec une certitude supérieure à 75% (confiance de la
règle), et que la règle est supportée par au moins 30% des étudiants (support de la règle). Pour
être acceptable, il faut que le support de cette règle (30%) soit supérieur à une autre valeur
définie à l’avance par l’utilisateur (support minimum), et que la confiance de cette règle
(75%) soit supérieure à une autre valeur définie à l’avance (confiance minimale).
Ensemble de règles d’association générées :
Soit un ensemble F d’itemsets fréquents dans un contexte d’extraction D pour un seuil
minimal de support minsup. Etant donné un seuil minimal de confiance minconf, l’ensemble
AR des règles d’association valides dans D est:
AR = {r: l2  (l1 - l2)|l1,l2  F et confiance( r) minconf }
Avec Confiance( r)= sup(l1 U l2) / sup( l2)
Donc, pour chaque itemset fréquent l1 dans F, tous les sous-ensembles l2 de l1 sont
déterminés et la valeur de la confiance(r) est calculée. Si cette valeur est supérieure ou égale
au seuil minimal de confiance alors la règle d’association l2  (l1 - l2) est générée.
2.3.2. Processus d’extraction de règles d’association
Le processus d’extraction de règles d’association est constitué de plusieurs phases allant de la
sélection et la préparation des données jusqu’à l’interprétation des résultats, en passant par
la phase de recherche des connaissances (extraction des ensembles fréquents d’attributs et
génération des règles d’association).
Ci-dessous une description de différentes phases de ce processus.
2.3.2.1. Sélection et préparation des données (nettoyage)
Cette phase consiste à sélectionner les données (attributs et objets) de la base de données
utiles à l'extraction des règles d'association et transformer ces données en un contexte
d'extraction. L’extraction de règles d’association peut être effectuée à partir des bases de
données de divers types, comme des données spatiales, temporelles, orientées objets, multimédia, etc. Cette première phase est très importante car à partir de la qualité des données en
entrées dépend la qualité des résultats.
Figure 2.3.2.1 –Processus d’ECD adapté à la recherche de règles d’association
-20-
Chapitre II
Data Mining et Règles d’association
Cette phase est nécessaire pour pouvoir appliquer les algorithmes d'extraction des règles sur
des données de natures différentes provenant de sources différentes, de concentrer la recherche
sur les données utiles pour l'application et de minimiser le temps d'extraction. A noter que le
problème des données incomplètes (valeurs manquantes), et les données erronées ou incertaines et
la taille du jeu de données doivent être pris en considération dans cette phase.
Par exemple, le tableau ci-dessous 2.3.2.1 suivant représente un contexte d’extraction D
constitué de 6 objets, chacun représenté par son identifiant et de quatre items. Ce contexte sera
utilisé comme exemple dans tout le reste de ce chapitre.
ITEM ID
Items
1
ACD
2
BCE
3
ABCE
4
BE
5
ABCE
6
BCE
Tableau 2.3.2.1 –Contexte d’extraction de règles d’association D.
2.3.2.2. Recherche d’itemsets fréquents
Cette phase consiste à extraire du contexte D tous les itemsets qui sont fréquents. La recherche
des itemsets fréquents est un problème non trivial car le nombre d’itemsets fréquents potentiels
est exponentiel en fonction du nombre d’items du contexte D.
Dans le cas d’un ensemble d’items I de taille m, le nombre d’itemsets potentiels est de 2m-1.
Ces items forment le treillis des itemsets de I, dont la hauteur est de m+1.
Les balayages du contexte doivent être réalisés lors de cette phase et il est donc nécessaire de
développer des méthodes efficaces d'exploration de cet espace de recherche exponentiel.
La phase découverte des items fréquents constitue la phase la plus coûteuse en temps
d’exécution et en espace. L’espace de recherche est de taille exponentielle par rapport au
nombre d’items. Plusieurs méthodes ont été proposées dans le but de réduire l’espace de
recherche de cette phase ainsi que le nombre de balayages du contexte réalisé.
Voici un exemple d’un treillis des itemsets du contexte D donné dans le tableau 2.3.2.1 précédent
Figure 2.3.2.2 - Représentation sous forme de treillis d’itemsets fréquents du contexte D
-21-
Chapitre II
Data Mining et Règles d’association
2.3.2.3. Génération des règles d’association
La génération des règles d’association s’effectue à partir des itemsets fréquents générés
précédemment.
En général, la génération des règles d’association est réalisée de manière directe, sans accéder au
contexte d’extraction, et le coût de cette phase en temps d’exécution est donc faible par
rapport au coût de l’extraction des itemsets fréquents.
La génération de règles d’association est assez simple suivant le principe donné dans la définition
donnée pour l’ensemble de règles d’association générées (point 2.3.1).
Pour chaque itemset fréquent l1 dans F, tous les sous-ensembles l2 de l1 sont déterminés et la
valeur de la confiance(r) est calculée. Si cette valeur est supérieure ou égale au seuil minimal
de confiance alors la règle d’association l2  (l1 - l2) est générée.
2.3.2.4. Visualisation et interprétation
C’est la phase finale du processus d’ECD. Cette phase consiste en la visualisation par
l'utilisateur des règles d'association extraites du contexte et leur interprétation afin d'en
déduire des connaissances utiles pour l'amélioration de l'activité concernée. Ainsi l’expert du
domaine peut juger de leurs pertinences et utilités. Mais le nombre important des règles
d’association extraites impose le développement d’outils de classification de règles selon leurs
propriétés, de sélection de sous-ensembles de règles selon des critères définis par l’utilisateur, et
de visualisation de ces règles sous une forme intelligible. Cette nouvelle problématique est
également appelée « Knowledge Mining ».
La forme de présentation de règles peut être textuelle, graphique ou bien une combinaison de
ces deux formes intelligibles. Ceci va donner naissance à un nouveau domaine de recherche: la
fouille visuelle de données « Visual Data Mining » afin d’améliorer le processus d’extraction de
connaissances en proposant des outils de visualisation adaptés à différentes problématiques.
Les connaissances de l'utilisateur concernant le domaine d'application sont nécessaires lors
des phases de pré-traitement afin d'assister la sélection et la préparation des données et de
post-traitement, pour l'interprétation et l'évaluation des règles extraites. En fonction de
l'évaluation des règles extraites, les paramètres utilisés lors des précédentes phases (critères de
sélection et préparation des données et seuils minimaux de support et de confiance) peuvent
être modifiés avant d'effectuer à nouveau l'extraction des règles d'association, ceci afin
d'améliorer la qualité du résultat.
Il ressort de la grande majorité de ces applications qu’au final, beaucoup de règles sont
générées par les algorithmes et qu’il est parfois difficile aux experts du domaine de les
exploiter dans leur intégralité, car cela engendre un travail cognitif très important. Devant cette
tâche, leur premier souhait est souvent de réduire cet ensemble pour ainsi diminuer le temps
d’expertise correspondant. En effet, dans le domaine industriel, les experts n’ont pas
forcément beaucoup de temps à consacrer à l’analyse des résultats.
Dans le chapitre suivant, nous allons décrire cette problématique, et passer en revue les
propositions faites dans ce sens.
-22-
Chapitre II
Data Mining et Règles d’association
2.4. Algorithmes de recherche de règles d’association
2.4.1. Algorithme général
La recherche de règles d’association peut être scindée en deux étapes :

Recherche des itemsets (motifs) fréquents

Génération de règles d’association
L’algorithme général peut la schématiser de cette façon :
Algorithme 2.1 Algorithme général de recherche de règles d’association
Entrée : Une liste d’attributs I et une base de données D
Sortie: Une liste de règles d’association Fra
// Recherche des itemsets fréquents
Fg  a) Extraction des motifs fréquents (I, D, minsup);
// Génération de règles d’association
Fra b) Trouver les règles valides (Fg, minconf);
Retourner Fra
La performance de tout algorithme basé sur cette approche dépend de la 1 ère phase. C'est une
phase non triviale vu son aspect combinatoire pour rechercher tous les itemsets fréquents.
L’espace de recherche pour l’énumération de tous les itemsets fréquents possibles de |I| = m
est de 2m-1, et donc exponentiel en m. Ce problème reste ouvert et constitue la majeure partie
des efforts de recherche actuels.
La seconde étape d'extraction des règles constitue la phase la plus simple, elle est accomplie en
considérant tous les sous ensembles des itemsets fréquents pour générer des règles avec des
conséquences multiples. Ce deuxième sous-problème est exponentiel dans la taille des itemsets
fréquents, car pour un itemset fréquent A, le nombre de règles d’association qui peuvent être
générées est de 2|A|-2. Cependant les temps de calcul sont faibles puisque aucun balayage de la
base n’est nécessaire pour la génération des règles. Ces pourquoi, le problème de la recherche
de règles d’association se restreint au problème de l’optimisation de la découverte des itemsets
fréquents. Pour cela, plusieurs algorithmes ont été proposés dans la littérature, dont la majorité se
basent sur l’algorithme générique APRIORI, c’est l’algorithme pionnier pour la recherche des
itemsets fréquents, et qui va être décrit en détail avec un exemple dans ce qui va suivre.
2.4.2. Algorithme APRIORI [AS-95]
C’est l’inévitable algorithme d'extraction des règles d’association proposé par Agrawal et al.
En 1994. Cet algorithme se base essentiellement sur les deux propriétés suivantes :

Propriété sur les sous-ensembles (antimonotonicité) :
«Tous les sous-ensembles d’un itemset fréquent sont fréquents ».
Cette propriété permet de limiter le nombre de candidats de taille k générés lors de la kème
itération (parmi les 2k-1 itemsets de taille k existants) en réalisant une jointure
conditionnelle des itemsets fréquents de taille k-1 découverts lors de l’itération
précédente.

Propriété sur les sur-ensembles :
« Tous les sur-ensembles d’un itemset non fréquent sont non fréquents ».
Cette propriété permet de supprimer un candidat de taille k lorsque au moins un de ses
sous-ensembles de taille k-1 ne fait pas partie des itemsets fréquents découverts lors de
l'itération précédente.
-23-
Chapitre II
Data Mining et Règles d’association
Ces deux propriétés sont utilisées à chaque itération de l'algorithme APRIORI afin de diminuer
le nombre d'itemsets candidats à considérer ainsi que le calcul de leurs supports.
Ci-dessous le principe de base de l'algorithme APRIORI est détaillé, dans ses deux étapes :
l’extraction des motifs fréquents, puis la génération des règles d’association.
2.4.2.1. Extraction des motifs fréquents
L'algorithme APRIORI utilise une approche itérative par niveaux pour générer les itemsets fréquents.
Pour cela, le treillis des itemsets est exploré en largeur d'abord. APRIORI effectue à chaque
itération k, un passage dans la base de transactions afin de calculer le support de chaque kitemset.
Soit Ck l'ensemble des k-itemsets candidats, et Fk l'ensemble des k-itemsets fréquents de taille k.

Considérons le treillis des itemsets. C1 est l’ l'ensemble des 1-itemsets candidats du treillis.

Le contexte (base de données) D est parcouru afin de trouver F1 (l’ensemble des 1- itemsets
fréquents dans D). L'algorithme calcul le support pour chaque 1-itemset, s’il est supérieur
au support minimum, cet 1-itemset est ajouté à F1. Une fois la liste F1des 1-itemsets
fréquents est construite, alors l’ensemble C2 des 2-itemsets candidats est généré par jointure
entre F1 et F1 elle-même, en combinant tous les cas possibles des 1-itemsets pour avoir les
2-itemsets sans répétition d’un item. Le processus se répète ensuite pour C2.

Pour l'itération k, l'ensemble Fk-1 des (k-1)-itemsets fréquents correspondant aux itemsets
de niveau (k - 1) du treillis (calculé à l'étape précédente), est utilisé pour générer l'ensemble
C k des k-itemsets candidats. Pour cela, une jointure est effectuée entre Fk-1 et Fk-1 pour
former tous les k-itemsets possibles (deux itemsets p et q de Fk-1 forment un kitemset c si et seulement s'ils ont k-2 itemsets en commun, et c est de taille k). Donc, le
nouveau candidat ne contient pas un sous-ensemble non fréquent (selon la propriété
d'antimonotonicité). Une fois l’ensemble Ck, des candidats de taille k calculé, la base de
transactions est parcourue transaction par transaction afin de déterminer le support de
chaque candidat. Parmi les candidats seuls les candidats fréquents, i.e. de support
suffisant sont gardés dans l'ensemble Fk. C'est cet ensemble qui est retourné à la fin du
processus de génération des itemsets fréquents.
Exemple:
L'exemple ci-dessous montre le processus d'extraction des itemsets fréquents sur la base de
transactions D de notre exemple (tableau 2.3.2.1) pour un support minimum=2/6.
o Á la première itération, chaque item X est un 1-itemset de C 1 . Un 1 er parcours de D
permet de trouver le support de chaque 1-itemset. Tous les 1-itemsets fréquents, i.e. de
support supérieur ou égal à 2/6 seront gardés dans F1.
-24-
Chapitre II
Data Mining et Règles d’association
o Afin de découvrir les 2-itemsets fréquents, Apriori effectue dans la 2ème itération une
jointure de F1 X F1 pour trouver l'ensemble C2 des candidats de taille 2. Seuls les 2-candidats
n'ayant pas de sous-ensembles non fréquents sont gardés. Un 2ème parcours de D est alors
effectué pour déterminer le support de chacun des 2-itemsets candidats, seuls les 2-itemsets
fréquents sont gardés dans F2.
o Les 3-itemsets sont obtenus en combinant les itemsets de F2 deux à deux, i.e. par
jointure F2 X F2. Seuls les 2-itemsets ayant le même préfixe de taille 1 sont générés. Par
exemple les 2-itemsets AB et AC forment le candidat ABC. On s'assure également que les
candidats générés n'ont pas de sous-ensembles non fréquents. Un 3 ème parcours de D est
alors effectué pour déterminer les 3-itemsets fréquents.
o Les 4-itemsets sont obtenus en combinant les itemsets de F3 deux à deux, i.e. par
jointureF3 X F3. Seuls les 3-itemsets ayant le même préfixe de taille 2 sont générés. Par
exemple les 2-itemsets ABC et ABE forment le candidat ABCE. On s'assure également que
les candidats générés n'ont pas de sous-ensembles peu fréquents. Un 4ème parcours de D est
alors effectué pour déterminer les 4-itemsets fréquents.
-25-
Chapitre II
Data Mining et Règles d’association
o A la fin, 15 itemsets sont fréquents, l’itemset  n’étant pas considéré et le plus grand des
itemsets fréquents est {ABCE} dont la taille est 4.
Figure 2.4.2.1 - Représentation des items ets fréquents dans le treillis des itemsets
associé au contexte D pour un Sup min=2/6
2.4.2.2. Génération des règles d’association
Cette étape est plus simple et beaucoup moins coûteuse que la génération des itemsets
fréquents car il n'est plus nécessaire de faire des parcours coûteux de la base de transactions.
Toutefois, cette phase reste tout de même exponentielle dans la taille des itemsets fréquents
car le nombre de règles pouvant être générées à partir d'un k-itemset de taille supérieure à 1
est égal 2 k -2.
Agrawal et Srikant ont proposé une optimisation à la génération des règles d'association. Cette
optimisation est basée sur la propriété suivante :
« Si une règle ayant une conséquence C est valide, toutes les règles ayant pour conséquence des
sous-ensembles de C sont aussi valides ».
Ceci peut être formalisé comme suit :
Soit l un itemset fréquent, alors :
Cette propriété permet de ne pas considérer tous les sous ensembles possibles des itemsets
fréquents.
Le principe de génération des règles d'association est le suivant :

Soit F l'ensemble des itemsets fréquents trouvés en phase précédente. Pour chaque itemset
fréquent X appartenant à F, on considère tous ses sous-ensembles (qui sont aussi fréquents
d'après la propriété d'antimonotonicité).
-26-
Chapitre II

Data Mining et Règles d’association
Á partir de ces sous-ensembles fréquents, on génère toutes les règles de la forme générale
suivante : ( X - C )  C
Cette règle est valide si sa confiance calculée est supérieure à la confiance minimum donnée.
Le calcul de la confiance se fait par la formule donnée en 2.3.1 (Définition de la confiance).
A partir des 3-itemsets, on utilise la propriété d’optimisation lors de la génération des règles
pour éliminer dans les calculs inutiles.
Exemple :
Reprenons notre exemple, les tableaux ci-dessous 2.4.2.2 (a), 2.4.2.2 (b), 2.4.2.2 (c), et 2.4.2.2
(d) montrent les règles d'association générées pour une confiance minimum = 60%.
Les règles d'association sont générées en considérant d'abord les itemsets fréquents de taille 2,
puis ceux de taille 3, 4..., etc.
Les itemsets fréquents de taille 2, F2 ont permis de générer les règles d'association du tableau
2.4.2.2 (a). Dans ce cas la propriété d’optimisation n'est pas employée vu qu'on ne peut avoir
plus d'un item en conséquence des règles d'association.
Itemset
N° Règle
AB
1
2
AC
3
4
AE
5
6
BC
7
8
BE
9
10
CE
11
12
Règle
AB
B A
A C
CA
A E
E A
B C
C B
B E
E B
C E
E C
Confiance
Support
Valide ?
2/3 = 66,66%
2/5 = 40%
2/6 = 33,33%
2/6 = 33,33%
Yes
No
3/3 =100%
3/5 = 60%
3/6 = 50,00%
3/6 = 50,00%
Yes
Yes
2/3=66,66%
2/5=40%
2/6=33,33%
2/6=33,33%
Yes
No
4/5 = 80%
4/5 = 80%
4/6 = 66,66%
4/6 = 66,66%
Yes
Yes
5/5 = 100%
5/5 = 100%
5/6 = 83,33%
5/6 = 83,33%
Yes
Yes
4/5 = 80%
4/5 = 80%
4/6 = 66,66%
4/6 = 66,66%
Yes
Yes
Tableau 4.2.2.2(a): Règles d’association à deux items et à un item comme conséquence.
Les itemsets fréquents de taille 3, F3 à savoir les itemsets{ABC}{ABE}{ACE}{BCE} ont permis
de générer les règles, d'abord avec un conséquent à un item figurant dans le tableau 2.4.2.2 (b).
Itemset
ABC
ABE
ACE
BCE
N° Règle
13
14
15
16
17
18
19
20
21
22
23
24
Règle
ABC
ACB
BCA
ABE
AEB
BEA
ACE
AEC
CEA
BCE
BEC
CEB
Confiance
2/2=100%
2/3=66,66%
2/4=50%
2/2=100%
2/2=100%
2/5=40%
2/3=66,66%
2/2=100%
2/4=50%
4/4=100%
4/5=80%
4/4=100%
Support
2/6=33,33%
2/6=33,33%
2/6=33,33%
2/6=33,33%
2/6=33,33%
2/6=33,33%
2/6=33,33%
2/6=33,33%
2/6=33,33%
4/6=66,66%
4/6=66,66%
4/6=66,66%
Valide ?
Yes
Yes
No
Yes
Yes
No
Yes
Yes
No
Yes
Yes
Yes
Tableau 2.4.2.2(b) : Règles d’association à trois items et à un item comme conséquence.
-27-
Chapitre II
Data Mining et Règles d’association
Les conséquences de taille d'un item trouvées ayant constitué des règles valides seront ensuite
combinées pour constituer des conséquences de taille 2 pour les règles d'association du
tableau 2.4.2.2 (c).
Itemset
N° Règle
Règle
Confiance
Support
Valide ?
25
ABC
2/3=66,66%
2/6=33,33%
Yes
26
ABC
CAB
2/5=33,33%
2/6=33,33%
No
27
BAC
2/5=33,33%
2/6=33,33%
No
28
ABE
2/3=66,66%
2/6=33,33%
Yes
29
ABE
EAB
2/5=33,33%
2/6=33,33%
No
30
BEA
2/5=33,33%
2/6=33,33%
No
31
AEC
2/3=66,66%
2/6=33,33%
Yes
32
ACE
EAC
2/5=33,33%
2/6=33,33%
No
33
CEA
2/5=33,33%
2/6=33,33%
No
34
BEC
4/5=80%
4/6=66,66%
Yes
35
BCE
EBC
4/5=80%
4/6=66,66%
Yes
36
CEB
4/5=80%
4/6=66,66%
Yes
Tableau 2.4.2.2(c): Règles d’association à trois items et à deux items comme conséquence.
L’itemset fréquent de taille 4 {ABCE} a permis de générer les règles d’association figurant
dans le tableau 2.4.2.2 (d).
Itemset
N° Règle
Règle
Confiance
Support
Valide?
37
ABCE
2/3=66,66%
2/6=33,33%
Yes
38
CABE
2/5=40%
2/6=33,33%
No
ABCE
39
BACE
2/5=40%
2/6=33,33%
No
40
EABC
2/5=40%
2/6=33,33%
No
41
ABCE
2/2=100%
2/6=33,33%
Yes
42
ACBE
2/3=66,66%
2/6=33,33%
Yes
43
AEBC
2/2=100%
2/6=33,33%
Yes
ABCE
44
BCAE
2/4=50%
2/6=33,33%
No
45
BEAC
2/5=40%
2/6=33,33%
No
46
CEAB
2/4=50%
2/6=33,33%
No
47
ABCE
2/2=100%
2/6=33,33%
Yes
48
ACEB
2/2=100%
2/6=33,33%
Yes
ABCE
49
BCEA
2/4=50%
2/6=33,33%
No
50
ABEC
2/2=100%
2/6=33,33%
Yes
Tableau 2.4.2.2(d): Règles d’association à quatre items.
2.4.3. Discussion
L’algorithme générique APRIORI a été comme solution pour minimiser le nombre de
candidats générés à chaque étape en utilisant les propriétés du sous-ensemble et sur-ensemble.
Il effectue un nombre de parcours égal à la taille du plus long itemset fréquent trouvé. De plus,
il considère à chaque itération beaucoup d’itemsets candidats. Par exemple, si le nombre de 1 itemsets fréquents est de 104, alors APRIORI va générer plus de 107 itemsets candidats de taille
2, et calculera leurs fréquences.
Ces deux points constituent deux facteurs importants de mesure de l’efficacité des
algorithmes d’extraction des itemsets fréquents.
D’une part, l’importance du nombre de parcours de la base de transactions est tout à fait
évidente, vu que cela implique des opérations coûteuses d’entrées/sorties sur des bases de
données volumineuses résidant sur disque.
D’autre part, un grand nombre de candidats considérés durant le processus engendre un temps
de calcul important étant donné que tout l’algorithme est basé sur la manipulation de ces
candidats pour déterminer ceux qui sont fréquents de ceux qui ne le sont pas.
-28-
Chapitre II
Data Mining et Règles d’association
En résumé, cet algorithme est facile à implémenter mais il reste loin de l’idéal.
Ceci justifie que de nombreux travaux ont porté sur la recherche des itemsets fréquents, et
que nous en dressons un état de l’art dans le reste de ce chapitre.
2.5. Différentes approches d’extraction des motifs
fréquents
Plusieurs travaux ont porté sur la recherche des itemsets fréquents dont l’objectif est d’une part
la réduction du temps d’extraction des règles d’association, et d’autre part la pertinence et
l’utilité des règles extraites.
Dans ce qui suit, nous présentons une synthèse sur les approches les plus utilisées dans la
recherche des itemsets fréquents avec leurs algorithmes.
2.5.1. Motifs Fréquents
Comme c’est déjà vu, l’algorithme APRIORI est le pionnier de recherche de motifs fréquents.
Cependant, celui-ci présente deux inconvénients majeurs: le nombre élevé de candidats généré
durant chaque itération et le problème du parcours coûteux de la base de données pour chaque
itération, ce qui augmente la complexité.
Plusieurs améliorations de l’algorithme APRIORI ont été proposées pour optimisation. L’idée
principale consiste à réduire le nombre de passages (passe) dans la base de données et le nombre
de candidats ainsi généré. Parmi ces algorithmes, on trouve Apriori-TID, DIC, partitionnement,
Sampling, FP-growth, …etc.
Dans le point 2.4.2, on a présenté en détail le principe de l’algorithme APRIORI illustré avec un
exemple. Dans ce qui on va présenter quelques autres algorithmes variantes d’APRIORI :
Apriori-TID, DIC, et FP-growth.
2.5.1.1. APRIORI-TID
Afin de réduire le nombre de parcours important de la base de transactions d'APRIORI, les
mêmes auteurs d'APRIORI [AS & al-94] ont proposé l'algorithme APRIORI-TID (Apriori
Transaction Identifier). Cette variante génère les candidats en utilisant la même stratégie, mais
elle diffère dans le calcul du support des itemsets candidats.
L’algorithme APRIORI-TID diminue la taille de la base de données progressivement. Au lieu de
faire une passe lors de l’examen de chaque niveau du treillis des itemsets, toute la base de
données est mise en mémoire, et pour chaque niveau du treillis, les transactions sont représentées
par les k itemsets qu’elle contient.
L’algorithme utilise un ensemble une liste Ck des itemsets candidats contenus dans la transaction
identifiée par TID. Chaque élément de Ck est de la forme (TID,{ck}) où {ck} est la liste des
identifiants des itemsets de taille k. Le support des itemsets de la liste est égal au nombre
d'apparitions de chaque itemset dans cette la liste C’k :

Pour k = 1, la liste C’k correspond à la base de transactions, les éléments de chaque
transaction sont donc des singletons représentant les 1-itemsets candidats.

Pour k > 1, la liste Ck est construite en utilisant Ck-1 et Ck .Un élément de C’k est constitué
d'un identificateur TID d'un élément de Ck-1 et de la liste des k-itemsets Ck contenus dans la
transaction TID. Si cette liste est vide, cet élément est supprimé.
Lors des premières itérations, Ck peut être très grand ce qui cause un problème de stockage des
listes. En contrepartie, plus k devient grand, le nombre d'éléments de Ck peut devenir plus petit
par rapport au nombre de transactions dans D. L'intérêt de Ck est que la base de transactions D
n'est plus utilisée pour calculer le support des k-itemsets.
Voici le déroulement de cet algorithme pour notre contexte du tableau 2.3.2.1.
-29-
Chapitre II
Data Mining et Règles d’association
Figure 2.5.1.1 - Extraction des itemsets fréquent du contexte D avec APRIORI-TID (supmin=2/6)
2.5.1.2. DIC (Dynamique Itemset Counting)
Cet algorithme proposé par Brin et al. permet de réduire le nombre de parcours de la base de
données en partitionnant cette base en blocs de transactions de taille M (appelé taille de fenêtre).
Durant le calcul des supports des k-itemsets, après le parcours d'une partition de taille M, on
vérifie les k-itemsets candidats qui ont déjà atteint le support minimum, et on les utilise pour
générer des candidats de taille (k+1), puis on commence à compter leurs supports.
Ainsi le support de candidats de tailles différentes est calculé durant les mêmes parcours de D.
En contrepartie de la diminution du nombre de balayages de la base de données, DIC considère
des itemsets candidats de tailles différentes simultanément. Ceci pose le problème de stockage
des itemsets candidats traités simultanément et du coût de calcul des supports des candidats qui
est plus important que pour Apriori.
2.5.1.3. FP-growth
L’algorithme FP-growth (Frequent Pattern growth) proposé par Han et al. , permet d’éviter les
parcours répétés du contexte, et d'extraire des itemsets fréquents sans génération de candidats.
La méthode consiste d'abord à compresser la base de données en une structure compacte appelée
FPtree (Frequent Pattern tree), puis à diviser cette base ainsi compressée en sous projections de
la base de données appelées bases conditionnelles. Chacune de ces projections est associée à un
item fréquent. L'extraction des itemsets fréquents se fera sur chacune des projections séparément.
L’exécution de cet algorithme se fait en deux étapes :
-30-
Chapitre II
Data Mining et Règles d’association

Etape de construction de la structure FP-tree.
Un FP-tree est une structure compacte constituée d'un :
- Arbre où chaque noeud (sauf la racine) contient l'item, sa fréquence, et le noeud suivant.
- Index : contient la liste des items fréquents. A chaque item est associé un pointeur
indiquant le premier noeud de l'arbre contenant cet item.
La construction de cet arbre nécessite deux parcours de la base de données.
Le 1er parcours permet de déterminer pour un support minimum donné, les items fréquents et
qui seront triés par ordre décroissant de support.
Le 2ème parcours permet de créer une branche pour chaque transaction. Les transactions ayant
un même préfixe partageront le même début d'une branche de l'arbre, ainsi deux transactions
identiques seront représentées par une seule et même branche.
Ceci fait du FP-tree une structure compacte pour représenter les bases transactionnelles.
 Etape d’exploration de la structure FP-tree.
Cette étape permet de trouver les itemset fréquents où les bases conditionnelles sont
construites, en utilisant un algorithme de recherche dans l’arbre construit.
Bien que FP-growth soit un algorithme intéressant, il le devient beaucoup moins du fait de la
génération d’une forte densité d’itemsets fréquents.
2.5.2. Motifs fréquents maximaux
Les algorithmes tels que APRIORI et ses dérivés ont été développés pour des bases de données
transactionnelles de ventes et testés principalement sur des jeux de données synthétiques.
Ces données sont éparses ce qui donne un temps d'exécution relativement faible. Dans ce type de
bases, les plus longs itemsets fréquents ne contiennent qu'un nombre limité d'items, par rapport
au nombre de transactions. Mais les performances de ces algorithmes se dégradent beaucoup,
lorsqu'il s'agit de bases denses, où les itemsets fréquents peuvent être très longs.
Pour cela une autre alternative a été proposée afin d’extraire les itemsets les plus longs parmi les
itemsets fréquents. C’est l’approche des itemsets fréquents maximaux. Les itemsets maximaux
sont des itemsets fréquents dont tous les sur-ensembles ne sont pas fréquents.
Cette approche consiste à extraire l'ensemble des itemsets fréquents maximaux FM, ensuite à
calculer des supports des sous-ensembles de FM en effectuant un parcours de la base de données.
Donc, lorsqu'un itemset fréquent maximal est identifié tous ses sous-ensembles n'ont plus à être
considérés ce qui réduit le nombre d'itemsets candidats générés et donc le temps de calcul.
Les algorithmes basés sur cette approche permettent de réduire l’espace de recherche et a fortiori,
le nombre de candidats considérés. Ils permettent également de diminuer le nombre de parcours
de la base de données pendant l’extraction. Généralement, ils réalisent simultanément un
parcours de bas en haut (recherche par niveaux) et de haut en bas (afin d'identifier rapidement les
maximaux de grandes tailles) dans le treillis des itemsets.
Plusieurs algorithmes ont été proposés dans cette approche, mais le pionnier est Max-Miner.
D’autres algorithmes existent tels que Pincer Search, MaxEclat, MaxClique, GenMax, …etc.
Mais tous ceux adoptent le même principe que Max-Miner avec des optimisations et des
améliorations proposées (par exemple, FPmax [PZ-03] utilise FP-tree dont il tire l’avantage du
parcours de la base en deux passes).
2.5.3. Motifs fréquents fermés
Un itemset est dit fermé s'il n'a aucun sur-ensemble avec le même support. L'idée proposée par
Pasquier et al. consiste à extraire un sous-ensemble d'itemsets fréquents « fermés » qui
constituent « un ensemble générateur non redondant pour tous les itemsets fréquents et leurs
supports ».
La notion d’itemset fermé est très intéressante, car ces itemsets fermés sont des représentations
condensées de tous les itemsets fréquents. Ainsi, à partir des itemsets fermés, on peut déduire le
support de n'importe quel itemset fréquent sans recourir au parcours de la base de transactions.
-31-
Chapitre II
Data Mining et Règles d’association
Cette approche est très utile dans le cas ou le support est élevé (voir l’exemple ci-dessous).
Considérons un exemple d'une base transactionnelle très simple.
TID
Items
1
X1, X2, …, X100
2
X1, X2,…, X50
Pour un support minimum =1, le processus d'extraction des itemsets fréquents génère 2100-1 soit
près de 1030 itemsets fréquents, et par conséquent un très grand nombre de règles d'association.
Par l’emploi des itemsets fermés dans cet exemple, les seuls itemsets qui seront générés sont les
itemsets fréquents fermés : {x1, x2, …, x100} et {x1, x2,…, x50}
La seule règle d'association générée est : X1, X2,…, X50  X1, X2, …, X100
Toutes les autres règles possibles peuvent être dérivées facilement à partir de cette règle.
Cette approche permet non seulement d'améliorer l'efficacité de l'extraction mais aussi de réduire
considérablement le nombre de règles redondantes qui submergent les règles intéressantes.
Une variété d’algorithmes ont été proposés pour l'extraction des itemsets fermés, mais
l’algorithme pionnier est Close. D’autres algorithmes existent tels que : A-close, Charm,
FPClose, Closet, CloMaint [K-07]…etc. Ils proposent une variété d’améliorations et optimisation
et utilisent des structures de données plus avancées.
2.6. Conclusion
Nous venons de présenter dans ce chapitre les fondements de la recherche de règles d’association
en citant également quelques domaines dans lesquels les règles d’association sont appliquées.
Dans tous ces domaines, la recherche de règles a obtenu des résultats intéressants et exploitables.
Ainsi nous avons cité le processus de l’extraction des règles, nous avons conclu que l’étape de
recherche des itemsets fréquents constitue une phase importante dans ce processus du fait.
Nous avons fait un tour d’horizon sur les approches les plus utilisées dans la recherche des
motifs fréquents. L’objectif de ces approches est de minimiser le parcours de la base de données
ainsi que le nombre de candidats générés. Ce sont deux facteurs principaux de l’efficacité de ces
algorithmes. L’importance du nombre de balayages réalisés est liée au coût des opérations
d’entrée/sortie. L’importance du nombre des itemsets candidats vient du fait que les opérations
portant sur ces derniers constituent la majeure partie du temps de calcul de l’algorithme.
La première approche représentée par l’algorithme pionnier APRIORI et ses variantes a donné
des résultats raisonnables dans le domaine de ventes de supermarchés.
La deuxième approche qui se base sur la recherche des itemsets fréquents maximaux permet de
donner des bons résultats dans les bases de données denses, ce qui n’est pas le cas dans les bases
éparses où des calculs vont être effectués en plus. Ainsi dans cette approche un sous-ensemble
compact de règles associatives est généré, ce qui est nettement inférieur à la première approche,
mais présente la particularité d’être incomplet (perte d’information).
La troisième approche basée sur la découverte d’itemsets fermés, issues de la théorie des
concepts formels, proposent de ne générer qu’un sous-ensemble compact et générique de règles
associatives. Ce sous-ensemble générique de règles a l’avantage d’être complet du point de vue
de la connaissance (pas de perte), tout en étant réduit du point de vue de la taille.
Le problème de la détermination de l'approche et donc de l'algorithme qui sera le plus efficace
selon les données utilisées est complexe. L’algorithme APRIORI a présenté une solution pour
beaucoup cas d’étude, néanmoins le champ d’application peut nécessiter un choix différent.
Nous verrons dans le chapitre 5 la nature des données du domaine de la production SH/AVAL, et
le type des items dedans. C’est cette nature de données qui détermine le choix de l’approche à
adopter, puis l’algorithme et la structure la plus adaptée au cas d’étude. Ce choix ne se fait sans
passer par l’étude de l’ontologie (chapitre 3) qui précise l’intérêt ciblé par les utilisateurs finaux
vis-à-vis le processus d’extraction. L’intégration de l’ontologie et le schéma de règle joue un rôle
décisif dans le choix de l’approche et l’algorithme à adopter.
-32-
Les Ontologies
1. Introduction
2. Définition d’une ontologie
3. Graphe d’ontologie
4. Objectifs d’une ontologie
5. Les domaines d’applications des ontologies
6. Cycle de vie d’une ontologie
7. Critères d'évaluation d'une ontologie
8. Langages des ontologies
9. Outils de travail avec des ontologies
9. 1 L’outil Protégé
9. 2 L’éditeur Protégé-OWL
10. Conclusion
Chapitre III
Les Ontologies
Les Ontologies
1. Introduction
Dans le chapitre précédent, nous avons passé en bref les différentes notions, concepts et
techniques du Data Mining, avec un plus de détail sur la technique des règles d’association et
ses approches. Ces méthodologies et approches qui ont été élaborées ou en cours d’étude par
beaucoup de chercheurs, ont tous pour objectif de mettre en évidence les bonnes techniques
pour extraire et bénéficier des connaissances utiles tout en facilitant l’emploi et le traitement
des informations obtenues.
Pour les systèmes d’information des entreprises, l’objectif principal est d’extraire à partir de
leurs bases de données, des connaissances vitales et utiles pour un emploi éventuel dans leur
système d’aide à la décision (Business intelligence).
Après avoir bien choisi puis appliquer la méthode et la technique appropriée aux bases de
données et à la nature du champ d’application étudié, un volume important d’informations est
généré. Le traitement et l’analyse de ce volume d’informations deviennent un vrai problème
à résoudre, car d’une part le volume est important pour l’analyser manuellement, et d’autre
part il nécessite l’intervention d’un expert du domaine pour le choix des informations
intéressantes et utiles.
Comme exemple, la technique des règles d’association permet de détecter tous les liens et
corrélations possibles entre les données. C’est une technique non supervisée qui peut être
descriptive ou prédictive, d’où le nombre très important des règles générées. Certaines de ces
règles peuvent être intéressantes, mais certaines autres peuvent être triviales ou inutiles car
elles proviennent de la particularité de l'ensemble d'apprentissage.
Le nombre important des règles générées nécessite un post-traitement pour choisir
manuellement celles qui sont utiles. Ceci nécessite beaucoup de temps en plus de l’expertise
demandée. L’utilisateur final se retrouve noyé dans ce nombre important de règles, et donc
peut ne pas bénéficier des résultats obtenues.
Les dernières recherches ont proposé le concept des ontologies pour compléter le processus
du Data Mining, et en servir comme post-traitement pour une fouille ciblé des informations,
tout en se basant sur les connaissances acquises des experts dans les différents domaines de
métiers.
L’emploi des ontologies est devenu ainsi une solution efficace pour résoudre plusieurs
problématiques dans le web sémantique, le commerce électronique (E-commerce),
l’intelligence artificielle, ainsi que la fouille de données.
Dans ce chapitre, nous allons présenter la notion d’ontologie, ses objectifs, les langages et les
outils utilisés ainsi que les concepts liés.
-33-
Chapitre III
Les Ontologies
2. Définition d’une ontologie
Il existe plusieurs définitions d’ontologies, nous citons ici certaines d’elles.
Défintion 1: [FG & al-10]
Une ontologie est un ensemble de connaissances statiques concernant un domaine qui peut
être utilisé efficacement par les agents (personne ou agent virtuel).
Une ontologie est une spécification explicite et formelle d’une conceptualisation partagée.
Défintion 2 : [WP]
En philosophie, le mot grec ontologie est l'étude de l'être en tant qu'être, c'est-à-dire l'étude
des propriétés générales de ce qui existe.
Par analogie, le terme est repris en informatique et en science de l'information, où une
ontologie est l'ensemble structuré des termes et concepts représentant le sens d'un champ
d'informations, que ce soit par les métadonnées d'un espace de noms, ou les éléments d'un
domaine de connaissances. L'ontologie constitue en soi un modèle de données représentatif
d'un ensemble de concepts dans un domaine, ainsi que les relations entre ces concepts. Elle
est employée pour raisonner à propos des objets du domaine concerné.
Définition 3 : (choisie)
Une ontologie représente les connaissances d’un expert pour un domaine donné.
Une ontologie permet donc de définir une base conceptuelle concise pour le partage des
connaissances des experts. Cette base conçue offre aux utilisateurs la possibilité de
comprendre, définir, structurer et standardiser la sémantique des termes et concepts
représentés dans les données du domaine traité.
L’acquisition des connaissances d’un domaine pour construire une ontologie n’est pas une
tache facile, elle est très coûteuse en temps et d’effort. C’est pour cela que plusieurs
méthodes et techniques ont été développées pour réduire cet effort.
Pour une entreprise, l’ontologie représente sa mémoire pour les domaines d’intérêts, car elle
définit un vocabulaire de référence pour cette entreprise.
Définition 4 : (formelle) [JF & al-07]
Soit C un ensemble de concepts, T un ensemble de termes, Rc un ensemble de relations entre
concepts, Rt un ensemble de relations entre termes.
L’ontologie O est définie par le tuple O = {C, T ,Rc, Rt } tel que :
Rc : C × C est la relation d’ordre partiel sur C définissant la hiérarchie entre les concepts,
Rc (c1, c2) signifie c1 est plus général que c2.
Rt: C  T est la fonction d’association d’un terme préféré à un concept.
Pour désigner un concept de l’ontologie, on peut utiliser l’un de ses termes associés. Ce
terme sera alors le terme préféré de ce concept.
-34-
Chapitre III
Les Ontologies
3. Graphe d’ontologie
D’une façon formelle, l’ontologie est un ensemble de concepts reliés entre eux par des
relations de subsomption ou de conceptualisation : le concept parent est une généralisation
du concept fils englobé, tandis que les concepts fils sont des spécialisations de leur concept
parent. L’hiérarchie ainsi obtenue est une représentation conceptuelle des connaissances.
Les concepts sont organisés dans un graphe dont les relations peuvent être :

des relations sémantiques

des relations de subsomption (inclusion).
Les ontologies sont employées comme une forme de représentation de la connaissance au sujet
d'un monde ou d'une certaine partie de ce monde. Les ontologies décrivent généralement :

Individus : les objets de base.

Classes : ensembles, collections, ou types d'objets.

Attributs : propriétés, fonctionnalités, caractéristiques ou paramètres que les objets
peuvent posséder et partager.

Relations : les liens que les objets peuvent avoir entre eux.

Événements : changements subis par des attributs ou des relations.
4. Objectifs d’une ontologie
Le but d'une ontologie est de définir un vocabulaire pour décrire un domaine, si possible de
manière complète ; ni plus, ni moins. Contrairement aux bases de connaissances par exemple,
on n'attend pas d'une ontologie qu'elle soit en mesure de fournir systématiquement une
réponse à une question arbitraire sur le domaine. Une ontologie est la théorie la plus faible
couvrant un domaine ; elle ne définit que les termes nécessaires pour partager la
connaissance liée à ce domaine.
Donc si on résume, les principaux objectifs d’une ontologie sont :
-
Modéliser un ensemble de connaissances des experts du domaine donné qui peut être réel
ou imaginaire, cette modélisation sert pour une utilisation future par d’autres personnes.
-
Fournir un vocabulaire commun pour les chercheurs qui ont besoin de partager les
informations dans un domaine.
-
Offrir à l’utilisateur la possibilité de comprendre, définir, structurer et standardiser la
sémantique des termes et concepts représentés dans les domaines traités.
-
Fournir un moyen efficace pour filtrer toute nouvelle connaissance à vérifier ou à valider
dans les domaines d’intérêts.
Ce dernier point est important, car il fait appel à l’ontologie dans le processus du datamining
pour sélectionner et filtrer les connaissances collectées (règles associations, patterns, etc.)
intéressantes, vu le volume important des données générés du processus du datamining.
-35-
Chapitre III
Les Ontologies
5. Les domaines d’applications des ontologies
Les ontologies sont employées dans

L'intelligence Artificielle.

Le Web sémantique.

Le génie logiciel.

L'informatique Biomédicale.

L'architecture du système d'information.

Le domaine du Data Mining et gestion des connaissances (Knowledge Management).
6. Cycle de vie d’une ontologie
[B-04]
La construction d’une ontologie nécessite tout d’abord la définition des objectifs et utilisation de
scénarios identiques à ceux utilisés en génie logiciel, puis la collecte des données par des
entretiens informels et structurés avec les experts. Ensuite, l’étude sémantique pour normaliser
les termes et éviter les définitions circulaires, ceci permet de résoudre les ambiguïtés. Par la
suite, viendra la création des concepts et d’une taxonomie (relation entre ces concepts) qui est le
cœur du travail réel. En fin la formalisation ciblée.
Plusieurs propositions ont été faites pour modéliser le processus d’évolution d’une ontologie.
Voici une proposition (faite par l’équipe ACACIA de l’INRIA) comportant les étapes
suivantes :
-
Planification
-
Spécification
-
Acquisition des
connaissances
-
Conceptualisation
-
Formalisation
-
Intégration
-
Implémentation
-
Evaluation et
maintenance
Figure1- Cycle de vie d’une ontologie
Il est à noter que :
 si une ontologie est devenue importante, son processus de création doit être considéré
comme étant un projet séparé.
 une ontologie appliquée à un domaine qui évolue, est appelée aussi à évoluer et sa
maintenance devient une tâche vitale [UG-96]. Ceci est nécessaire pour que
l’ontologie soit toujours à jour.
-36-
Chapitre III
Les Ontologies
Certains chercheurs proposent même l’utilisation des techniques du Data Mining pour enrichir
les ontologies. Ceci permet dans les textes (web, blogs, …) de mettre en évidence des schéma
fréquents sous forme de motifs séquentiels et détecter les relations sémantiques qui peuvent
exister entre eux [JF & al-07].
Cette technique est très bénéfique pour la construction des moteurs de recherche.
C’est exactement l’inverse de notre travail qui consiste à utiliser les ontologies dans le Data
Mining.
L’enrichissement d’ontologie suit le processus général suivant [SA-09]:
Figure2- Le processus général de mise à jour d’une ontologie
7. Critères d'évaluation d'une ontologie
D'après Thomas Gruber [G-93], cinq critères permettent de mettre en évidence des aspects
importants d'une ontologie :

La clarté : La définition d'un concept doit faire passer le sens voulu du terme, de
manière aussi objective que possible (indépendante du contexte). Une définition doit
de plus être complète (c’est-à-dire définie par des conditions à la fois nécessaires et
suffisantes) et documentée en langage naturel.

La cohérence : Rien qui ne puisse être inféré de l'ontologie ne doit entrer en
contradiction avec les définitions des concepts (y compris celles qui sont exprimées
en langage naturel).

L'extensibilité : Les extensions qui pourront être ajoutées à l'ontologie doivent être
anticipées. Il doit être possible d'ajouter de nouveaux concepts sans avoir à toucher
aux fondations de l'ontologie.
-37-
Chapitre III

Les Ontologies
Une déformation d'encodage minimale : Une déformation d'encodage a lieu lorsque
la spécification influe la conceptualisation (un concept donné peut être plus simple à
définir d'une certaine façon pour un langage d'ontologie donné, bien que cette
définition ne corresponde pas exactement au sens initial). Ces déformations doivent
être évitées autant que possible.
8. Langages des ontologies
Le langage de spécification est l'élément central sur lequel repose l'ontologie.
La plupart de ces langages se basent sur la logique du premier ordre, et représentent donc les
connaissances sous forme d'assertion (sujet, prédicat, objet). Parmi les formalismes les plus
employés se basant sur la logique des prédicats, on retrouve des langages comme N3 ou NTriple. On peut aussi évoquer le langage DEF-*.
Bien que développé pour la représentation des vocabulaires contrôlés et structurés (thésaurus),
SKOS peut être utilisé pour élaborer et gérer des ontologies légères multilingues.
Par ailleurs, dans le cadre de ses travaux sur le Web sémantique, le W3C (World Wide Web
Consortium ) a mis en place en 2002 un groupe de travail dédié au développement de langages
standards pour modéliser des ontologies utilisables et échangeables sur le Web. S'inspirant de
langages précédents comme DAML+OIL et des fondements théoriques des logiques de
description, ce groupe a publié en 2004 une recommandation définissant le langage OWL (Web
Ontology Language), fondé sur le standard RDF et en spécifiant une syntaxe XML. Plus
expressif que son prédécesseur RDFS, OWL a rapidement pris une place prépondérante dans le
paysage des ontologies et est désormais, de facto, le standard le plus utilisé.
Le langage OWL est le dernier standard développé pour les langages d’ontologie. Une ontologie
OWL peut contenir des descriptions de classes, propriétés et leurs instances. La sémantique
formelle d’OWL pour une telle ontologie, spécifie comment se déroule la logique de ses
conséquences. Les faits ne sont pas présentés littéralement dans cette description mais ils sont
déduits par les sémantiques.
Il existe dans la littérature, des outils qui permet de faire la transition directe entre le formalisme
bases de données et OWL par l’import des structures et données (tables) à partir des bases de
données relationnelles et les transformes en concepts OWL. Nous citons comme exemple :
DataMaster (plug-in de Protégé créé par Nyulas 2007), et KAON2 (développé par l’université de
Karlsruhe), RDBToOnto (développé en 2008 dans le cadre du projet européen TAO
Transitioning Applications to Ontologies). [KN & al-07]
9. Outils de travail avec des ontologies
Les éditeurs d'ontologie suivants sont gratuits et téléchargeables

Protégé est le plus connu et le plus utilisé des éditeurs d'ontologie. Un plus de détail sur
Protégé est présenté par la suite.

SWOOP est un éditeur d'ontologie développé par l'Université du Maryland dans le cadre
du projet MINDSWAP. Contrairement à Protégé, il a été développé de façon native sur
les standards RDF et OWL, qu'il prend en charge dans leurs différentes syntaxes (pas
seulement XML). C'est une application plus légère que Protégé, moins évoluée en termes
d'interface, mais qui intègre aussi des outils de raisonnement.

KMgen est un éditeur d'ontologie pour le langage KM (Knowledge Machine).
-38-
Chapitre III
Les Ontologies
Avec l'émergence du marché des technologies du Web sémantique, on peut noter l'apparition
depuis 2005 d'outils logiciels proposés par des éditeurs commerciaux. On peut citer:

SemanticWorks fait partie de la suite d'outils XML développée par Altova. Il supporte le
langage OWL à travers sa syntaxe XML.

TopBraid Composer est développé par TopQuadrant. Son interface et ses
fonctionnalités ressemblent beaucoup à celles de Protégé (le développeur principal de
TopBraid étant l'ancien développeur des extensions OWL de Protégé).

Ontology Craft Workbench développé par l'équipe Condillac "Ingénierie des
Connaissances" de l'Université de Savoie. Les ontologies sont disponibles aux formats
XML et OWL. OCW est utilisé par la société Ontologia.
Il existe d'autre part des outils informatiques permettant de construire une ontologie à partir d'un
corpus de textes. Ces outils parcourent le texte à la recherche de termes récurrents ou définis par
l'utilisateur, puis analysent la manière dont ces termes sont mis en relation dans le texte (par la
grammaire, et par les concepts qu'ils recouvrent et dont une définition peut être trouvée dans un
lexique fourni par l'utilisateur). Le résultat est une ontologie qui représente la connaissance
globale que contient le corpus de texte sur le domaine d'application qu'il couvre.
Le projet WordNet est l'exemple le plus important donné de ces outils.
9.1 L’outil Protégé [PS]
Protégé est un éditeur d’environnement intégré (EDI), gratuit et open-source, développé par
l'université Stanford, il est devenu actuellement l’outil le plus utilisé des éditeurs d'ontologie et
framework des connaisances.
Il a été évolué depuis ses premières versions (Protégé-2000) pour intégrer à partir les standards
du Web sémantique et notamment OWL. Il offre de nombreux composants optionnels :
raisonneurs, interfaces graphiques
La plateforme Protégé supporte deux façons principales pour modéliser les ontologies en
utilisant les éditeurs Protégé-Frames et Protégé-OWL. Les ontologies générées de Protégé
peuvent être exportées sous plusieurs formats tels que RDF(S), OWL, et schémas XML.
Protégé est basé sur langage Java, il est extensible, et fourni des environnent plug-and--play qui
le rend flexible et donc bien adapté au prototypage et le développement rapide d’application
(RAD).
Protégé est supporté par une forte communauté de développeurs et académiques, gouvernements
et utilisateurs, qui utilisent Protégé pour leurs solutions de connaissance dans les différents
domaines tels que la biomédicale, la collecte intelligence, et la modélisation.
Il existe actuellement plusieurs versions de Protégé, les plus utilisées sont :
-
Les séries Protégé 3.x développé pendant 3 années.
-
Protégé 4.0 (dernière release 4.0.2 apparu en Juin 2009).
Protégé peut être installé dans toutes les plateforme système : MacOSX, Microsoft Windows
(32/64 bits), Linux, Unix, Sun Solaris, HPUX, IBM-AIX, ou toute autre plateforme supportant
Java.
-39-
Chapitre III
Les Ontologies
9.2 L’éditeur protégé-owl [PS]
L’éditeur Protégé-OWL est une extension de Protégé qui supporte le langage OWL. Cet éditeur
permet aux utilisateurs de :





Charger et sauvegarder des ontologies OWL et RDF.
Editer et visualiser les classes, propriétés, et les règles SWRL.
Définir les caractéristiques logiques de class par les expressions OWL.
Exécuter le raisonneur (reasoner) tel que le classificateur de description logique.
Editer les individus OWL pour un marquage Web Sémantique.
L'architecture flexible de Protégé-OWL l’a rendu facile à configurer, extensible et intégré avec
d’autres outils. Il a une API Java open-source pour le développement des composants d’interface
utilisateur ou des services Web sémantique.
10. Conclusion
Les ontologies permettent de définir une base conceptuelle concise pour le partage de
connaissances expertes. Elles offrent la possibilité de définir, structurer et standardiser la
sémantique des termes et concepts d’un domaine d’intérêt. Les ontologies sont largement
utilisées afin de fournir des annotations sémantiques de n’importe quelle source d’information,
ce qui les rend très efficace dans le domaine du web sémantique, les systèmes d’informations
médicales et la fouille de données.
Les règles d’association générées dans le processus du Data Mining fournissent un grand nombre
de règles, l’analyse manuelle de cet ensemble est très fastidieux, de ce fait l’appel à l’ontologie
dans cette étape est très bénéfique afin d’effectuer une analyse automatique en se servant des
connaissances incluses dans l’ontologie.
Dans le chapitre suivant, nous allons voir les différentes approches qui existent pour intégrer les
connaissances (y compris les ontologies) dans le processus du Data Mining. Une proposition sera
faite pour faire appel à l’ontologie construite, et pour mieux améliorer le processus de
l’extraction jusqu’à l’étape d’interprétation.
-40-
Etat de l’art des approches
d’emploi des ontologies dans le
processus du Data Mining
1. Introduction
2. Différentes approches
2.1 Approches par mesures d'intérêt
2.2 Approches par étalons (templates)
2.3 Approches par taxonomie
2.4 Approches par ontologie et schémas de règles
3. Comparaison des approches
4. Présentation de l’approche proposée
4.1 Explication succincte
4.2 Explication schématisée (esquisse)
4.3 Explication formelle
4.4 Avantages de cette contribution
5. Conclusion
Chapitre IV
Etat de l’art des approches
Etat de l’art des approches
1. Introduction
Dans le chapitre précédent, nous avons vu la notion d’ontologies, leurs objectifs ainsi que les
langages et les outils liés à ce concept.
Il faut bien noter que le concept d’ontologie a été introduit dans le processus du Data Mining
dans le but d’impliquer les connaissances métier de l’utilisateur dans la phase de traitement
et d’analyse du volume d’informations généré par n’importe quelle technique du Data
Mining utilisée. Pour le cas de la technique des règles d’association, tous les liens et
corrélations possibles entre les données peuvent être détectés. Le nombre important des
règles générées contient forcément certaines règles intéressantes, et certaines autres inutiles
qui n’apportent aucun nouvel apprentissage.
Donc, les règles d’association générées nécessitent un traitement postérieur par l’utilisateur
final (expert du métier) afin de sélectionner les règles jugées utiles. Cette intervention
humaine est coûteuse en temps et en effort, comme c’est déjà expliqué avant.
Face à ce problème, plusieurs approches et recherches ont été proposées pour réduire l’effort
humain déployé dans la phase d’analyse et interprétation. Ces approches partent toutes du
principe de l’emploi automatique des connaissances des experts du domaine, mais différent
de la manière d’intégration de ces connaissances dans le processus du Data Mining.
Dans ce chapitre, nous allons présenter un état de l’art non exhaustif des travaux de
recherche et les différentes approches qui font intervenir les connaissances utilisateur dans le
processus du Data Mining. Enfin, nous présenterons notre contribution dans cette recherche et
notre apport dans le filtrage ciblé des règles utiles, ainsi que et les avantages obtenus lors du
traitement des différentes phases de la fouille de données.
2. Différentes approches
Plusieurs approches ont été développées ou en cours de développement dont l’objectif
principal est d’automatiser au maximum le post-traitement pour filtrer les règles d’association
utiles à partir de l’ensemble des règles générées. Cependant, il n’existe pas un moyen standard
pour modéliser les connaissances utilisateur, ceci reste lié au champ d’étude. Ci-dessous, nous
présentons certaines approches dans ce sens.
2.1 Approches par mesures d'intérêt
Pour palier de l’inconvénient du nombre très élevé des règles d’association générées,
certaines approches proposent de réduire le nombre de ces règles générées à l'aide des
mesures d'intérêt.
Les mesures d'intérêt représentent l’intérêt des utilisateurs finaux pour le domaine métier
choisi. En 1996, les deux auteurs Silbershatz et Tuzilin ont proposé de diviser les mesures
d'intérêt en deux grandes catégories : mesures objectives et subjectives. [B-04]
-41-
Chapitre IV
Etat de l’art des approches
- Les mesures objectives :
Les mesures objectives ne dépendent que de la structure des données (algorithmes).
Plusieurs travaux de synthèse ont été lancés pour la récapitulation de ces mesures objectives
développées. En plus ces travaux comparent aussi les définitions et les propriétés résultantes
de ces mesures, nous citons à titre exemple, Piatetsky-Shapiro [1991], Bayardo and Agrawal
[1999], Hilderman and Hamilton [2001], Tan et al. [2004], et Guillet and Hamilton [2007].
Toutefois ces mesures objectives n’offrent qu’une réponse partielle au post-traitement, car
elles se restreignent à l’évaluation des données.
- Les mesures subjectives :
En complément des mesures objectives, Les mesures subjectives intègrent explicitement les
connaissances de l’utilisateur ou du décideur (experts du domaine). Ces mesures ont pour
vocation de mesurer à quel point un modèle va intéresser l’utilisateur du système.
Les approches intégrant ces mesures se distinguent principalement selon les modèles de
représentation des connaissances utilisés. Plusieurs modèles sont proposés dans ce sens.
La difficulté au niveau de la mise au point de ces mesures est que l’intérêt d’un utilisateur du
système varie selon l’activité, l’utilisateur, le domaine et même dans le temps. De plus,
parfois les utilisateurs ne savent pas eux-mêmes ce qui peut les intéresser. Il est cependant
possible de discerner deux grandes catégories : les modèles qui vont surprendre les
utilisateurs (inattendus), et les modèles utilisables par les utilisateurs. Certains auteurs
proposent des méthodes pour les modèles inattendus et les modèles utilisables.
2.2 Approches par étalons (templates)
Certaines autres approches proposent l'utilisation d’étalons (en Anglais templates) pour
décrire la forme des règles intéressantes et inintéressantes. Ces approches proposent des
présentations pour modéliser les connaissances de l'utilisateur. Parmi ces modèles, Il existe
deux modèles répandus de représentation des croyances de l'utilisateur :

Les connaissances raisonnablement précises (Reasonably Precise Knowledge RPK)
Dans ce cas, l’utilisateur a une idée précise des choses (par exemple, si les revenus
mensuels sont supérieurs à 50000 DA alors le crédit est toujours accordé).
Les connaissances sont modélisées sous forme de règles en logique mathématique. Parmi
ces modèles, on trouve une version en logique floue des RPK développée par Liu et Hsu
[1996] pour sélectionner des règles de classification sur la base d’une comparaison
syntaxique. Un autre modèle de représentation plus exact des connaissances de
l'utilisateur, sous forme de règles, est réalisé par Padmanabhan et Tuzhuilin [1999] et
l'intérêt d’une règle est défini à travers la contradiction logique.

Les impressions générales (General Impressions GI)
Dans ce cas, l’utilisateur n’a pas de concept détaillé d’un domaine, mais il a quelques
vagues sentiments (par exemple, dans le domaine d’accord de crédit, on pourrait dire que
plus les revenus sont importants plus les chances d’accord sont élevées).
Les connaissances sont modélisées sous forme de règles d'association généralisées. Plus
récemment, Liu et al. [1997, 1999] détaillent la notion d'impressions générales utilisée
pour représenter les connaissances vagues de l'utilisateur sur le domaine de la base de
données traitée.
-42-
Chapitre IV
Etat de l’art des approches
2.3 Approches par taxonomie
Certaines approches proposent l'utilisation de classement (taxonomie) des connaissances
utilisateur.
En 1995, Srikant et Agrawal ont proposé de représenter les connaissances de l'utilisateur sous
forme de règles d'association généralisées, en intégrant des connaissances sous la forme
d’une taxonomie hiérarchique des attributs.
L’introduction de ces connaissances dans la structure des attributs permet de réduire le
nombre de règles produites. La façon de représenter hiérarchiquement la taxonomie des
attributs dépend de la structure et des règles généralisées.
Par la suite, d’autres auteurs ont développé cette taxonomie pour être une ontologie
représentant les connaissances d’un expert sur le domaine étudié (voir le point 2.4 suivant).
2.4 Approches par ontologie et schémas de règles
A partir des règles d'association généralisées et les taxonomies hiérarchiques des attributs,
certains auteurs ont développé des ontologies représentant plus les connaissances d’un expert
sur un domaine bien déterminé.
La notion d’ontologie (voir chapitre 4) a été introduite dans le Data Mining pour modéliser
les connaissances des experts du domaine d’étude.
Dans leur article intitulé «Vers la fouille de règles d’association guidée par des ontologies et
des schémas de règles» [MG & al-08], l’équipe LINA –COD propose une nouvelle approche
pour introduire les connaissances de l’utilisateur dans l’extraction de règles d’association
afin de réaliser un post-traitement pertinent. Ces connaissances sont modélisées à l’aide
d’une ontologie associée aux données traitées et de schémas de règles. Ces schémas de règles
permettent de définir une forme caractérisant les règles intéressantes à sélectionner parmi
l’ensemble des règles calculables.
Cette approche peut être schématisée par la figure suivante :
Une ontologie est associée à une base de données (transactions), où chaque concept est lié à un
attribut par une relation d’instanciation bien définie à l’avance (un concept est instancié par un
ou plusieurs attributs des transactions ). L’ensemble des règles d’association est généré par un
algorithme du Data Mining à partir des concepts d’ontologie ou les attributs de la base de
données. Ensuite les schémas de règles sont appliqués pour filtrer les règles ciblées.
La construction de l’ontologie et le choix des schémas de règles sont précédemment effectués par
l’expert du domaine d’étude.
-43-
Chapitre IV
Etat de l’art des approches
3. Comparaison des approches
La représentation des connaissances a évolué à partir des modèles proposés dans les étalons,
les mesures d'intérêts et taxonomies vers les ontologies.
Une brève étude comparative entre les différentes approches montre bien que l’approche
utilisant la notion d’ontologie est la plus complète. Les ontologies permettent de présenter les
connaissances utilisateur par un moyen plus complet du moment qu’elles définissent des
hiérarchies entre les concepts et des relations avec les attributs des bases de données ou du
Data Warehouse.
La notion d’ontologie a été introduite dans le Data Mining pour répondre au besoin de
modélisation des connaissances utilisateurs. Dans cette approche, l’emploi des schémas de
règles permet à l’utilisateur de préciser les modèles généraux dont il avait besoin comme
cibles des connaissances.
A noter que l’approche par des ontologies et des schémas de règles est en même temps une
recherche supervisée et non supervisée car :

d’un coté, cette approche est descriptive (donc non supervisée) puisque la technique
des règles d’association est employée (classification non supervisée), (voir chapitre 2
point 1.4).

d’autre coté, elle est prédictive (donc supervisée) puisqu’elle est dirigée par le choix
de l’utilisateur des schémas de règles qui vont servir pour bien cibler les règles
d’association utiles.
Néanmoins l’inconvénient majeur de cette technique réside dans la lenteur du posttraitement. Cette lenteur provient du fait que dés le départ toutes les données sont fouillées et
par conséquent toutes les règles d’association possibles sont générées. Ensuite le traitement
se poursuit afin de filtrer juste les règles d’association intéressantes qui respectent les
schémas de règles. Donc le parcours des données/ontologies (attributs et concepts) et la
génération des règles dans le traitement doivent se faire toujours pour toutes les données et
les concepts. Ceci représente un coût énorme si la base de données (contexte) devient assez
grande, en plus du temps perdu qui est consacré à générer et traiter les règles inutiles.
Pour palier à ces inconvénients, une contribution de notre part vient compléter l’approche
d’ontologie et schémas de règles dans le but d’améliorer le processus du traitement (voir cidessous).
4. Présentation de l’approche proposée
Notre proposition consiste à utiliser la représentation des connaissances par des ontologies et
des schémas de règles de la même manière que celle proposée dans l’approche par ontologie
et schémas de règles (voir point 2.4), avec une amélioration considérable du processus de
traitement du Data Mining.
Nous présentons ici une explication brève et autre formelle de notre démarche.
4.1 Explication succincte
Notre contribution dans cette approche est d’introduire dés le début le filtrage des attributs et
concepts utiles et la génération juste des règles d’association utiles, en se basant sur des
schémas de règles préalablement choisis par l’expert du domaine. Cette contribution est
détaillée ci-dessous :
Étant donné qu’il existe une base de données (ensemble de transactions) à fouiller avec
tous ses attributs, et une ontologie modélisant les connaissances sur ces données.
-44-
Chapitre IV
Etat de l’art des approches
Les schémas de règles sont utilisés au début, et avant de lancer toute fouille de
données. Les attributs et les concepts listés dans ces schémas de règles sont repérés.
Dans la base de données, on sélectionne juste les attributs listés dans les schémas de
règles. Sachant que les concepts qui figurent dans les schémas de règles sont
transformés en attributs car chaque concept est relié (instancié par) à un (ou plusieurs)
attribut(s) (voir chapitre 2). Donc le contexte à fouiller va se restreindre juste aux
attributs sélectionnés. Ceci est un grand avantage pour réduire le temps de recherche
des items fréquents.
Par la suite, la génération des règles d’association concerne juste celles qui respectent
les schémas de règles choisis. Ceci permet la réduction du temps lors de cette
génération ainsi que le nombre de règles obtenues.
Pour résumer, une explication sous forme de schéma est donnée ci-dessous.
4.2 Explication schématisée (esquisse)
(1)
(1)
Base de données
(Transactions)
Ontologie
(1)
Schémas de règles
Ai Cj  Ax Cy
Concepts: C1, C2,….Cn
Attributs : A1, A2, ….Am
(3)
(2)
Attributs/Concepts:
Ai, Cj, Ax, Cy
Attributs : Ai, Aj, Ax, Ay
(4)
Etapes :
(1) En entrée: Base de données
(attributs Ai), Ontologie
(concepts Ci), Schéma de
règle.
(2) Extraction des Concepts &
Base de données
(Transactions)
Attributs listés dans le
schéma de règle.
(3) Recherche les attributs
(5)
Items Fréquents Fi
(6)
Règles générées de la forme
Ai Cj  Ax Cy
correspondants aux concepts
listés dans le schéma de
règle.
(4) Filtrage dans la base de
données (projection) juste les
attributs obtenus dans l’étape
(3).
(5) Recherche des items
fréquents dans le contexte
restreint.
(6) Génération des règles qui
respectent le schéma de règle
en entrée.
-45-
Chapitre IV
Etat de l’art des approches
4.3 Explication formelle
Formellement, notre approche s'articule autour de éléments principaux suivants:
 Une base de données (contexte) D :
La base de données est constituée d’un ensemble de transactions T décrites à travers
un ensemble d’attributs (items) I. On considère que T= {T 1, T2,…Tn} est l’ensemble
de n transactions, et I = {I1, I2, ..., Im} est l’ensemble des m attributs.
 Une ontologie représentant des connaissances liées à la base de données :
Soit l’ontologie est un ensemble de concepts C = {C1, C2, ..., Co} et un ensemble de
relations/propriétés R = {R 1, R2, ..., Rr}. Les concepts sont hiérarchisés par une
relation de subsomption (C 1 et C2 sont en relation de subsomption si le concept C1
subsume le concept C2). Les relations entre les concepts forment une hiérarchie.
L'ontologie est connectée à la base de données, où chaque concept de l’ontologie est
instancié dans la base de données par un ou un sous ensemble de transactions. Ceci
constitue une relation Ii=Inst(Ci) entre les attributs (items Ii) de la base de données et
les concepts (Cj).
 Un ensemble de schémas de règles afin de sélectionner les règles intéressantes. Ces
schémas de règles portent sur les concepts de l’ontologie ou sur les attributs du
contexte. Chaque schéma de règles contient une prémisse et une conclusion, où
chacune d’elle est constituée de combinaison d’un (ou des) attribut(s) ou d’un (ou
des) concept(s) ou les deux à la fois.
Donc, un schéma de règles permet de définir des contraintes sur les attributs Ii et/ou
sur les concepts Ci décrits dans l’ontologie. Il peut être représenté sous la forme:
X1, X2, …Xi  Y1, Y2, …Yj , où chaque Xi et Yj sont des contraintes soit sur les
concepts (C), soit sur les attributs (I).
Une fois la base de données choisie et l’ontologie conçue, notre algorithme proposé pour
réaliser cette démarche consiste à :
-
Proposer (par une interface graphique) à l’utilisateur final de composer (à partir des
concepts C et attributs I) les schémas de règles qui conviennent plus à sa recherche.
NB : en principe les schémas de règles reposent juste sur les concepts, car ceux-ci
facilitent à l’utilisateur la compréhension des notions (les attributs sont plus liées aux
contraintes de la base de données). Dans notre cas, on prend le cas général en offrant
à l’utilisateur le choix les concepts et les attributs.
-
Repérer tous les attributs listés dans les schémas de règles ainsi que les attributs liés
aux concepts listés dans ces schémas de règles (par les relations d’instanciation).
Soit un schéma de règle : X 1, X2, …Xi  Y1, Y2, …Yj . Soit I’ la liste des items listés
dans ce schéma. Donc, I’ = { Ik, i=1 à max (i,j), avec : si Xi  I alors Ik=X i,
si Xi  C alors Ik=Inst(X i) , si Y j  I alors Ik=Y j, si Yj  C alors Ik=Inst(Y j) }.
-
On recherche le nouveau contexte D’ qui va être une projection du contexte D. La
recherche des items fréquents va se restreindre juste à D’ qui contient juste les
attributs de la liste I’ repérés dans l’étape précédente.
Donc, on a D’= {Ti, avec T i T, et  Ik Ti tel que Ik I’}
-
Fixer les deux facteurs nécessaires pour la recherche des règles: le support minimum
Smin, et la confiance minimale Fmin.
-46-
Chapitre IV
Etat de l’art des approches
-
En s’appuyant sur un algorithme de recherche des règles (Apriori ou n’importe quel
autre algorithme), on lance la recherche des items fréquents dans le contexte restreint.
Pour la liste des items I’ (taille k <=m) : il y a 2 k-1 items fréquents potentiels.
-
On lance la génération des règles d’association à partir des items fréquents trouvés,
mais juste celles qui respectent le modèle des schémas de règles choisis.
-
En sortie, juste les règles utiles qui présentent la cible de recherche sont générées.
4.4 Avantages de cette contribution
Cette contribution améliore considérablement le traitement en diminuant le coût, le temps
d’exécution (de recherche des items fréquents et de génération des règles), ainsi que l’effort
déployé lors d’un post-traitement fastidieux et coûteux.

L’avantage principal de cette démarche réside dans le fait que juste certains items
choisis sont explorés dans la base de données, ce qui donne un gain considérable de
temps dans la recherche des items fréquents. En effet, et lors de la phase de la
recherche des items fréquents (qui est la phase la plus coûteuse en temps
d’exécution), le champ d’exploration des transactions va se restreindre juste dans le
contexte qui contient les attributs sélectionnés dans les schéma de règles choisis.
Cette diminution d’espace de recherche contribue considérablement dans la réduction
du temps de traitement de l’algorithme Data Mining utilisé. Plus la restriction des
attributs est élevée, plus le temps est meilleur. Le cas maximum qu’on peut avoir c’est
la sélection de tous les attributs (et donc tous els items), ce qui va consommer un
temps de traitement égal à l’emploi de l’approche sans notre contribution.

Par la suite, et lors de la phase de génération des règles (phase moins coûteuse en
temps), seules les règles d’association qui respectent le modèle des schémas de règles
sont générées. Sachant que le nombre des règles générés est exponentiel, le fait de
générer juste les règles ciblées permet, en plus de la réduction du temps, d’avoir un
nombre réduit de règles. Ceci est très important et présente un gain énorme du coût
d’effort humain déployé lors de la recherche, l’analyse, et l’interprétation des règles
pertinentes. Par conséquent il facilite énormément le post-traitement.
Donc, cette démarche permet de procéder à une optimisation générale du traitement de la
fouille de données (voir chapitre 5). En plus, cette démarche a l’avantage d’être extensible et
modulaire, si l’ontologie et les schémas de règles évoluent, le filtre évolue aussi pour
restreindre les règles ciblées.
5. Conclusion
Dans ce chapitre, noua avons présenté un état de l’art sur les différentes travaux de recherche
qui font concourir les connaissances d’expertise dans le processus du Data Mining. Nous
avons procédé à une brève comparaison entre ces approches, et nous avons opté pour les
ontologies avec les schémas de règles.
Malgré l’avantage offert par ladite approche dans la représentation des connaissances, nous
avons évoqué son inconvénient dans le processus du traitement lors de la recherche des items
fréquents et la génération des règles. Tout le contexte est parcouru et toutes les règles sont
générées, les connaissances ne sont plus prises en compte qu’à la fin du traitement.
Pour pallier à cet inconvénient, nous avons présenté une contribution pour cette approche en
introduisant le filtrage avant de ne lancer aucun traitement. La proposition est expliquée en
détail. Pour illustrer notre contribution, une étude de cas réel est appliquée au domaine de
production de l’entreprise SH/AVAL. L’implémentation de cette approche sur ce domaine
sera réalisée dans le chapitre suivant.
-47-
Implémentation de la solution sur
le système de production
1. Introduction
2. Présentation du système d’information SH/AVAL
2.1. Généralités
2.2. Le sous système de la production
3. Présentation du logiciel développé (PRONTODAM)
3.1. Connexion à la base (source) de données
3.2. Choix de la table de données et de l’Ontologie
3.3. Traitement
3.4. Amélioration de PRONTODAM pour prendre en
compte la recherche globale
4. Expérimentation de PRONTODAM sur la production
4.1. Les données choisies de la production
4.2. Ontologie modélisée pour ces données
4.3. Application par PRONTODAM
5. Résumé des gains en optimisation et évaluation de
performance de la contribution
6. Analyse et interprétation des résultats
7. Conclusion
Chapitre V
Implémentation de la solution sur le système de production
Implémentation de la solution
sur le système de production
1. Introduction
Dans le chapitre précédent, nous avons présenté une solution d’amélioration du processus de
génération des règles d’association utilisant les ontologies et les schémas de règles.
L’approche proposée consiste à introduire les connaissances pré-requis dés le début du
processus, et à offrir à l’utilisateur le choix des schémas de règles ciblés dés le début.
Comme c’est déjà expliqué avant, ce procédé permet d’éliminer tout traitement inutile dés le
départ, et de générer juste les règles d’association utiles.
Pour illustration, nous allons appliquer cette approche au système d’information de
l’entreprise SONATRACH/AVAL. A cet effet, nous avons opté pour le sous-système de la
production. Le domaine de production est un domaine stratégique pour l’entreprise
SH/AVAL, car il représente son cœur de métier et sa raison d’être. Tous les autres domaines
servent comme support et soutien pour la production.
Le choix d’appliquer notre démarche dans le domaine de la production est justifié par les
motifs suivants:
-
L’importance de ce domaine et donc tout résultat serait appréciable par les utilisateurs
de l’entreprise.
-
Ce domaine n’a jamais été l’objet d’une recherche en Data Mining, car il est
confidentiel, seuls les employés de l’entreprise concernés peuvent y accéder.
-
Cette proposition peut s’avérer utile pour ouvrir d’autre domaine au Data Mining, afin
de fouiller dans l’historique du Data Warehouse.
Dans ce chapitre, nous allons présenter un survol sur le sous-système de la production de
l’entreprise AVAL, ainsi que ses principales fonctions du métier. Puis nous allons
implémenter le Data Minig sur ce domaine en utilisant notre démarche.
Le processus consiste tout d’abord à choisir une base de données dans le système de la
production (chargements, production, transferts, réceptions, stocks, etc.), puis à modéliser
une ontologie sur l’ensemble des données de la base de données choisie. Ensuite, un schéma
de règles est fixé comme cible de connaissance à rechercher. La recherche des items
fréquents et la génération des règles seront implémentées par l’algorithme Apriori. [AS-95]
Le choix de l’algorithme Apriori est lié à sa simplicité d’implémentation, et la nature des
données du domaine de la gestion de la production SH/AVAL, ainsi que et le type des items
dedans (nombre raisonnable des items et nombre important des transactions).
Pour automatiser ce processus décrit ci-dessus, nous avons réalisé un logiciel en langage
Java, qui exploite la base de données de la production de type Oracle.
-48-
Chapitre V
Implémentation de la solution sur le système de production
2. Présentation du système d’information SH/AVAL
2.1 Généralités
La branche AVAL de SONTRACH est une grande compagnie composée de deux sièges (un
principal à Arzew, et l’autre secondaire à Oran), et six complexes productifs (GL1Z, GL2Z,
GL4Z, GL1K, GP1Z, GP2Z), en plus d’autres filiales et unités de support ou soutien qui ont
été intégrés récemment.
L’entreprise possède un système d’information évolué couvrant tous ses domaines d’intérêt.
Ce système a été classé en six grands domaines :

Domaine de la Production : ce domaine couvre les axes suivants:
Suivi de production, suivi des stocks, prévision et programmation, chargements, gestion
technique, laboratoire, étude, sécurité et suivi des installations, …etc.

Domaine de la Maintenance: ce domaine couvre les axes :
Approvisionnement, inspection, travaux neufs, gestion des équipements, …etc.

Domaine des Finances : ce domaine couvre les axes :
Comptabilité générale, trésorerie, budget, bilan, gestion des contrats et bons des
commandes, stock/investissement, comptabilité analytique, …etc.

Domaine des Ressources humains : ce domaine couvre les axes :
Gestion des carrières, administration générale, paie, prestations sociales, pointage,
mobilité, …etc.

Domaine des Logistiques : ce domaine couvre les axes :
Restauration, transport, relations externes, ...etc.

Autres : juridiques, appels d’offres, audit, HSE, …etc.
Toutes les unités AVAL sont reliées au siège d’Arzew (principal), le siège d’Oran est un site de
réplique (Standby) pour le de siège d’Arzew. La connectivité entre les sites est schématisée par
la figure ci-dessous :
Figure 2.1- Connectivité réseaux des sites AVAL
Chaque unité de SH/AVAL possède une base de données par domaine de métier. Au niveau
central (siège) on a des grandes bases de données consolidées pour chaque domaine (Data
Marts).
-49-
Chapitre V
Implémentation de la solution sur le système de production
L’ensemble de ces Data Marts peut être vu comme étant un Data Warehouse réparti par domaine
de métier.
Pour rappel, un Data Mart est une couche d’accès aux données à partir d’un environnement Data
Warehouse. Un Data Mart est un sous ensemble du Data Warehouse orienté vers un domaine de
métier spécifique (specific business line), ou vers un groupe bien défini. [WP]
Les Data Marts de SH/AVAL constituent des volumes importants des données en exploitation
avec une gestion exhaustive de l’historique cumulé.
Toutes les bases de données des différents sites sont de type Oracle 10g Release 2, et sont en
cluster (Real Application Cluster).
Les applications exploitants ces bases sont développées en interne, et sont sous Oracle Developer
10g, en architecture tri-tiers (les clients se connectent à un serveur Application (Oracle AS) qui
sollicitent les bases de données).
2.2 Le sous système de la production
La production représente le cœur de métier pour l’entreprise AVAL. C’est sa raison d’être en
tant que branche de la compagnie SONATRACH.
Le domaine de la production couvre tous les phases intervenant dans le cycle de production tels
que :
 le suivi des stocks des bacs et sphères.
 le suivi des quantités des produits commercialisés générées par les trains.
 le suivi de la consommation de la charge GN et GPL.
 la gestion des produits utilités générés par les équipements (turbogénérateurs,
turbines, chaudières, etc.).
 la gestion des chargements des navires et des camions citernes.
 le suivi des prévisions et la programmation des enlèvements.
 la gestion technique du laboratoire (certificat de qualité).
 la gestion technique de l’étude (manque à produire, technologie spécifique, etc.).
 la gestion de la sécurité (intervention et prévention).
 le suivi des installations et des équipements stratégiques.
 …etc.
Tous les autres domaines métier servent comme supports et soutiens pour le domaine de la
production, de ce fait ce domaine de production est un domaine stratégique pour l’entreprise
SH/AVAL.
Comme tout autre domaine, la production est gérée par un sous système informatisé appelé
GPAO (Gestion de la Production Assisté par Ordinateur). Ce sous système est implémenté
par des applications dédiées qui gèrent les différentes phases de la production.
La base de données de production de chaque unité AVAL contient les données de production
de l’unité depuis sa mise en exploitation. Ces données sont ensuite consolidées au niveau du
siège principal dans un Data Mart.
Le schéma ci-dessous montre la liaison entre ces bases de données :
-50-
Chapitre V
Implémentation de la solution sur le système de production
Figure 2.2-a Architecture des bases de données production AVAL
Les bases de données de production de chaque site sont de type Oracle (Version 10g Release
2), et utilisent l’option Clustering d’Oracle (Real Application Cluster). Le serveur (virtuel) de
chaque site est constitué physiquement de deux nœuds (serveurs réels) et d’une baie de stockage
partagée entre ces nœuds. Les fichiers de la base de données se trouvent dans la baie de
stockage, et le moteur d’exécution (soft) d’Oracle se trouve dans les deux nœuds.
La répartition de la charge (load balancing) et le basculement entre nœuds (fail over) sont pris en
charge par le Cluster d’Oracle.
Figure 2.2-b Architecture d’un cluster à 2 nœuds (base de données production)
A partir du Data Mart de production consolidé, on peut tirer plusieurs connaissances
nouvelles, cachées et utiles pour la détection intelligente de toute information qui peut servir à la
réduction du coût et à l’optimisation.
Dans notre application, on s’intéresse à la découverte des relations (associations) entre les
différents éléments de production. L’historique qui se trouve dans le Data Mart de production
consolidée est employé pour cette fouille de données.
-51-
Chapitre V
Implémentation de la solution sur le système de production
3. Présentation du logiciel développé (PRONTODAM)
Pour implémenter notre contribution, on a développé un logiciel en langage JAVA, en
utilisant comme l’environnement de développement intégré la dernière version (2010) de
l’outil JDeveloper 11g R3 (Studio Edition Version 11.1.1.3.0) de la compagnie ORACLE.
Notre application porte le nom de PRONTODAM :

PRONTODAM (acronyme de Production Ontologie Data Mining) : Utilisation des
ontologies dans le Data Mining de la base de données de production.

PRONTODAM signifie aussi le Data Mining rapide : PRONTO mot anglais qui
signifie rapide ou prompt en français, et DAM = Data Mining), donc c’est la fouille
de données rapide accélérée par l’emploi d’ontologie et schémas de règles dés le
départ comme c’est proposé dans notre démarche.
Notre application PRONTODAM permet d’automatiser le processus de recherche des règles
d’association guidée par l’ontologie en suivant notre démarche proposée dans ce mémoire.
Voici un descriptif des phases d’utilisation de l’application PRONTODAM.
3.1 Connexion à la base (source) de données

Au lancement de l’application, aucune connexion à une base de données n’est établie.
L’interface de l’application est composée d’un menu principal et d’une barre d’outils qui
contient les raccourcis équivalents des sous menus.
-52-
Chapitre V
Implémentation de la solution sur le système de production

Le menu «Fichier» permet de se connecter à la base de données (ou la source de
données), et de rechercher les données à fouiller et l’ontologie attachée :

L’accès à une base de données se fait par le sous menu Connexion ou le bouton
Connexion de la barre d’outils.
-53-
Chapitre V

Implémentation de la solution sur le système de production
La fenêtre de connexion permet de choisir les informations d’accès à une base de données
ainsi que les options d’accès.
L’onglet Connexion permet la saisie du nom de la base de données, l’utilisateur et le mot
de passe nécessaires.
L’onglet Options permet de préciser les informations d’accès à la base de données : le pilote
(JDBC/ODBC), le type de la base (Oracle, Informix, SQL Server, DB2, ou Fichiers), le nom
ou l’adresse IP du serveur, ainsi que le port utilisé pour accès à ce serveur.
-54-
Chapitre V
Implémentation de la solution sur le système de production
NB : Si vous choisissez le type Fichiers, une autre liste déroulante permet de choisir le type
fichier (Excel, Acces, Text). Dans ce cas le champ Nom Database de l’onglet Connexion
devient Nom DataSource, et les deux champs Utilisateur et Mot de passe deviennent
inaccessibles (inutiles).
Une fois connecté, la barre de statut en bas affiche la base (ou la source) de données.
-55-
Chapitre V
Implémentation de la solution sur le système de production
3.2 Choix de la table de données et Ontologie
Une fois connecté à la base de données, on peut choisir la (ou les) table(s) ou la (les) vue(s)
qui contiennent les données à traiter, puis l’ontologie associée.

Le menu «Selection Tables/Vues» (ou le bouton «Selection Tables/Vues» de la barre
d’outils) donne accès à l’écran de choix Tables/Vues.

L’écran «Sélection Tables/Vues» s’affiche.
Les cases à cocher (Tables, Vues) activent/désactivent la listes des tables/vues
disponibles dans la base de données. Le bouton (==>) déplace la (les) tables/Vues vers la
liste sélectionnée. A l’inverse le bouton (<==) retire tout ce qui est sélectionné.
-56-
Chapitre V
Implémentation de la solution sur le système de production

Le menu «Selection Ontologie Associée» (ou le bouton équivalent dans la barre d’outils)
donne accès à l’écran de choix de l’ontologie associée au tables/Vue avant.

L’écran «Sélection Ontologie» s’affiche.
La liste des Tables/Vues déjà sélectionnées s’affiche. Une fois une table/vue est
sélectionnée de cette lite, alors son ontologie associée est affichée automatiquement.
(L’ontologie est déjà préparée dans la base de données sous forme hiérarchique). La liste
des attributs (colonnes de la table/vue), les concepts, et la hiérarchie des concepts liées de
l’ontologie sont affichés.
Un plus de détail est donné dans l’exemple d’implémentation (voir les 2 points 4.2 et 4.3).
-57-
Chapitre V
Implémentation de la solution sur le système de production
3.3. Traitement
Le menu «Traitement» contient toutes les opérations pour préparer et lancer le traitement,
puis visualiser les résultats.

Le sous menu «Support et Confiance» (ou le bouton équivalent) permet l’accès à l’écran
«Sélection Support/Confiance».
L’écran de «Sélection Support/Confiance» permet de fixer le support minimal et la confiance
minimale pour le traitement. Les deux Sliders permettent de choisir des valeurs entières en
glissants entre 0 et 100%. Les valeurs choisies sont affichées dans les deux champs à droite.
NB : Si on veut choisir des valeurs non entières (réelles avec virgule) pour le support ou la
confiance, dans ce cas il suffit de saisir directement ces valeurs réelles dans les deux champs
respectivement.
-58-
Chapitre V

Implémentation de la solution sur le système de production
Le sous menu «Schémas de règles» (ou le bouton équivalent) permet l’accès à l’écran de
choix de «Sélection de Schémas de règles».
L’écran de «Sélection de Schémas de règles» permet de préciser le schéma de règle objet de
recherche Data Mining. Ce schéma de règle est composé d’une prémisse et d’une conclusion,
chacune d’elle peut être composée de plusieurs concepts de l’ontologie et/ou attributs de la
table. Les deux listes des attributs et concepts (sous forme hiérarchique) sont affichées
automatiquement.
Le schéma de règle est utilisé pour la recherche des itemsets fréquents qui apparaissent
dedans, puis pour le filtrage règles qui respectent la règle. L’ajout et la suppression d’un
attribut/concept au schéma de règle sont gérés par les boutons appropriés.
-59-
Chapitre V

Implémentation de la solution sur le système de production
Le sous-menu «Lancer le traitement» (ou le bouton équivalent) permet l’accès à l’écran
de choix de «Lancement du Traitement DM guidé le schéma de règle».
-60-
Chapitre V
Implémentation de la solution sur le système de production
L’écran de «Lancement du Traitement» permet d’afficher les choix effectués (table/vue
choisie, ontologie, support min, confiance min, nombre transactions) pour vérification, puis
de lancer le traitement.

Le sous-menu «Résultat du dernier Traitement» (ou le bouton équivalent) permet l’accès
à l’écran de choix de «Visualisation Résultat du dernier Traitement».
L’écran de «Visualisation Résultat Traitement» permet d’afficher les résultats du dernier
traitement lancé, afin de procéder à l’analyse et l’interprétation des règles d’association
détectées. Tous les itemsets fréquents qui sont listés dans le schéma de règle choisi sont
affichés dans la liste à gauche avec leurs supports, et toutes les règles d’association générées
sont affichées dans la liste à droite avec leurs confiantes. Des options sont proposées pour
limiter l’affichage pour une meilleure visualisation et analyse.
-61-
Chapitre V

Implémentation de la solution sur le système de production
Enfin, le menu «Help» contient un seul sous menu «About…» pour afficher le copyright
du logiciel PRONTODAM.
-62-
Chapitre V
Implémentation de la solution sur le système de production
3.4. Amélioration de PRONTODAM pour prendre en compte une
recherche globale
Afin de prendre en compte le cas d’une recherche globale traditionnelle dans un contexte,
c'est-à-dire le cas de la recherche des items fréquents et la génération des règles sans recourir
à aucune ontologie ou schéma de règle, nous avons apporté une amélioration au logiciel
PRONTODAM.
Dans ce cas, si aucune ontologie n’existe pour la table (ou la vue) sélectionnée, et aucun
schéma de règle n’a été choisi par l’utilisateur, le logiciel PRONTODAM va faire une
recherche globale sur tout le contexte (la table ou la vue) comme ça se fait
traditionnellement. Tous les items fréquents (dont leurs supports sont supérieurs au support
minimal) sont générés, et toutes les règles d’association (dont leurs confiances sont
supérieures à la confiance minimale) sont produites à partir de ces itemsets.
En plus, si aucune ontologie n’existe pour la table (ou la vue) sélectionnée, et que
l’utilisateur a composé un schéma de règle basé sur les attributs de cette table (ou vue), alors
le logiciel PRONTODAM va faire une recherche juste sur les attributs listés du contexte.
Tous les items fréquents issus de attributs et dont leurs supports sont supérieurs au support
minimal sont générés, et toutes les règles d’association respectant le schéma de règle (et dont
leurs confiances sont supérieures à la confiance min) sont produites à partir de ces itemsets.
4. Expérimentation du PRONTODAM sur la production
4.1. Les données choisies de la production
Dans ce contexte, on a jugé important d’exploiter la masse importante de données de
production afin d’extraire des connaissances utiles qui permettent l’optimisation, la réduction
du coût, et la compréhension des tendances générales des clients externes, …etc.
Les données de production sont présentes au niveau du siège dans la base de données Oracle
de production consolidée. Chaque jour, les services concernés de chaque unité AVAL
valident leurs bilans. Une fois validées, ces données sont envoyées au siège par des
déclencheurs (triggers). Grâce à ce mécanisme les données sont rafraîchies chaque journée.
Pour cela, et pour illustrer notre démarche, on s’est penché sur les données consolidée des
chargements des navires.
Les produits commercialisés (GNL, C2, C3, C4, C5, …etc.) par les unités AVAL sont
chargés dans des navires (méthaniers ou autres) pour le compte des clients externes, et
suivant un programme préalablement établi chaque mois.
En appliquant la méthodologie de développement proposée par le Consortium CRISP-DM
[CRISP] (voir Chapitre 1 point 1.4), nous allons développer dans le reste de ce chapitre les
étapes de cette méthodologie.
a) Identification du problème :
Le problème consiste à découvrir les comportements des clients (et des pays) dans leurs
choix des produits commercialisés des différentes unités.
Les clients (et les pays) s’intéressent aux produits commercialisés, suivant une certaine
qualité bien déterminée à l’avance (qui dépend du choix du client).
A noter bien que les produits se différent d’une unité à l’autre par des qualités qui dépendent
de certains paramètres spécifique à chaque produit, par exemple, le pouvoir calorifique
spécifique (PCS) est un paramètre important pour décrire les caractéristiques du produit GNL
(Gaz Naturel Liquéfié). A chaque chargement d’un navire, un certificat de qualité des
produits chargés est établi par AVAL et contrôlé par ses clients. La quantité et la qualité
livrée dépendent du contrat signé des deux cotés (Contrat de type CIF, FOB, etc.).
-63-
Chapitre V
Implémentation de la solution sur le système de production
b) Rassemblement (Sélection) des données :
Les données de chargements sont présentes (au niveau siège) dans la base de données Oracle
consolidée dans une table bien définie. Ceci nous évite le recourt à l’assemblage des
données à partir d’autres sources hétérogènes.
La table des chargements est une table très importante, car elle contient toutes les
transactions des enlèvements réalisés dans tous les complexes (unités) AVAL pour les
comptes des clients externes et destinés aux différents pays.
La table des chargements consolidée contient beaucoup d’informations, à savoir: la date de
début et fin de chargement, les codes navires, les codes clients, les codes pays, les codes
produits chargés, les quantités net chargées, les quantités facturées, les quantités livrées, les
pertes du Boil Off, les pertes générales, les quantités de mise en froide, les remports
(consommés par le navire lui-même), observation, …etc.
c) Préparation des données:
Pour éviter tout traitement de données superflues, une vue sur la table des chargements a été
définie pour choisir juste les données les plus importantes. Cette vue créée est représentée
par la relation suivante:
CHARGEMENTS (Date_Jour, Code_Unite, Code_Produit, Nom_Navire, Nom_Client,
Nom_Pays, Quantite).
Voici un extrait de cette vue de données :
Cette Vue contient 529824 transactions (enregistrements) des chargements enregistrés depuis
plus de 25 ans d’exploitation.
-64-
Chapitre V
Implémentation de la solution sur le système de production
Pour le nettoyage de ces données, nous étions obligé de revoir la codification des certains clients
et pays pour standardisation, car:
-
Certains clients ont plus d’une codification dans l’historique, suite soit au changement de
nomination de client ou juste un problème de codification en interne.
Ex : le client Italien ENI avait 2 codes : ENI et ENI SPA, de même pour le client KELSEY et
KELSEY GAS, EDSON et EDISON GAS, etc.
-
Certains pays ont aussi plus d’une codification dans l’historique.
Ex : HOLLANDE et PAYS BAS, ETATS UNITS et USA, etc.
Concernant le problème des valeurs nulles, il y a dans cette table 480 transactions dont le client
est inconnu, 1024 transactions dont la quantité est nulle, et 64 quantités à 0. La somme est 1586
(480+1024+64) ce qui représente un pourcentage très faible (0.29 %) de l’ensemble des
transactions. Donc les données sont beaucoup loin d’être éparses (voir Chapitre 1 point 1.4).
Le reste des étapes (modélisation, évaluation des résultats et interprétation) est développé dans
les points suivants.
-65-
Chapitre V
Implémentation de la solution sur le système de production
4.2. Ontologie modélisée pour ces données
Dans la phase de modélisation, une ontologie nommée CHARGEMENTS_ONTOLOGY a été
créée pour représenter les connaissances d’expertise en production. Cette ontologie a été
implantée suivant les connaissances fournies par un expert concernant le classement des clients,
pays, et produits en catégories. Les différents concepts ont été recensés, puis les relations entre
ces concepts afin d’avoir la hiérarchisation. Les liens entre les concepts et les attributs de la table
de chargement ont été aussi définis.
Liste des concepts
Attributs associés
CHARGEMENTS_ONTOLOGY
UNITE
PRODUIT
CLIENT
PAYS
CHARGEMENTS
CODE_UNITE
CODE_PRODUIT
NOM_CLIENT
NOM_PAYS
(TABLE)
(Colonne de la table)
(Colonne de la table)
(Colonne de la table)
(Colonne de la table)
Chaque concept est classé en catégories de concepts jusqu’au feuilles (hiérarchie).
Concepts
UNITE
PRODUIT
CLIENT
Concepts fils
UNITE_GNL
UNITE_GPL
PRODUIT_GNL
PRODUIT_GPL
REGULIER
OCCASIONNEL
AFRIQUE
AMERIQUE_NORD
AMERIQUE_SUD
PAYS
ASIE
EUROPE
AUSTRALIA
Concepts fils
GL1Z, GL2Z, GL1K
GP1Z, GP2Z
GNL, C2, C5
C3, C4, Bup
AFRIQUIA GAZ, BOTAS, CEPSA, , DEPA, DGS-BELGIQUE,
DOW CHEMICAL, EDISON GAZ, EGPC, ENAGAS, ENI,
GDF-FRANCE, GDF-SUEZ, GNA, IBERDROLA, KOFISA, NAFTAL
NAFTOMAR, PIE, REPSOL, SALAM GAZ, SAMIR, SNAM, SPC,
STATE OIL ASA, STIR, TEPA, TOTAL, TUPRAS
AB GAZ, AGIP, AMPTC, APEX, AYGAS, , BASF INTERTRADE,
B-G TRADING LC, B-GESSEN, BHP, BIC, BILBAO, B-INTER
TRADE, BP AMOCO, BRITISH PETROLEUM GAS,
C/O GRAIN LNG, CALTRAM, CARBOEX, CFP, CLEAM, COGEGAZ,
DGS-BOSTON, DIMAGAZ, DISTRIGAZ-BOSTON, DUKE ENERGY,
DYNEGY …etc. (133 clients).
AFRIQUE DU SUD, ALGERIE, COTE D'IVOIRE, EGYPTE, LYBIE,
MAROC, TUNISIE
U.S.A
ARGENTINE, BRESIL, CHILI, EQUATEUR, MEXIQUE, PEROU,
PORTO RICO, REPUBLIQUE DOMINICAINE
CHINE, COREE, E.ARABES UNIS, INDE, JAPON, LIBAN,
SINGAPOUR, SYRIE, TAIWAN, TURQUIE, YEMEN
ALBANIE, BELGIQUE, CHYPRE, ESPAGNE, FINLANDE, FRANCE,
GRANDE BRETAGNE, GRECE, ITALIE, MALTE, NORVEGE, PAYS
BAS, PORTUGAL, ROUMANIE, SUEDE
AUSTRALIE
La modélisation de cette ontologie a été réalisée par l’outil Protégé (version 4.0.2) [PS].
L’ontologie Chargements_Ontology.owl créée par Protété, est stocké dans un fichier XML
utilisant la syntaxe du langage OWL (voir le point 9 du chapitre 3).
Ci-dessous une capture écran de cette ontologie dans l’outil Protégé.
-66-
Chapitre V
Implémentation de la solution sur le système de production
Toutefois, et pour l’implémentation du logiciel PRONTODAM, il faut un moyen de
communication entre la base de données (table des chargements) et l’ontologie puisque l’outil
Protégé sert juste pour la présentation (la forme). Dans ce cas, nous avons implémenté cette
ontologie sous forme d’une table Oracle hiérarchique (coté base de donnes), puis la nous l’avons
présenté coté application par un arbre Java (JTREE).
Ci-dessous des extraits de cet arbre :
-67-
Chapitre V
Implémentation de la solution sur le système de production
4.3. Application par PRONTODAM
Le problème étant défini, les données préparées et l’ontologie conçue, il ne reste qu’appliquer
notre démarche automatisé par PRONTODAM.
a) Connexion à la base de données de production
Une fois connecté, la barre d’état affiche la connexion en cours :
-68-
Chapitre V
Implémentation de la solution sur le système de production
b) Choix de la table des chargements puis l’Ontologie associée
-69-
Chapitre V
Implémentation de la solution sur le système de production
c) Traitement.
Choix des paramètres support min & confiance min : Exemple 1 % et 25 % respectivement.
Puis construire le schéma de règle basé sur les attributs (colonnes de la table CHARGEMENTS)
ou les concepts de l’ontologie CHARGEMENTS_ONTOLOGY.
Exemple : le schéma CLIENT  PRODUIT, UNITE
l’utilisateur pour le problème posé)
(qui correspondant au choix de
-70-
Chapitre V
Implémentation de la solution sur le système de production
Le lancement du traitement après vérification des choix effectués précédemment.
Dés le lancement, le filtre détecté sur les données est affiché, les concepts (CLIENT, PRODUIT,
et UNITE) choisis dans le schéma de règle sont convertis en attributs équivalents
(NOM_CLIENT, CODE_PRODUIT, et CODE_UNITE) de la table de chargements. Le
champ de recherche se limite juste dans ces attributs au lieu d’une recherche globale (gain
important en temps).
Un message s’affiche à la fin du traitement (la durée dépend des paramètres et la taille de la table
et les concepts/attributs listés dans le schéma de règle).
-71-
Chapitre V
Implémentation de la solution sur le système de production
Enfin, la visualisation des résultats après la fin du traitement.
Comme c’est mentionné avant, l’écran de «Visualisation Résultat Traitement» permet
d’afficher les résultats du dernier traitement lancé. Il sert pour l’analyse et par la suite à
l’interprétation des règles détectées.
Voici la liste des règles générées dans ce cas :
Noter bien que le nombre des règles générées réellement est affiché, ainsi que le nombre de
règles possibles qui peut y avoir si le schéma de règle n’est pas employé. Ceci donne une
idée sur l’optimisation opérée lors du traitement.
Dans la capture d’écran ci-dessus, on remarque que seulement 19 règles ont été réellement
générées au lieu de 136 règles si on n’avait pas filtré par le schéma de règle (voir le point 5
ci-dessous de ce chapitre).
Comme c’est déjà expliqué avant, le traitement n’a pas été effectué sur tous les attributs de la
table des chargements, mais il s’est restreint juste sur les concepts CLIENT, PRODUIT, et
UNITE (qui correspondent aux attributs NOM_CLIENT, CODE_PRODUIT, et
CODE_UNITE de la table de chargements). Les 109 itemsets fréquents détectés concernent
juste ces attributs.
Pour une meilleure visualisation et analyse, l’utilisateur a le choix de limiter l’affichage des
informations à travers les options proposées. Par défaut, tous les itemsets fréquents (qui sont
listés dans le schéma de règle choisi) sont affichés dans la liste à gauche avec leurs supports,
et toutes les règles d’association générées (qui respectent le schéma de règle choisi) sont
affichées dans la liste à droite avec leurs confiantes. L’utilisateur peut limiter cet affichage
en utilisant les cases à cocher en haut.
-72-
Chapitre V
Implémentation de la solution sur le système de production
5. Résumé des gains en optimisation et évaluation de
performance de la contribution
Dans le chapitre précédent (voir chapitre 4 point 4.4), nous avons présenté les avantages obtenus
de notre proposition que ce soit du coté temps d’exécution ou du coté coût d’analyse suite à la
réduction du nombre des règles d’association générées.
Pour l’évaluation de performance et optimisation, nous résumons ici sous forme d’un tableau
comparatif ces gains en temps d’exécution et en performance que nous avons eu en appliquant
notre démarche sur les données déroulées.
Table des données : changements des navires (529 824 Transactions)
Schéma de règle choisi : CLIENT  PRODUIT, UNITE
Support min= 1%
Confiance Min=25%
Attributs/
Concepts
concernés
Dara Mining Sans la contribution
Tous les attributs (7) :
DATE_JOUR, CODE_UNITE, CODE_PRODUIT,
NOM_NAVIRE, NOM_CLIENT, NOM_PAYS
QUANTITE.
Dara Mining avec notre contribution
Juste les attributs liés aux concepts listés
dans le schéma (3)
CLIENT  PRODUIT, UNITE
Donc juste les attributs:
CODE _UNITE NOM _CLIENT,
NOM _PRODUIT
Nombre
d’items
parcourus
Total=5+6+167= 178
Total=5+6+43+167+537+7864+16305= 24927
Si on élimine les dates et les quantités (inutiles):
Total=5+6+43+167+537= 758
Nombre
d’itemsets
potentiels
Nb. itemsets
fréquents
Nb. règles
potentielles
Nb. règles
générées
Nb. règles
filtrées par
schéma de
règle
Temps
d’exécution(**)
(*)
(**)
224927-1 (tous les attributs)
2758-1  1.5*10228 (pas de dates/quantités)
2178-1 3.8*1053
525 (*) (pas de dates/quantités)
109
2525-2  10158 (pas de dates/quantités)
2109-2  6.5*1032
1516 (*) (pas de dates/quantités)
19 (136 si sans filtre par schéma de règle)
19 (pas de dates/quantités)
19
59 minutes 33 secondes
5 minutes 22 secondes
Voir la page suivante pour ces résultas
Temps d’exécution pris pour la Même machine : Dual CPU 2GHz, RAM 2GO
L’effort déployé dans l’analyse et l’interprétation sera consacré aux 19 règles générées au lieu
des 1516 règles si nous n’avions pas appliqué la démarche proposée.
-73-
Chapitre V
Implémentation de la solution sur le système de production
Lancement du traitement (sans la contribution) pour les attributs (sans quantités et dates) :
Résultats du traitement (sans la contribution) :
-74-
Chapitre V
Implémentation de la solution sur le système de production
6. Analyse et interprétation des résultats
Dans la phase d’évaluation des résultats et interprétation, l’utilisateur visualisent les règles
générées qui correspondent bien au schéma de règle conçu et les paramètres choisis. De cette
manière, l’utilisateur aura juste les règles ciblées, et évite ainsi d’être noyé dans un nombre très
grand de règles d’association inutiles.
L’exemple du déroulement ci-dessus de l’application PRONTODAM permet d’avoir juste les
règles qui correspondent au schéma CLIENT  PRODUIT, UNITE (avec un support minimal de
1 % et une confiance minimale de 25 %). Ce choix permet à l’utilisateur d’avoir une idée sur le
choix des clients pour les produits des unités. Ceci correspondant bien au problème posé dans le
point 4.1. (a) de ce chapitre.
Comme exemple d’analyse et d’interprétation, nous allons focaliser sur les règles générées de
certains clients (GDF-FRANCE, GNA, BOTAS) affichées ci-dessous :
On peut avoir l’analyse suivante :

Client GDF-FRANCE
Les règles suivantes sont générées pour le client français GDF-FRANCE:
GDF-FRANS  Gnl, GL1K (Confiance ≈ 40%)
GDF-FRANS  Gnl, GL1Z (Confiance ≈ 28%)
GDF-FRANS  Gnl, GL2Z (Confiance ≈ 29%)
Ce résultat montre bien que ce client ne s’intéresse pas trop à la qualité du produit GNL, du
moment où ses chargements peuvent être effectués à partir de toutes les unités GNL avec
presque le même pourcentage. L’essentiel pour ce client c’est la quantité chargée.
-75-
Chapitre V

Implémentation de la solution sur le système de production
Client GNA
Seule la règle suivante a été générée pour le client GNA :
GNA  Gnl, GL2Z (Confiance ≈ 80%)
Ce résultat montre que ce client s’intéresse trop à la qualité du produit GNL de l’unité GL2Z, du
moment où 80% de ses chargements GNL sont effectués à partir de cette unité.
Sachant que le PCS (voir le point 4.1. (a) de ce chapitre) du GNL est moins élevé dans l’unité
GL2Z par rapport aux autres unités, nous pouvons confirmer que ce client préfère un PCS faible,
et donc moins cher. Comme conclusion, ce client privilège la quantité au détriment de la qualité.

Client BOTAS
Seule la règle suivante a été générée pour le client turque BOTAS:
BOTAS  Gnl, GL1Z (Confiance ≈ 80%)
Ce résultat montre bien que ce client s’intéresse trop à la qualité du produit GNL de l’unité
GL1Z. Sachant que le PCS du GNL est un peu élevé dans l’unité GL1Z par rapport aux autres
unités, nous confirmons que le client BOTAS préfère un PCS élevé pour le produit chargé.
NB : Nous avons demandé une explication sur l’intérêt du client BOTAS pour ce choix, et nous
l’avions trouvé enfin chez un employé de la production qui a déjà passé 4 ans de travail en
Turquie. L’explication est que, après déchargement et lors du processus inverse de liquéfaction
(vaporisation) du GNL, les Turques utilisent la quantité d’énergie dégagée pour l’exploiter dans
d’autres domaines (génération d’électricité par exemple). Plus le PCS du GNL est grand, plus la
quantité d’énergie dégagée est grande (lors du processus inverse de la liquéfaction). C’est ce qui
explique l’intérêt de ce client à la qualité.
7. Conclusion
Dans ce chapitre, nous avons présenté l’implémentation de notre approche dans le processus de
découvertes des connaissances par la technique des règles d’association. A cet effet notre logiciel
réalisé PRONTODAM a été présenté en précisant les étapes à suivre pour la sélection des
données, de l’ontologie, du schéma de règle, et enfin le traitement.
Une démarche expérimentale était nécessaire pour mener à bien ce processus à travers
l’expérimentation de PRONTODAM sur le domaine de la production de l’entreprise AVAL/SH.
Le sous-système de production a été présenté avec les principales fonctions de production.
Par la suite, et en respectant la méthodologie du Data Mining proposée par le Consortium
CRISP-DM, nous avons défini le problème, et nous avons opté pour les données des
chargements navires pour les différents clients. Un bon nettoyage s’avérait nécessaire pour
mener à des résultats satisfaisants. Une ontologie a été modélisée pour ces données. Une fois
que les valeurs minimales de support et confiance sont fixés, et le schéma de règles est
composé à partir des attributs ou concepts de l’ontologie, le traitement est lancé.
Dans une première étape du traitement, le contexte de recherche est projeté sur le contexte
global pour déterminer dés le début les données concernées, la recherche des motifs fréquents est
réalisée en se basant sur l’algorithme primordial Apriori. Dans la deuxième étape, des règles
d’association qui correspondent au schéma de règle sont générées.
Pour bien exposer les gains obtenus en performance de notre démarche proposée, un tableau
comparatif est donné avec et sans application de notre démarche. Enfin, quelques exemples
d’analyse et interprétations des résultats sont fournis pour illustration.
-76-
Conclusion générale
et Perspectives
1. Conclusion générale
2. Perspectives
2.1. Perspectives techniques
2.2. Perspectives fonctionnelles
Chapitre VI
Conclusion générale et Perspectives
Conclusion générale et
Perspectives
1. Conclusion générale
Notre travail consistait à proposer une contribution au sujet de la technique des règles
d’association. Le problème principal de cette technique est le nombre important des règles
générées. Toute la difficulté réside dans le post-traitement où la recherche des règles pertinentes
semble très fastidieuse.
Nous avons présenté à travers les chapitres de ce mémoire les notions de bases du Data Mining,
ses tâches et ses principales techniques, puis nous avons défini la technique des règles
d’associations, avec une description détaillée de l’algorithme de base Apriori. Par la suite, nous
avons abordé les approches de recherches qui proposent l’emploi des connaissances préalables
pour simplifier (semi-automatiser) le post-traitement des règles d’association. La notion
d’ontologie a été introduite pour guider le processus dans ce sens. Les approches pratiques pour
tirer parti de l’ontologie sont multiples. Une étude comparative a été réalisée pour choisir la
meilleure approche, ainsi l’utilisation des schémas de règles apparaît plus attrayante vu sa
simplicité d’implantation. Ces schémas de règles correspondent au choix de l’utilisateur dans le
but de cibler certaines règles d’association.
Nous avons opté pour l’utilisation de la technique des règles d’association guidée par l’emploi
des ontologies et des schémas de règles. Néanmoins, le traitement reste toujours le même coté
performance, et le nombre des règles générées reste autant énorme, ce qui alourdit toujours le
post-traitement. Sachant que la majorité des règles d’association générées étaient inutiles.
Afin de bien mener ce processus, nous avons proposé une contribution qui consistait à introduire
les concepts de l’ontologie et des schémas de règles dés le début du processus du Data Mining.
Cette contribution permet une amélioration considérable du processus dans ses deux phases.
D’un coté, et durant la première phase coûteuse de recherche des itemsets fréquents, l’espace de
recherche ne va pas couvrir tout le contexte, mais il va plutôt se limiter seulement aux itemsets
correspondants listés dans les schémas de règles.
D’autre coté, et durant la deuxième phase de génération des règles d’associations, seules les
règles qui respectent les schémas de règles sont générées.
Une fois l’approche expliquée, nous l’avons implémenté par un logiciel afin d’automatiser le
processus de génération de règles.
Pour illustration, nous avons appliqué cette démarche au domaine de production de l’entreprise
SH/AVAL. Afin de parvenir à cet objectif, nous avons suivi les différentes étapes proposées par
le Consortium CRISP-DM. De la définition du problème, à la récolte et le nettoyage des
données, puis la conception de l’ontologie, et le choix des paramètres (support & confiance),
et la composition du schéma de règle. Tout ce cycle a été testé par notre logiciel développé
sur des données réelles de production. Finalement, les règles résultantes du traitement
considérées comme étant utiles sont affichées. L’utilisateur n’a que les analyser et les
interpréter facilement.
-77-
Chapitre VI
Conclusion générale et Perspectives
2. Perspectives
Les résultats de ce travail présenté dans ce mémoire offre plusieurs perspectives de recherches
ultérieures au niveau technique et au niveau fonctionnel.
Nous présentons ici succinctement quelques unes de ces perspectives qui nous paraissent être les
plus intéressantes.
2.1. Perspectives techniques

Paramétrage du choix de l’algorithme d’extraction de règles
d’association
Lors de l’implémentation de notre approche, nous avons utilisé l’algorithme de base Apriori afin
de rechercher les règles d’association. Cependant beaucoup d’algorithmes sont proposés pour
cette recherche. Le choix de l’algorithme dépend du contexte étudié. Une amélioration peut être
ajouté à notre travail, et qui consiste à paramétrer l’algorithme d’extraction de règles. Ce
paramétrage permet à l’utilisateur de choisir l’algorithme approprié pour le champ d’étude.

Communication directe entre la base de données et l’outil de
représentation de l’ontologie
Lors de l’implémentation de notre application, nous n’avions pas un moyen de communication
directe entre la base de données et l’outil de représentation de l’ontologie utilisé (Protégé). Pour
pallier à ce problème, nous avons implanté l’ontologie dans la base de données sous forme
hiérarchique, ce qui nous a pris beaucoup de temps. Chaque mise à jour dans l’ontologie doit se
faire aussi dans la hiérarchie implantée au niveau de la base de données. Une continuité de ce
travail peut être effectuée, elle consisterait à trouver un mécanisme de liaison qui relie
directement la base de données à l’outil de présentation de l’ontologie. Ceci facilite la
maintenance et toute modification ultérieure dans l’ontologie.

Représentation visuelle des règles d’association générées
La notion de Visual Data Mining a fait son apparition afin d’améliorer le processus d’extraction
de connaissances en proposant des outils de visualisation adaptés à différentes problématiques.
L’esprit humain peut traiter un plus grand nombre d’informations visuellement et en extrait de
l’information plus rapidement. Pour cela, une étude comparative réalisant un croisement entre les
techniques de visualisation de règles d’association peut être une continuité de notre travail.
2.2. Perspectives fonctionnelles

Etendre ce travail réalisé à d’autres domaines fonctionnels (finances, maintenance,
logistique, …etc.) pour extraire les connaissances cachées dans l’historique des données.

Utiliser d’autres techniques du Data Mining pour accomplir d’autres tâches (classification,
prévision…) afin d’extraire de nouvelles connaissances dans notre base de données de
production.
-78-
Bibliographie et Références
[AS & al-94] Rakesh Agrawal, Ramakrishnan Srikant, M. Methta, J. Shafer.
« Fast Algorithms for Mining Association Rules in large databases ».
In Proceedings of the 20th International Conference on Very Large Databases (VLDB 1994),
Santiago de Chile, Chile, pp.478-499.
[AS-95] Rakesh Agrawal, Ramakrishnan Srikant.
“Mining Generalized Association Rules”.
In Proceedings of the 21st International Conference on Very Large Data Bases (VLDB ’95),
San Francisco, CA, pp. 407–419.
[B-04] Brisson Laurent.
« Mesures d’intérêt subjectif et représentation des connaissances ».
Laoboratoire informatique, signaux et systèmes de Sophia Antipolis.
Projet EXECO, Octobre 2004.
[BF & al-09] Andrea Bellandi, Barbara Furletti, Valerio Grossi, Andrea Romei.
« Ontology-Driven Association Rule Extraction:A Case Study ».
IMT - Lucca Institute for Advanced Studies, Lucca, ITALY.
And Department of Computer Science - University of Pisa, Pisa ITALY.
[C-05] Olivier Couturier
« Contribution à la fouille de données : règles d'association et interactivité au sein d'un
processus d'extraction de connaissances dans les données »
Thèse de Doctorat de l'Université d'Artois, Décembre 2005
[C-06] Claire Noirault
”Business Intelligence avec Oracle 10g (ETL, Data Warehouse, Data Mining, Rapports)”
Editions ENI - France, Novembre 2006.
[DR-10] Dahmani Djilali, Rahal Sid Ahmed.
« Data Mining Using Association Rules Conducted By Pre-selected Rules Patterns and
Ontology ». Article résumant l’approche proposée dans ce mémoire, et qui a été accepté pour
communication dans les conférences suivantes de l’organisme « World Academy of science
engineering and technology », ICCESSE 2010 :
Amesterdam (Pays bas) 28-30/09/2010, Paris (France) 27-29/10/2010,
Venice (Italie) 24-26/11/2010, Singapour 18-20/12/2010
and Dubai (Emirates) 25-27/01/2011.
[FG & al-10] Javier Farreres, Karina Gibert, Horacio Rodríguez, Charnyote
Pluempitiwiriyawej.
« Inference of lexical ontologies. The LeOnI methodology ».
LSI Department, Universitat Politècnica de Catalunya, Jordi Girona, 31, Barcelona, Spain.
And EIO Department, Universitat Politècnica de Catalunya, Spain.
And Computer Science Department, Mahidol University, Bangkok, Thailand.
[G-93] Thomas R. Gruber.
« Towards Principles for the Design of Ontologies Used for Knowledge Sharing in Formal
Ontology in Conceptual Analysis and Knowledge Representation ».
Kluwer Academic Publishers, 1993
[GZ-05] Gösta Grahne, Jianfei Zhu
« Efficiently Using Prefix-trees in Mining Frequent Itemsets »
Concordia University Montreal, Canada.
[JF & al-07] Lisa Di Jolio, Lylia Abrouk, Céline Fiot, Danièle Hérin, Maguelonne Teisseire.
« Enrichissement d’ontologie basé sur les motifs séquentiels ».
LIRMM 2007, Campus Saint-Priest, Montpellier.
[K-07] Khiat Salim.
«Data Mining industriel, application à la maintenance Aval/Sonatrach ».
Mémoire Magistère Université USTO ORAN, Mai-2007.
[KN & al-09] Sonia Krivine, Jérôme Nobécourt, Lina Soualmia, Farid Cerbah, Catherine
Duclos. « Construction automatique d’ontologie à partir de bases de données relationnelles:
application au médicament dans le domaine de la pharmacovigilance ».
Laboratoire d’informatique médicale & Bioinformatique, Université Paris. 2009
[KS-07] A.S. Kleshchev, E. A. Shalfeeva.
« Defining Structural Properties of Ontologies”, August 2007
Institute for automation and control processes, Russian academy of sciences, Russia.
[MG & al-08] Claudia Marinica, Fabrice Guillet, Henri Briand.
«Vers la fouille de règles d’association guidée par des ontologies et des schémas de règles ».
LINA – Equipe COD, Article 2008. Ecole polytechnique de l'Université de Nantes.
[PS & al-09] Pance Panov, Larisa N. Soldatova, Saso Dzeroski.
« Towards an Ontology of Data Mining Investigations», 2009
Josef Stefan Institute, Ljubljana, Slovenia.
And Aberystwyth University, Wales, UK.
[PZ-03] Andrea Pietracaprina, Dario Zandolin
« Mining Frequent Itemsets using Patricia Tries ».
Department of Information Engineering, University of Padova. 2003
[SA-09] Dr. Hadeel Showket Al-Obaidy
« Building Ontology Web Retrieval System Using Data Mining ».
Computer Engineering Department, College of Engineering, Ahlia University, Bahrain
[TL-09] Ming-Cheng Tseng, Wen-Yang Lin
« Incremental Mining of Ontological Association Rules in Evolving Environments ».
Refining Business Division, CPC Corporation, Taiwan
And Dept. of Comp. Sci. & Info. Eng., National University of Kaohsiung, Taiwan
[UG-96] Mike Usehold, Michael Gruninger.
« Ontologies: principes, methods and applications ».
AIAI-TR, Knowledge Engineering Review, June 1996.
[UK & al-09] Brian Ulicnya, Mieczyslaw M. Kokar, Christopher J. Matheus.
« Uses of Ontologies in Open Source Blog Mining ».
VIStology, Inc. Northeastern University.
[ZL-08] ZHENG Liang, LI Xueming
« An Ontology Reasoning Architecture for Data Mining Knowledge Management”
College of Computer Science, Chongqing University, China
Sites Internet:
[CRISP] Site du Consortium CRISP-DM spécialisé dans le Data Mining
http://www.crisp-dm.org
[PS] Site Protégé Stanford University
http://protege.stanford.edu/
[WP] Site Wikipédia
http://wikipedia.org
Glossaire
APRIORI : Algorithme de recherche des items fréquents et règles d’association [AS-1995]
AVAL/ SH : Branche AVAL de la Compagnie nationale SONATRACH
Bup : Produit commercialisé Bupro (composé Butane/Propane)
C2 : Produit commercialisé Ethane.
C3 : Produit commercialisé Propane (C3AT à haute température pour les camions citernes et
C3BT à basse température pour les navires)
C4 : Produit commercialisé Butane (C4AT à haute température pour les camions citernes et
C4BT à basse température pour les navires)
C5 : Produit commercialisé Condansat
CRM (Customer Relationship Management): gestion des relations clients
ECD : Processus d’Extraction de Connaissances à partir de Données.
GLxZ/K : Unité N° x pour la production du Gaz Naturel Liquéfier (GL1Z, GL2Z, GL1K).
GNL (Gaz Naturel Liquéfié) : Produit commercialisé par les unités GLxZ.
GPAO : Gestion de la Production Assistée par Ordinateur (sous système d’information de la
production). De même la GMAO, GSAO, GFAO, GLAO pour la Maintenance, Personnel ,
Finances et Logistique respectivement.
GPxZ : Unité N° x pour la production du Gaz Propane Liquéfier (GP1Z et GP2Z).
GPL (Gaz Propane Liquéfié) : Produit commercialisé.
ITEM : Article, attribut, littéral appartenant à un ensemble fini d’éléments distincts.
ITEMSET (MOTIF): ensemble d’items.
KDD (Knowledge Discovery in Databases): processus de découverte de connaissances à partir
de données.
OLAP (On Line Analytical Processing) : système basé sur un processus de consolidation des
données (Data Warehouse) destiné à l’analyse multidimensionnelle.
OLTP (On Line Transactionel Processing): système basé sur un processus de saisie des
données (base de production).
PRONTODAM : Logiciel développé en Java pour la génération des règles d‘association
guidée par les ontologies et les schémas de règles.
Téléchargement