Tải bản đầy đủ (.pdf) (57 trang)

RÉALISATION D’UN MODÈLE DE FILTRAGE DE DONNÉES

Bạn đang xem bản rút gọn của tài liệu. Xem và tải ngay bản đầy đủ của tài liệu tại đây (1.99 MB, 57 trang )

UNIVERSITE NATIONALE DU VIETNAM, HANOI
INSTITUT FRANCOPHONE INTERNATIONAL

POLLA DE NDJAMPA Félix-Bazin

RÉALISATION D’UN MODÈLE DE FILTRAGE DE DONNÉES
THIẾT LẬP MỘT MÔ HÌNH LỌC DỮ LIỆU

MEMOIRE DE FIN D’ETUDES DU MASTER INFORMATIQUE

HANOI – 2015



ATTESTATION SUR L’HONNEUR
J’atteste sur l’honneur que ce mémoire a été réalisé par moi-même et que les
données et les résultats qui y sont présentés sont exacts et n’ont jamais été publiés
ailleurs. La source des informations citées dans ce mémoire a été bien précisée.

LỜI CAM ĐOAN
Tôi cam đoan đây là công trình nghiên cứu của riêng tôi.
Các số liệu, kết quả nêu trong Luận văn là trung thực và chưa từng được ai
công bố trong bất kỳ công trình nào khác. Các thông tin trích dẫn trong Luận văn
đã được chỉ rõ nguồn gốc.

Signature de l’étudiant

POLLA DE NDJAMPA Félix-Bazin


Table des matières.......................................................................................................... iii


Remerciements ................................................................................................................ v
Résumé ........................................................................................................................... vi
Abstract ......................................................................................................................... vii
Liste des figures ........................................................................................................... viii
Liste des tableaux ........................................................................................................... ix
Introduction ..................................................................................................................... 1
Chapitre 1 ........................................................................................................................ 3
Synthèse bibliographique ................................................................................................ 3
Contexte : .................................................................................................................... 3
1.1. Langages de représentation des connaissances ............................................ 3
1.1.1

Graphe conceptuel ...................................................................................... 4

1.1.2

Langage du Web Sémantique ..................................................................... 4

1.1.3

Tableau comparatif des GC et OWL2 ........................................................ 5

1.2. L’apprentissage automatique ......................................................................... 6
1.2.1

Généralités sur la programmation logique inductive (PLI) ....................... 7

1.2.2

Apprentissage sur des ontologies (OWL) ................................................... 8


1.2.2.1. DL-Foil ................................................................................................ 9
1.2.2.2. DL-Learner ........................................................................................ 10
1.2.2.3. YINYANG (Yet another INduction Yields to ANother
Generalization) .................................................................................................. 12
1.2.2.4. Tableau comparatif ............................................................................ 13
Conclusion ................................................................................................................ 14
Chapitre 2 - Apports...................................................................................................... 15
Approche méthodologique ............................................................................................ 15
2.1. Etape de génération du modèle de situation .................................................... 16
2.2. Étape1 : Modélisation de la base de connaissance .......................................... 17
2.3. Étape 2 : Extraction d’exemples positifs ......................................................... 18


2.4. Étape 3 : Apprentissage ................................................................................... 19
2.4.1

Définition de quelques notions ................................................................. 21

2.4.2

Définition de l’opérateur de raffinement .................................................. 22

2.4.3

Propriétés de l’opérateur de raffinement ................................................. 24

2.4.4

Preuve des propriétés de l’opérateur de raffinement ............................... 25


2.4.5

Algorithme d’obtention de modèles .......................................................... 26

Conclusion ................................................................................................................ 28
Chapitre 3 ...................................................................................................................... 29
Expérimentation et analyses des résultats .................................................................... 29
3.1.

Présentation des cas d’étude ..................................................................... 29

3.1.1.

Scénario d'apprentissage .................................................................... 29

3.1.2.

Les paramètres d’expérimentations ................................................... 30

3.1.3.

Critères d’évaluation .......................................................................... 31

3.2.

Résultats d'expérimentations et interprétations ........................................ 31

3.2.1.


Résultat du scénario 1 ........................................................................ 32

3.2.2.

Interprétations des résultats du scénario1 ......................................... 33

3.2.3.

Résultat du scénario 2 ........................................................................ 34

3.2.4.

Interprétations des résultats du scénario 2 ........................................ 36

Conclusion .................................................................................................................... 38
Perspectives................................................................................................................... 39
Références ..................................................................................................................... 41
ANNEXES A : Présentation de tous les modèles de situation du scénario 1 .............. 44
ANNEXES B : Opérateur de DL learner ...................................................................... 47

iv


Nous tenons à saisir cette occasion pour adresser nos profonds remerciements
et notre profonde reconnaissance à :
§ Mme Claire LAUDY, Mme Gaëlle LORTAL et Mme Yue MA, pour leurs
précieux conseils et leurs orientations tout au long de notre recherche.
§ Tout le personnel du laboratoire LRASC de Thales Research & Technology et
celui du laboratoire LRI - Equipe LaHDAK pour leur assistance sur le lieu de
stage

§ Tous les professeurs de l’IFI, qui ont assuré notre formation durant ces deux
dernières années
§ Enfin, j’adresse mes plus sincères remerciements à ma famille, qui m’a toujours
soutenue et encouragée au cours de la réalisation de ce mémoire

Je remercie les personnes qui ont, à des degrés divers, contribué à l’aboutissement
de ce travail

v


L'étude qui est proposée dans ce mémoire s'intéresse aux problèmes
d’acquisition et d'exploitation de bases de connaissances structurées de grande taille,
en vue d'appuyer le processus décisionnel dans des domaines aéronautique et aussi
d'améliorer celui de la fusion d'information qui est proposée dans (Claire et al .,
2007). Dans le cadre précis de nos travaux, nous sommes attachés à l'exploitation des
bases de connaissance afin de déterminer des comportements communs que présente
un ensemble de données. Notre approche est divisée en 4 étapes : concevoir la base de
connaissance, extraire des observations, apprendre ou inférer des connaissances à
partir de ces observations et enfin générer des modèles de situation. Le modèle de
situation est un ensemble d’informations qui décrit au mieux une situation précise ou
un ensemble d’observations en d’autre terme le modèle de situation est une extraction
des informations pertinentes correspondant à des observations dans une base de
connaissance. La conception de système à bases de connaissances capable de réaliser
les fonctions de raisonnements constitue à l’heure actuelle un champ de recherche en
intelligence artificielle.
L'approche que nous avons proposée au cours de notre stage consiste à créer et
enrichir une base de connaissances structurée reposant sur le paradigme des données
liées aux formalismes du Web Sémantique (OWL2) et aux graphes conceptuels.
Ensuite, un algorithme d'apprentissage fondé sur la Programmation Logique Inductive

(PLI) est proposé pour déterminer les informations communes et pertinentes pour un
groupe de données. La sortie de l’algorithme est donc qualifiée de modèles de situation
Les résultats obtenus par notre approche sont satisfaisant au dire d'expert et en
plus, l’algorithme proposé réussit à déterminer des modèles de situation dont la
précision sur d’autres données est très proche de la précision du modèle obtenu
(différence de 4%). Ces résultats constituent une avancée pour une proposition des
modèles de situation aux utilisateurs. Mais d’autres améliorations sont à prendre en
compte afin de raffiner les modèles de situation obtenus. Comme améliorations, on
peut prendre en compte l’évolution de l’ontologie ou d’autres ontologies. On peut
aussi proposer un nombre réduit de modèles de situation afin de permettre une
meilleure couverture de tous les exemples d’apprentissage.
Mots clés : Ontologie, programmation logique inductive, fusion d'information

vi


In this work, we focus on the acquisition and exploitation of large structured
knowledge bases problems for supporting the decision making process in the
aeronautics fields. We also focus our study on the improvement of information fusion
method proposed by (Claire et al., 2007). Particularly, we worked on the exploitation
of the knowledge databases in order to determine the common behavior of a set of
data. Our proposed approach is divided into four steps: design the knowledge
databases, retrieve observations, learn or infer knowledge from these comments, and
finally generate situation models. The situation model is a set of information that best
describes a particular situation or set of observations. In other words, the situation
model is the extraction of relevant information that corresponds to some observations
in the knowledge database.
The design of knowledge system that be able to perform reasoning function is a
challenging field of research in artificial intelligence. The aim of our proposed
approach is to create and enhance a structured knowledge database that belong to the

data paradigm related to the Semantic Web formalisms (OWL2) and conceptual
graphs. Then, we proposed a learning algorithm based on the Inductive Logic
Programming (ILP) in order to determine the common information for a data group
(situation model).
The results of our approach are satisfying according to the expert and in
addition, the proposed algorithm is able to identify situation models whose accuracy
on other data is very close to the accuracy of the resulting model (difference of 4
percents). These results represent a breakthrough for a proposal of situation models to
users. But other improvements are considered in order to refine the situation models
obtained. As improvements, we can take into account the evolution of ontology or
other ontologies. One can also provide a reduced number of situation models to enable
better coverage.

Keywords: Ontology, inductive logic programming, information fusion

vii


Figure 1: Exemple de graphe conceptuel ........................................................................ 4
Figure 2 : Résultats expérimentaux de DL-Foil en termes de mesures IR standards:
moyennes ± écart type [min ;max]................................................................................ 10
Figure 3: Architecture de DL learner ............................................................................ 11
Figure 4: Étape de génération de modèle de situation .................................................. 16
Figure 5: Visualisation graphique de l’ontologie ASRS .............................................. 18
Figure 6: Exemple de requête SPARQL ....................................................................... 19
Figure 7: Résultat de DL learner avec comme exemple <<Les incidents ambigus>> . 20
Figure 8: Opérateur utilisé pour le langage de l'opérateur de raffinement ................... 23
Figure 9: Définition de l'opérateur de raffinement ....................................................... 23
Figure 10: Illustration d'une recherche par raffinement d'opérateur ............................. 24
Figure 11: Illustration de la redondance de ࣋ ՝ ............................................................ 26


Figure 12: Exemple de requête SPARQL correspondant au scénario 1 ....................... 30
Figure 13: Exemple de requête SPARQL correspondant au scénario 2 ....................... 30
Figure 14: Différence d’exactitude entre les données d'apprentissage et celle de tests
(Scénario1) .................................................................................................................... 34
Figure 15: Différence d’exactitude entre les données d'apprentissage et celle de tests
(Scénario2) .................................................................................................................... 37

viii


Tableau 1: Comparaison GC et OWL2 ........................................................................... 6
Tableau 2: Comparaison DL-learner, DL-foil et YINYANG ...................................... 13
Tableau 3: Description concernant l'ontologie utilisée pour les expérimentations ...... 29
Tableau 4: Paramètres d'entrée pour la génération de modèles de situation ................ 31
Tableau 5: Résultats d'apprentissage du scénario 1 ...................................................... 32
Tableau 6: Modèles de situation du scénario1 .............................................................. 33
Tableau 7: Résultats d'apprentissage du scénario 2 ...................................................... 35
Tableau 8: Modèles de situation du scénario 2 ............................................................. 36

ix


Introduction

Le monde d’aujourd’hui est marqué par la présence de masses de
données dont l’exploitation peut affecter de façon profonde grand nombre de
secteurs (de l’e-commerce à la recherche scientifique en passant par la finance
et la santé). Les organismes, les entreprises, les particuliers ont généralement en
leur possession un grand nombre de données et arrivent rarement à bien les

exploiter. Afin d’être capable d’extraire des informations dans ces bases de
connaissances, on fait généralement appel aux experts et ingénieurs pour
structurer et exploiter les données.
L'exploitation de ces immenses masses de données nécessite des
techniques sophistiquées visant à extraire l'information pertinente. Le
mécanisme d’extraction d’informations pertinentes est porteur de nombreux
défis qui requièrent une approche interdisciplinaire (statistiques numériques,
apprentissage statistique ou machine learning). Ces approches vont de l’analyse
de données exploratoires aux techniques les plus sophistiquées comme
l’inférence et la classification. En général une vaste palette de méthodes
statistiques mathématiques et d’apprentissage est mobilisée pour parvenir à
mieux exploiter les données.
Ainsi, l’objectif de notre étude est de proposer une approche permettant
de générer un modèle d’extraction des informations pertinentes dans une base
de connaissance. Dans ce document, ce modèle sera appelé modèle de situation
car les informations extraites doivent décrire une situation correspondant à une
réelle expertise.
C’est dans cette optique que s’inscrit mon stage intitulé : « Réalisation
d’un modèle de filtrage de données ».
Les différentes tâches à accomplir sont les suivantes :
-

Modélisation ontologique d’une base de données existante ;
Création d’un algorithme pour générer un modèle de situation ;
Evaluation du modèle de situation créé sur des données des cas
d’utilisation.

Notre travail s’inscrit en effet dans le cadre de la fusion d’information
qui est l’un des thèmes de l’équipe du LRASC et dont l’objectif est d'améliorer
la connaissance du monde observé pour le décrire du mieux possible pour

l’utilisateur. Le modèle de situation sera ajouté comme entrée dans le processus
1


de fusion (Fossier, et al., 2013). Le travail effectué au cours de cette étude s’est
déroulé au sein du LRASC (Laboratoire Raisonnements et Analyses dans les
Systèmes Complexes) à Thales Research &Technology et du laboratoire LRI
(Laboratoire de Recherche en Informatique) de l’université Paris-Sud, équipe
LAHDAK dont les travaux portent sur des propositions d’infrastructures
adaptées à la gestion de données et de connaissances massives et hétérogènes
plus ou moins complexe.
Pour rendre compte du travail effectué tout au long de cette étude, nous
avons rédigé ce rapport qui s’organise en trois sections. Dans la section 1, nous
ferons une synthèse bibliographique du domaine d’étude. Dans la section 2,
nous présentons l’approche proposée pour la réalisation du modèle de filtrage
ou encore pour l’obtention de modèles de situation. Dans la section 3, nous
présentons les résultats d’expérimentations et les analysons. Enfin, nous
concluons ce rapport par le bilan des apports de notre contribution ainsi que par
la présentation rapide de quelques perspectives ouvertes par notre travail.

2


Contexte :
Nos travaux s’inscrivent dans le domaine plus large de la fusion
d’information. Le terme « fusion d’information » est apparu dans les années 90
dans le but de gérer et de mettre en correspondance un ensemble d’informations
provenant des données multi-sources et à les exploiter. Depuis quelques années
de nombreux algorithmes de fusion ont été développés pour les applications
dans des domaines tels qu’intelligence artificiel, imagerie satellitaire et aérienne

...
Cependant, pour pouvoir appliquer ou utiliser des algorithmes de fusion,
les experts de domaines doivent filtrer de leur base de connaissance, les données
qui sont les plus significatives avant d’effectuer le processus de fusion. Ces
données significatives sont celles qu’on qualifie de modèle de situation. Le
modèle de situation est ensemble de données structurées qui décrit des
observations d’un utilisateur afin de lui donner une meilleure compréhension.
En d’autres termes, le modèle de situation est une structure qui permet de
décrire au mieux possible ce qu’ont en commun un ensemble de données.
Avant de pouvoir obtenir le modèle de situation, il est important de
trouver un formalisme de représentation des données et une méthode pour
extraire les informations communes.
Dans cette section, nous présentons quelques notions importantes en
relation avec notre domaine d’étude à savoir : les langages de représentation de
connaissance et l’apprentissage.

1.1. Langages de représentation des connaissances
La représentation des connaissances est une discipline de l’IA destinée à
représenter et à organiser un ensemble de connaissance dans le but de la
partager, d’interroger et même de raisonner (combiner un ensemble
d’informations préalablement connues afin obtenir une information qui en
découle). La problématique de la recherche en représentation des connaissances
est de fournir des modèles formels de représentation qui permettent d’une part,
de modéliser facilement la connaissance et d’autre part, d’exploiter cette
connaissance lors de la résolution d’un problème donné. Plusieurs formalismes
de représentation existent mais dans cette partie nous nous intéressons qu’aux
3


formalismes qui nous permettrons à faire des raisonnements logiques sur les

connaissances à savoir graphe conceptuel et le langage OWL.
1.1.1

Graphe conceptuel

Le modèle des graphes conceptuels (GCs) est un modèle formel de
représentation des connaissances fondé sur la description de concepts qui est
introduit dans (Sowa, 1984). Les connaissances exprimées dans ce modèle se
structurent en deux niveaux : un niveau terminologique encore appelé support
ou vocabulaire est principalement composé d’un treillis de concepts et d’un
ensemble ordonnée de relations conceptuelles. Le second niveau est dit
assertionnel ou factuel et permet décrire les faits ou observations par des
graphes cela en se basant des éléments du niveau terminologique. Plusieurs
extensions de ce modèle ont été proposées chacun dans le but d’enrichir la
méthode de représentation de connaissance (les types conjonctifs, les règles, et
des contraintes). Le modèle des graphes conceptuels, s’appuie sur une
représentation graphique des connaissances et permet le raisonnement. Le
raisonnement étant réalisé par des algorithmes de graphes (principalement la
recherche d’isomorphisme de graphe). Il dispose en plus d’une fonction
d’interprétation logique qui permet de doter le modèle d’une sémantique
formelle. Ainsi tout graphe conceptuel peut être représenté en logique de
description du premier ordre.
Un graphe conceptuel est un graphe biparti orienté dans lequel les nœuds
(concept et relation) sont liés par des arcs orientés
Type Concept: Marqueur

relation

Type Concept: Marqueur


Figure 1: Exemple de graphe conceptuel

1.1.2

Langage du Web Sémantique

Les ontologies sont apparues au début des années 90 en ingénierie des
connaissances, dans le cadre des démarches d’acquisition des connaissances
pour les systèmes à base de connaissances. Dans ce contexte, les chercheurs ont
proposé de fonder ces connaissances sur la spécification d’une ontologie,
ensemble structuré par différentes relations entre des objets du domaine dont
l’élaboration relève du choix du modélisateur. Les ontologies fournissent une
capacité de stocker les connaissances générales, d’une manière qui est
compréhensible à la fois par les humains et les ordinateurs. Nous ne considérons
qu’un sous-ensemble des ontologies : les ontologies OWL, permettant la
4


production d’inférences de nouvelles données à partir des données déjà
présentes dans la base. Ces ontologies contiennent entre autre des axiomes
permettant de spécifier des contraintes d’appartenances des individus à une
classe.
OWL2 est une recommandation du consortium du W3C. Il vise
également à rendre les ressources sur le Web aisément accessibles aux
processus automatisés en les structurant d’une façon compréhensible et aussi en
leur ajoutant des méta-informations (McGuinness & Harmelen, 2004). Pour
cela, OWL offre des moyens puissants pour exprimer la signification et la
sémantique que XML, RDF, et RDF-S n’offrent pas. OWL ajoute des
vocabulaires pour la description des propriétés et des classes, des relations entre
classes, des cardinalités, des caractéristiques de propriétés (symetry), et des

classes énumérées. Tandis que RDF-S permet de définir seulement la hiérarchie
entre les classes et propriétés. OWL a été donc développé comme une
extension du vocabulaire de RDF. De plus, à l’aide nombreux plugin (OWL
Api, Jena API) OWL permet l’intégration des ontologies c’est à dire permet la
construction de nouvelle ontologie à partir de zéro ou à partir d’autre déjà
existante, elle permet l’utilisation des ontologies dans les applications et enfin
elle permet la fusion de plusieurs ontologie en une seule.
1.1.3

Tableau comparatif des GC et OWL2

Dans (Raimbault, 2008) ces deux formalisent bien qu’ils soient
similaires à la logique de description, ils ont des différences. La plus notoire est
au niveau d’expressivité des connaissances. Par exemple la notion de
complémentarité est partiellement définie en graphe conceptuel tandis que celle
d’énumération ne l’est pas. D’après le tableau ci-dessous, on peut remarquer
que pour la représentation des connaissances en OWL offre un vocabulaire le
plus riche. Ainsi, la majorité des notions d’un système sont donc généralement
(totalement) instanciables dans les modélisations basées sur OWL2.
Graphe conceptuel

OWL2

Classe

Oui

Oui

Sous classe


Oui

Oui

Relation

Oui

Oui

Notions

5


Individus

Oui

Oui

Equivalence

Oui

Oui

Intersection


Oui

Oui

Union

Oui

Partiellement

Complément

Oui

Partiellement

Enumération

Oui

Non

Restriction de cardinalité

Oui

Partiellement

Tableau 1: Comparaison GC et OWL2
Après avoir fait une brève présentation des formalismes de

représentation de connaissances reposant sur le paradigme des données liées tel
que la technologie du Web Sémantique « OWL » et les graphes conceptuels,
nous présentons des méthodes qui permettent d’inférer des connaissances à
partir des bases de connaissances.
1.2. L’apprentissage automatique
L'apprentissage automatique (machine learning en anglais), champ
d'étude de l'intelligence artificielle qui concerne la conception, l'analyse, et
l'implémentation de méthodes permettant à une machine d'évoluer par un
processus systématique. Grace à l’apprentissage, la machine devient capable de
remplir des tâches difficiles ou impossibles à remplir par des moyens
algorithmiques plus classiques. L’objectif de l’apprentissage automatique est de
produire automatiquement des règles. Plusieurs méthodes sont utilisées pour y
parvenir: les arbres de décision, la programmation génétique, les réseaux de
neurones, la programmation logique inductive. Dans cette partie nous nous
intéressons seulement à l’apprentissage en logique de description puisque le
formalisme de représentation de connaissances est aussi lié à la logique de
description.

6


1.2.1

Généralités sur la programmation logique inductive (PLI)

La Programmation Logique Inductive ou PLI (en anglais Inductive Logic
Programming, ILP) peut se définir comme étant à l'intersection de
l'apprentissage automatique et de la programmation logique. L'apprentissage
automatique, et plus précisément de l'apprentissage inductif, permet de
développer des outils et des techniques permettant d'induire des hypothèses et

de synthétiser de nouvelles connaissances à partir de l'expérience.
La PLI hérite d'un langage de représentation des connaissances palliant
les limitations des approches non logiques de l'induction (en particulier
l'absence de prise en compte d'une théorie du domaine) et les techniques et
théories bien établies de ce domaine. La Programmation Logique Inductive
avait à l'origine pour objectif l'inférence de programmes logiques à partir
d'observations et relativement à une théorie du domaine. Son application s'étend
aujourd'hui à l'apprentissage de concepts en logique de description.
Formellement, la programmation logique inductive est une combinaison
de l’apprentissage automatique et de la programmation en logique. Elle est
décrite de la façon suivante (Lavrac & Dzeeoski, 1994) :
Entrées : Trois ensembles࡮, ࡱା et ࡱି avec
· Une base de connaissance
· Un ensemble d’exemples
· Un ensemble de contre -exemples


ࡱା
ࡱି

Sortie : Trouver une hypothèse H vérifiant les propriétés suivantes
· La complétude
· La consistance

۶ ٪ ࢋ‫ࡱ א ܍׊‬ା

۶ ‫ିࡱ א ܍׊ࢋ ٮ‬

On cherche donc à trouver une hypothèse H qui permet d’expliquer au
mieux les exemples positifs, tout en rejetant au maximum les exemples négatifs.

Elle se base souvent sur l’utilisation d’autres techniques liées à la
programmation logique comme la substitution, la spécialisation, la
généralisation, l’unification et la résolution.
La complexité d’apprentissage d’une nouvelle hypothèse dépend du
langage de la logique qui est choisi (Franz Baader, 2003). Plus le langage est
complet, plus la complexité est grande.

7


En programmation logique inductive, on distingue trois grandes
approches pour l’apprentissage d’hypothèses. La première approche, dite
descendante ou top-down, consiste à partir d’une hypothèse générale et aller
vers une hypothèse plus spécifique en respectant les règles définies dans la base
de connaissances. Cette approche a pour principale but d’induire une nouvelle
hypothèse. Dans la littérature, on a plusieurs systèmes qui sont développés avec
cette approche : CIGOL (Muggleton & Buntine, 1992), CLINT (De Raedt,
1992), GOLEM (Muggleton & Feng, 1990), ALEPH (Srinivasan, version4)
La seconde approche (bottom-up) qui est "l’inverse" de la première,
consiste à partir d’une hypothèse plus spécifique et se diriger vers une
hypothèse générale. Elles sont généralement implémentées à l’aide des
méthodes comme Least Subsumer Common et Most Specific Concept (Cohen
et al., 1992). ࡸࡿ࡯ሺ࡯૚ǡ Ǥ Ǥ Ǥ ࡯࢔ሻ ൌ ࡯ où ‫ ܥ‬est le concept le plus spécifique qui
subsume tous les Ci (c’est à dire‫ܥ׊‬௜ ‫ א‬ሼ‫ܥ‬ଵ ǡ ǥ ǡ ‫ܥ‬௡ ሽǡ ‫ܥܽ݊݋‬௜ ‫ك‬
‫ ܥ‬ሺ‫ܥ݁݉ݑݏܾݑݏܥ‬௜ ሻ.

Cette approche est utilisée par des systèmes tels que : FOIL (Quinlan,
1995), PROGOL (Muggleton, 1995), CLAUDIEN (De Raedt & Dehaspe,
1996).
Et la troisième approche est juste une combinaison des deux précédentes

et on la retrouver dans le système PROGOLEM (Muggletton et al., 2010)
Le véritable problème en programmation logique inductive est la
définition de l’espace de recherche des hypothèses. L’espace de recherche
d’hypothèses représente toutes les hypothèses existantes dans une base de
connaissance. Ainsi il est important de choisir et d’utiliser une méthode ayant
une complexité raisonnable afin toutes ces hypothèses. Le parcours de l’espace
de recherche est généralement effectué par le biais de l’opérateur de
subsomption. Chaque méthode de PLI diffère les unes des autres par deux
grands facteurs, la taille de l’espace de recherche et la qualité de l’hypothèse
trouvée (hypothèse couvrant au mieux les exemples positifs et aucun exemple
négatif).
1.2.2

Apprentissage sur des ontologies (OWL)

Trois principaux algorithmes de la PLI permettent l’apprentissage sur des
ontologies OWL à savoir DL-FOIL (Fanizzi, 2008), DL-Learner (Lehmann et
al., 2011) et YINYANG (Luigi et al., 2005). Dans cette sous-section, nous
présentons ces trois algorithmes et nous faisons une étude comparative afin de
trouver lequel est mieux adapté pour résoudre notre problème.
8


1.2.2.1.

DL-Foil

DL-Foil est une approche d’apprentissage des concepts en logique de
description ALC et elle est proposée dans (Fanizzi, 2008), Le principe de cette
approche est de commencer avec une règle très générale Ensuite la spécialise en

ajoutant des hypothèses jusqu’à ce que la règle ne couvre plus aucun exemple
négatif. Les grandes étapes de cette idée sont :
· La première étape consiste à définir l’opérateur de raffinement qui est un
opérateur non complet pour la grande expressivité de la logique de
description d’après les propriétés de raffinement d’opérateur (Hitzler &
Lehmann, 2008). Ensuite par le biais de cet opérateur, la méthode
effectue des spécialisations dans le but d’obtenir des hypothèses qui ne
couvrent aucun exemple négatif ou du moins qui en couvrent très peu
(inférieur à un seuil). Ceci marque la condition d’arrêt de l’algorithme.
· La deuxième étape consiste à choisir l’hypothèse où le concept ayant la
plus grande fonction de gain. Cette fonction est définie par :
‫ͳ݌‬Ǥ ቂ݈‫݃݋‬

௣ଵା௨ଵ௪ଵ

௣ଵା௡ଵା௨ଵ

െ ݈‫݃݋‬

௣଴ା௨଴௪଴

ቃ Où

௣଴ା௡଴ା௪଴

§ ‫ͳ݌‬ǡ ݊ͳ݁‫ ͳݑݐ‬représentent respectivement le nombre d’exemples positif,
négatif et non marqué couverts par la spécialisation.
§ ‫Ͳ݌‬ǡ ݊Ͳ݁‫ Ͳݑݐ‬représentent respectivement le nombre d’exemples positif,
négatif et non marqué couverts par l’ancienne définition.
§ w0, w1 sont déterminés par la probabilité a priori des exemples positifs,

respectivement dans la définition actuelle et l'ancienne définition.
L’idée est de conserver une seule hypothèse et de la modifier pour
conserver la compatibilité avec les exemples.
· La troisième et dernière étape est celle de spécialisation. Cette étape
consiste à effectuer des appels des services du raisonneur dans le but de
rechercher les subsomption et des vérifications des instances. Ces
opérations se font en une complexité de P-space1.
Les résultats d’expérimentation montre que, en évaluant les résultats en
utilisant la notion de précision/rappel, on a des résultats (autour de 65%) mais
pas assez élevé (fig.2). La principale raison est due à l’hypothèse de monde
ouvert qui ne peut pas dire qu'une chose n'existe pas tant qu'il n'a pas été
explicitement statué qu'elle n'existait pas. Un autre résultat d’expérimentation
est que les concepts appris se chevauchent totalement avec les requêtes et par
conséquent, les concepts retournés ont une certaine familiarité avec les

1

P-SPACE est la classe des problèmes qui peuvent être résolus en espace polynomial sur une machine
déterministe. (encyclopédie Wikipédia)

9


ontologies choisies. Notons toutefois que la définition incomplète de l’opérateur
de raffinement ne permet pas de couvrir ou d’avoir tous les concepts possibles
de l’espace de recherche.

Figure 2 : Résultats expérimentaux de DL-Foil en termes de mesures IR
standards: moyennes ± écart type [min ;max]
1.2.2.2.


DL-Learner

DL Learner est un framework développé en Java pour l’apprentissage en
logique de description des données provenant des fichiers OWL, fichier NTriple, SPARQL end points). C’est un framework qui utilise l’approche ILP
donc pour un ensemble d’exemples (positifs et négatifs), il trouve une
expression de classe OWL couvrant au mieux les exemples. Les résultats
fournis par DL learner sont les plus réduits possibles et faciles à comprendre par
les experts du domaine. DL Learner prend en compte beaucoup d’autres aspects
pour l’apprentissage par exemple les données provenant de sparql endpoints2,
ou des N-triples. Il contient aussi des raisonneurs (aussi des raisonneurs flous
(Lehmann & Iglesias, 2011)) propres à lui qui facilitent la réduction de l’espace
de recherche des hypothèses. Notons que les résultats d’apprentissage sont
retournés en logique ALCN.
DL learner est constitué de 4 principaux composants (fig.3)
-

2

Le composant de source de connaissance qui définit tous les formats de
type de données pris en compte par le système.
Le composant « problème d’apprentissage » : composant dans lequel on
spécifie le type d’apprentissage souhaité. Il peut s’agir un apprentissage
avec exemples positifs seulement, un apprentissage avec exemples
positifs et négatifs ou d’un apprentissage de définition de concepts.

www.w3.org/wiki/SparqlEndPoints

10



-

-

Le composant « algorithme d’apprentissage » est celui dans lequel est
développé tous les algorithmes d’apprentissage et dont CELOE (Class
Expression Learning for Ontology Engineering) est celui qui nous
intéresse.
Le composant « service de raisonneur » : c’est dans ce composant que
tous les algorithmes de raisonneurs sont disponibles. Il offre la
possibilité d’inclure les raisonneurs tels que : Pellet, FaCT++, KAON2,
et Racer Pro.

Figure 3: Architecture de DL learner
L’idée est la même que dans les approches top-down. Pour chaque nœud
de l’espace de recherche, on calcule le score qui est donné par

11


Le nœud ayant la plus grande valeur d’exactitude (‘accuracy’) est choisi et
l’algorithme continue jusqu'à trouver une hypothèse la meilleure hypothèse
possible. Au cas où il n’y a pas d’hypothèse ayant une exactitude de 100%, le
critère de temps est utilisé pour stopper l’exécution de l’algorithme.

Ø Algorithme
L’apprentissage d’un concept va consister à mettre à jour l’espace de
recherche (Lehmann & Hitzler, 2010) et de calculer le score de ces nœuds
ajoutés après raffinement. Le nœud ayant le plus grand score est exploré. Ce

processus s’arrête lorsqu’on obtient une exactitude (‫ ݍ‬൒ ȁ‫ ܧ‬ȁ ൈ
‫  א ݐ݅ݑݎܤܿ݁ݒܽݐ݅ݑݎܤ‬ሾͲǢ ͳሿ )

Sachant que les nœuds dans l’espace de recherche sont ordonnés grâce à
l’opération de subsomption, l’algorithme ne s’intéresse qu’au n premiers nœuds
à chaque étape jusqu'à trouver une hypothèse ayant une bonne exactitude. Ce
choix des n premiers nœuds certes diminue la taille de l’espace de recherche
mais empêche d’autres hypothèses de faire partir de la solution.
1.2.2.3. YINYANG (Yet another INduction Yields to ANother
Generalization)
Cette approche a été mise au point dans le but principal d’aider à la
création manuelle des ontologies. En fait le système se base sur des définitions
déjà faites dans l’ontologie pour compléter celle souhaitée. Donc, il prend en
entrée les exemples et aussi une définition de concept qui peut être trop général
ou pas correct et ensuite déterminer une nouvelle définition. Par contre, les deux
12


autres approches précédentes ont la possibilité d’apprendre juste avec des
exemples qui leur sont fournis. Il utilise aussi comme logique de description
ALC. La méthode est la suivante : pour chaque exemple il cherche d’abord le
concept le plus spécifique (MSC=Most Specific Concept) correspondant. Et la
conjonction de ces concepts est utilisée pour désigner des exemples positifs et
négatifs. Ensuite une généralisation est faite sur les exemples tout en la
spécialisant au mieux pour éliminer les exemples négatifs. C’est pourquoi cette
approche est qualifiée d’hybride car une spécialisation et une généralisation
sont faites pour la recherche de meilleure hypothèse.
1.2.2.4.

Tableau comparatif


Nous présentons dans cette partie une petite comparaison des trois
systèmes. D’après le tableau DL learner est le système qui présente le plus
d’avantage comparé aux deux autres.
Algorithme

DL-Learner

DL-FOIL

YINYANG

1 Format de
l’ontologie

OWL/Ntriple/Sparql
endPoints

OWL

OWL

2 Logique de
description

EL/ALCN

ALC

ALC


3 Type
d’apprentissage

Exemple positif et
négatif / Exemple
positif seulement

Exemple
positif et
négatif

Exemple
positif et
négatif

4 Hypothèse retournée Une / plusieurs

Une

Une

5 Caractéristique de
l’espace de
recherche

Top-down

Top-down


Top-down /
bottom-up

6 Système

Disponible/ Opensource

Non
disponible

Disponible

Tableau 2: Comparaison DL-learner, DL-foil et YINYANG

13


En effet, DL Learner permet d’apprendre des nouvelles définitions de
concepts seulement avec des exemples positifs, il retourne des concepts
compréhensibles par les humains, il présente avec plus de détail la définition de
son heuristique qui facilite et réduit le parcours de l’espace de recherche et
pour terminer il est un système open source. Tous ces critères nous ont permis
de le comprendre et de pouvoir définir par exemple l’heuristique nécessaire
pour apprendre seulement les exemples positifs.

Conclusion

En somme, nous avons présenté deux approches de représentation de
connaissances, et trois approches d’apprentissage logique basé sur les
ontologies OWL.

Pour notre problème nous optons donc pour le formalisme OWL pour la
représentation de la base de connaissance et de l’algorithme DL Learner sera
utiliser (modifié) pour obtenir le modèle de situation parce qu’il présente les
avantages telles que décrit dans le tableau2. Comme par exemple, il peut nous
retourner des modèles de situation. Ces modèles de situation ou résultats de DL
learner ne sont pas toujours pas idéale et intéressant pour les utilisateurs. Nous
allons décrire dans le chapitre précédent pourquoi doit-on modifier DL learner
et comment on peut obtenir un bon modèle tout en exploitant certains principes
développées dans DL learner.

14


Dans ce chapitre, nous souhaitons, pour une base de connaissance et un
ensemble d’observation, déterminer ce qu’ont en commun et de pertinent les
différentes observations généralement appelées exemples positifs. Le but final
est de déterminer des modèles de situation. Un modèle de situation est décrit
comme étant un ensemble d'informations pertinent correspondant à une
situation. Notons toutefois qu’une situation est mieux présentée si elle décrit au
maximum tout ce qui est relaté dans les observations de l’opérateur.
Pour résoudre ce problème, nous utilisons l’approche ILP, qui, à partir
d’une base de connaissance K et d’un ensemble d’exemples ‫ ܧ‬ൌ ‫ ܧ‬ା détermine
une hypothèse qui satisfait au mieux tous les exemples positifs.
‫ ܪ‬٪ ݁‫ ܧ  א ݁׊‬ା 

Comme mentionné dans l’état de l’art l’algorithme d’apprentissage de
DL Learner est choisi pour apprendre ou rechercher les concepts qui couvrent le
maximum d’exemples, nous nous focalisons donc sur ce dernier pour proposer
une approche de génération de modèles de situations.
Dans la première partie, nous présentons le processus général choisit

pour l’obtention du modèle de situation, ensuite, nous présentons la
modélisation OWL de la base ASRS, et enfin nous présentons les étapes et
algorithmes de génération de modèles.
Intérêt du modèle proposé
Notre travail vise à concevoir des modèles permettant de donner de
manière automatique une description d’un ensemble de donnée provenant d’une
base de connaissance.
Ces modèles permettront de comprendre et voir les points de similarité
entre les différents exemples choisis. Ils seront donc utilisés par les experts pour
des prises de décision par rapport au phénomène observé. Ils seront aussi
utilisés comme paramètre d’entrée dans le processus de fusion d’information.

15


×