Ontologies et Fouille de Données pour un Web plus sémantique:

publicité
Ontologies et Fouille de Données pour un
Web plus sémantique:
application à la construction et l’’évolution
d’’ontologies, et à la personnalisation web
Marie-Aude Aufaure (SUPELEC & INRIA/Axis)
16/04/2008
Séminaire Ecol'IA - MA Aufaure
1
Plan
Présentation ECOL’’IA
„
„
„
Introduction : Web sémantique - ontologies
Construction et évolution d’’ontologies
Apprentissage d’’ontologies :
‰
‰
‰
„
Personnalisation web
‰
„
Typologie des méthodes
Application des techniques web content/structure
mining
synthèse
Ontologies et web usage mining
Conclusion
16/04/2008
Séminaire Ecol'IA - MA Aufaure
2
Introduction
Web Sémantique - Ontologies
16/04/2008
Séminaire Ecol'IA - MA Aufaure
3
Introduction : web sémantique - ontologies
Motivations
„
„
Le web contient un grand volume de données
mais mal exploité
‰ Problème de la pertinence des résultats d’’une
recherche
Aller vers un web plus intelligent :
‰
‰
‰
Exploiter les connaissances, les métadonnées
Offrir des services nouveaux, plus élaborés
Améliorer la recherche d’’information
16/04/2008
Séminaire Ecol'IA - MA Aufaure
4
Introduction : web sémantique - ontologies
Web Sémantique
„
„
„
Web dont le contenu peut être appréhendé et exploité
par des machines, complémentant le contenu informel
du web actuel avec de la connaissance formalisée
le web sémantique pourra fournir des services plus
aboutis à ses utilisateurs (trouver l'information
pertinente, sélectionner, localiser et activer le service
nécessaire...).
Il peut faire cohabiter plusieurs degrés de formalisation :
des schémas de métadonnées figés (Dublin Core) à des
langages de représentation plus complexes (OWL)
16/04/2008
Séminaire Ecol'IA - MA Aufaure
5
Introduction : web sémantique - ontologies
La vision du web sémantique
„
„
„
„
„
Différents langages pour décrire, exploiter et
raisonner sur les contenus des ressources
Des connaissances qui s’’appuient sur des
ontologies
Utilisation de métadonnées
Intégration automatique d’’informations
provenant de sources de données
hétérogènes
Utilisation et combinaison automatique de
services web
16/04/2008
Séminaire Ecol'IA - MA Aufaure
6
Introduction : web sémantique - ontologies
Le Web aujourd'hui
16/04/2008
Le Web Sémantique
W3C Semantic Web Activity
Marja-Riita Koivunen and Eric Miller, Nov. 2001
Séminaire Ecol'IA - MA Aufaure
7
Introduction : web sémantique - ontologies
Challenges pour le web sémantique
„
„
„
„
„
„
Disponibilité du contenu : faire migrer le web
vers un contenu sémantique
Disponibilité, développement et évolution des
ontologies
Passage à l’’échelle
Multilinguisme
Visualisation
Stabilité des langages du web sémantique
16/04/2008
Séminaire Ecol'IA - MA Aufaure
8
Introduction : web sémantique - ontologies
Les applications
„
Gestion des connaissances
‰
„
„
„
Commerce électronique
Applications médicales
Portails d’’accès à l’’information
‰
„
Acquisition, maintenance et accès
Exemple : application touristique
Services web
16/04/2008
Séminaire Ecol'IA - MA Aufaure
9
Introduction : web sémantique - ontologies
Défis
„
Le web sémantique a un coût :
‰
‰
‰
„
Développer des ontologies
Annoter des pages, des ressources,
Modéliser les besoins utilisateur
Prise en charge de ces coûts
16/04/2008
Séminaire Ecol'IA - MA Aufaure
10
Introduction : web sémantique - ontologies
Origine des ontologies
„
Philosophie :
‰
‰
‰
Ontologie : étude de ce qui est
« Ontos » (être) et « logos » (science, langage)
Essaie de répondre aux questions :
Qu’est ce qui caractérise ce qui est ?
Eventuellement, qu’est-ce qu’être ?
16/04/2008
Séminaire Ecol'IA - MA Aufaure
11
Introduction : web sémantique - ontologies
Origine des ontologies : linguistique
concept
sémantique - sens
réfère
dénote
syntaxe – symboles
terme
monde réel
désigne
référent
kiwi
?
Triangle du sens : Odgen, Richards, 1923
16/04/2008
Séminaire Ecol'IA - MA Aufaure
12
Introduction : web sémantique - ontologies
Qu’’est-ce qu’’une ontologie ?
„
Une description explicite d’’un domaine :
‰
‰
‰
‰
„
concepts
propriétés et attributs des concepts
contraintes sur les propriétés et les attributs
Individus (souvent, mais pas toujours)
Une ontologie définit :
‰
‰
Un vocabulaire commun
Une compréhension partagée
16/04/2008
Séminaire Ecol'IA - MA Aufaure
13
Introduction : web sémantique - ontologies
Ontologie ?
Spécification explicite d’’une conceptualisation [Grüber,93]
„
„
„
•
•
Spécification explicite d’’une conceptualisation partagée
offrant une terminologie et une description formelle de la
sémantique des connaissances d’’un domaine
Rôle : fournir/définir une sémantique d’’un domaine fondée
sur un consensus et permettant de lier le contenu exploitable
par la machine avec sa signification
Contraindre l’’interprétation des objets du domaine (règles,
axiomes)
Le niveau d’’expressivité dépend du langage de
représentation de l’’ontologie
Automatisation de certains raisonnements
16/04/2008
Séminaire Ecol'IA - MA Aufaure
14
Introduction : web sémantique - ontologies
Taxinomie/Thésaurus
„
Vocabulaire contrôlé : ensemble de termes
définis par un groupe
‰
‰
„
Taxonomie : vocabulaire contrôlé organisé sous
forme hiérarchique
‰
‰
„
Relations is-a
Exemple : mammifères sous-classe de vertébrés
Thésaurus
‰
‰
16/04/2008
Pas de signification des termes ni d’’organisation
Exemple : glossaire d’’un livre
Relations sémantiques plus complexes
““controlled vocabulary arranged in a known order and
structured so that equivalence, homographic,
hierarchical, and associative relationships among terms
are displayed clearly and identified by standardized
relationship indicators.”” (ANSI/NISO Z39.19-1993
(R1998), p.1.)
Séminaire Ecol'IA - MA Aufaure
15
Introduction : web sémantique - ontologies
Des exemples
„
Taxonomies sur le Web
‰
„
Catalogues pour les achats en ligne
‰
„
Catégories Yahoo!
Catalogue de produits Amazon.com
Terminologie standard spécifique à un
domaine
‰
16/04/2008
Unified Medical Language System (UMLS)
Séminaire Ecol'IA - MA Aufaure
16
Introduction : web sémantique - ontologies
Pourquoi utiliser des ontologies ?
„
„
„
Scénario 1: Ontologie en tant que spécification
‰ Guider le développement de systèmes opérationnels
‰ Permettre la réutilisation de connaissances pour un ensemble
d’’applications
‰ Faciliter la maintenance logicielle
Scénario 2: Ontologie pour le partage des données
‰ Réduire le coût de développement d’’applications et assurer
l’’interopérabilité
‰ L’’utilisateur accède à un ensemble de données hétérogènes
dans un format unique
Scénario 3: Ontologie pour la recherche d’information
‰ Utilisation d’’une ontologie pour accéder à des ressources
particulières
‰ Vu comme un index pour retrouver de l’’information pertinente
‰ Aider les utilisateurs à formuler une requête
‰ Appariement sémantique entre les requêtes et les documents
16/04/2008
Séminaire Ecol'IA - MA Aufaure
17
Introduction : web sémantique - ontologies
Typologie des ontologies
„
„
„
„
„
Ontologie de haut niveau (top ontology)
Ontologie générique (core ontology)
Ontologie de domaine
Ontologie de tâche
Ontologie d’’application
16/04/2008
Séminaire Ecol'IA - MA Aufaure
18
Introduction : web sémantique - ontologies
Usage des ontologies
••Application Web sémantique
••Recherche d’’information,
indexation
••Annotation, documentation
••Intégration BD et BC
••Application multi-agents
••Interopérabilité
••Ingénierie des SI
••……
16/04/2008
Séminaire Ecol'IA - MA Aufaure
19
Introduction : web sémantique - ontologies
Fouille de Données
„
„
Ensemble de méthodes et techniques dédiées à
l’’extraction de connaissances à partir de données
complexes et volumineuses
Appliquée au web :
‰
Web content mining :
„
„
‰
Web structure mining
„
„
‰
Organisation du contenu web en connaissance
Application : construction d’’ontologies
Exploiter les liens hypertexte
Application : recherche d’’information, indexation, réseaux sociaux
Web usage mining
„
„
16/04/2008
Découvrir des modèles comportementaux et de navigation
Application : personnalisation web
Séminaire Ecol'IA - MA Aufaure
20
Construction et évolution
d’’ontologies
16/04/2008
Séminaire Ecol'IA - MA Aufaure
21
Construction et évolution d’ontologies
Concevoir une ontologie :
„
Abstraire : déterminer quelles
connaissances représenter, avec quel degré
de précision, de granularité, etc.
+
„
Représenter : déterminer le formalisme de
représentation à adopter, représenter les
connaissances dans le formalisme choisi.
16/04/2008
Séminaire Ecol'IA - MA Aufaure
22
Construction et évolution d’ontologies
Les questions qui se posent
„
„
„
„
Quel point de départ ? : rien, ontologies
existantes, corpus de sources d’’information
Quel degré d’’automatisation du processus de
construction ? : entièrement manuel, semiautomatique, automatique
Processus centralisé ou distribué ?
Si plusieurs ontologies : quelles relations
entre l’’ontologie globale et le ontologies
locales ? Comment combiner, intégrer,
fusionner des ontologies ?
16/04/2008
Séminaire Ecol'IA - MA Aufaure
23
Construction et évolution d’ontologies
Les questions qui se posent
„
„
„
„
„
„
Comment trouver les concepts à représenter ?
Lesquels retenir ?
Comment les définir ?
Comment sélectionner les bonnes propriétés ?
Comment regrouper les concepts ?
Quel rôle joue l’’application ?
16/04/2008
Séminaire Ecol'IA - MA Aufaure
24
Construction et évolution d’ontologies
Construction des ontologies
„
Construire et valider
‰
Construction :
„
„
„
‰
À partir de sources humaines
À partir de corpus documentaires textuels ou multimédia
À partir de bases de données semi-structurées
Validation :
„
„
„
16/04/2008
Vérification de la cohérence d’’un point de vue système
Audit des connaissances et validation par les experts
Validation par les utilisateurs
Séminaire Ecol'IA - MA Aufaure
25
Construction et évolution d’ontologies
Processus de développement
16/04/2008
Séminaire Ecol'IA - MA Aufaure
26
Construction et évolution d’ontologies
Cycle de vie
16/04/2008
Séminaire Ecol'IA - MA Aufaure
27
Construction et évolution d’ontologies
Architecture pour la construction et l’’évolution
d’’ontologies
Operationalization
Exploitation
Rule Base (rules et constraints)
Ontological
Level
Meta-conceptualization
Formalization
Domain modelization
from heterogeneous
data sources
Alignment
Integration
16/04/2008
Enrichment & Refinement
Referential Ontology
Concepts, Relations,
Axioms
Assertionnal
Level
Extraction
Enrichment
Refinement
Iterative & Incremental Process
Knowledge-base System
Initial Ontology
Concepts, Relations, Axioms
Fact Base
Change Formulization
Change Analysis
Domain Core-Ontology
Meta-Concepts,
Meta-Relations, Meta-Axioms
Abstraction &
Generalization
Alternative Evaluation
Change
Implementation
Sources
Extractions
Databases
Extraction
Practice Guidelines
Extraction
Terminological Sources
Extraction
Textual Corpora
Extraction
Existing Ontologies &
Medical Standards
Ontology quality
Evaluation
Domain
Ontology
Extraction
Mapping
Séminaire Ecol'IA - MA Aufaure
Change Validation
Ontology Annotation
Evolved Ontology
Concepts, Relations, Axioms
28
Construction et évolution d’ontologies
Construction d’’ontologies
„
Méthodes manuelles :
‰
„
Construction semi-automatique à partir de textes :
‰
‰
„
Gruninger&Fox, Ushold&King, Methontology (GomezPerez&al 03), DOGMA (Jaarar&al 02) On-To-Knowledge
(Staab&al 01)
Approche TERMINAE (Biebow, Aussenac, Szulman)
Apprentissage (Maedche et al)
Construction semi-automatique à partir de bases de
données structurées ou de données semi-structurées
(XML, web)
16/04/2008
Séminaire Ecol'IA - MA Aufaure
29
Construction et évolution d’ontologies
Outils de développement
„
„
„
„
„
„
Protégé2000 (Stanford)
OntoEdit (Karlsruhe)
WebODE (Univers. Madrid)
KAON (Karlsruhe)
Terminae (Paris 8)
……
16/04/2008
Séminaire Ecol'IA - MA Aufaure
30
Construction et évolution d’ontologies
Classification des méthodologies
Les méthodologies de
construction
d’ontologies « from
scratch »
Les méthodologies de
ré-ingénierie
d’ontologies
Les méthodologies de
construction
coopérative
d’ontologies
Les méthodologies d’apprentissage d’ontologies
A partir
du texte
A partir du
dictionnaire
A partir d’une
base de
connaissances
A partir des
données semistructurées
A partir des
schémas
relationnels
Les méthodologies de fusion
d’ontologies
Les méthodologies d’évaluation
d’ontologies
16/04/2008
Les méthodologies d’évolution
d’ontologies
Séminaire Ecol'IA - MA Aufaure
31
Construction et évolution d’ontologies
Méthodologies de construction manuelles
„
„
„
Les premières (Ushold&King, Gruninger&Fox) ont été définies en
1995 dans un but de développement d’’ontologies d’’entreprises
Inspirées par le développement de SBC basés sur la logique du
1er ordre
‰ Élaboration (intuitive) des principaux scénarios
‰ Définition d’’un ensemble de questions en langage naturel,
utilisées pour déterminer le but de l’’ontologie
‰ Ces questions et leurs réponses sont utilisées pour extraire les
principaux concepts, les propriétés, relations et axiomes. La
connaissance est formalisée en logique du 1er ordre.
Base pour la construction et l’’évaluation, mais des aspects
comme l’’intégration, l’’acquisition et des fonctions de gestion
(planification, contrôle, etc.) n’’existent pas.
16/04/2008
Séminaire Ecol'IA - MA Aufaure
32
Construction et évolution d’ontologies
Les méthodologies de
construction d’ontologies
« from scratch »
[GRÜNINGER ET AL., 1995]
[USCHOLD ET KING, 1996]
[USCHOLD ET GRUNINGER,
1996]
« METHONTOLOGY »
[GOMEZ-PEREZ & AL.,1997]
SENSUS [KNIGHT K. ,1997]
ON-TO-KNOWLEDGE
[STAAB ET AL., 2001]
16/04/2008
Séminaire Ecol'IA - MA Aufaure
33
Construction et évolution d’ontologies
METHONTOLOGY
„
„
Construction d’’ontologies « from scratch »
Autorise également la rétro conception :
‰
„
Retrouver un modèle conceptuel à partir d’’une
ontologie, et en construire une autre plus adaptée
Processus de développement d’’ontologie
‰
‰
évaluation, configuration, management,
conceptualisation, intégration, implémentation
Spécifie les étapes pour réaliser chaque activité,
les techniques utilisées, les résultats attendus et
leur évaluation
16/04/2008
Séminaire Ecol'IA - MA Aufaure
34
Construction et évolution d’ontologies
Tâches de conceptualisation
„
„
„
„
„
„
„
„
„
„
Tâche 1 : construire le vocabulaire des termes
Tâche 2 : construire des taxonomies de concepts
Tâche 3 : construire les diagrammes de relations
binaires
Tâche 4 : construire le dictionnaire de concepts
Tâche 5 : décrire les relations binaires
Tâche 6 : décrire les attributs d’’instances et de
classes
Tâche 7 : décrire les constantes
Tâche 8 : décrire les axiomes formels
Tâche 9 : décrire les règles
Tâche 10 : décrire les instances
16/04/2008
Séminaire Ecol'IA - MA Aufaure
35
Construction et évolution d’ontologies
Problématique de l’’évolution d’’ontologies
„
„
„
Environnements dynamiques, multi-acteurs et distribués
Ontologies évolutives
‰ En cours de construction : processus itératif et incrémental
automatisé (et non automatique)
‰ En cours d’’usage
Plusieurs raisons de changements
‰ Evolution continue du domaine modélisé
‰ Affinement de la conceptualisation de l’’ontologie
‰ Modification de l’’application exploitant l’’ontologie
‰ Réutilisation de l’’ontologie pour d’’autres applications
‰ ……
16/04/2008
Séminaire Ecol'IA - MA Aufaure
36
Construction et évolution d’ontologies
Problématique de l’’évolution d’’ontologies
„
Le processus d’’évolution est complexe
‰
‰
‰
‰
‰
‰
„
Capture des changements à travers différentes sources
Spécification des changements
Prise en compte des conséquences d’’un changement
Résolution des inconsistances
Implémenter, propager les changements
Gestion des versions
Interprétation formelle de tous les besoins de changement
provenant de différentes sources et application des changements à
l’’ontologie et aux artefacts dépendants tout en préservant leur
consistance
16/04/2008
Séminaire Ecol'IA - MA Aufaure
37
Construction et évolution d’ontologies
Gestion de versions
„
Gestion des changements d’’une ontologie et leurs effets par la
création et le maintien de différentes versions d’’une ontologie
„
L’’idéal serait de préserver les différentes versions d’’une ontologie et
les informations relatives aux différences et aux compatibilités entre
ces versions
„
Nécessité de méthodes de :
‰
Différentiation et identification de versions
‰
Spécifications de relations entre versions
‰
Procédures de mise à jour d’’ontologies
‰
Mécanismes d’’accès aux différentes versions d’’une ontologie
16/04/2008
Séminaire Ecol'IA - MA Aufaure
38
Construction et évolution d’ontologies
Gestion de versions
„
Rechercher les différences entre les différentes versions (mêmes
principes que pour les similarités en alignement)
„
Compatibilité entre les versions:
‰
Préservation des instances
‰
Préservation de l’’ontologie
(Résultat (rq1 sur Oi) Ž Résultat (rq1 sur Oi+1))
(axOI ĺ f1, …,fn ; axO2 ĺ f1, …, fn)
‰
Préservation de la consistance
16/04/2008
Séminaire Ecol'IA - MA Aufaure
39
Construction et évolution d’ontologies
Changements
„
„
„
Niveaux de changements
‰
Domaine
‰
Conceptualisation
‰
Spécification (langage de représentation)
Sources de changements
‰
Environnement : Nouvelles sources de connaissances
‰
Processus interne de l’’application
‰
Utilisateurs : expression de nouveaux besoins
Deux catégories de changements
‰
‰
Evolution normale : enrichissement de l’’ontologie sans remettre
en cause les connaissances existantes : « continuité
ontologique »
Révolution : possibilité d’’infirmer des axiomes vrais
16/04/2008
Séminaire Ecol'IA - MA Aufaure
40
Construction et évolution d’ontologies
Approches d’’évolution
„
Ontologie d’’évolution
‰
‰
une modélisation explicite, commune et partagée des changements d’’un modèle
d’’ontologie
Une sorte de « méta-ontologie » qui sert de :
„
„
„
support pour l’’ensemble des phases du processus d’’évolution
base pour la construction du journal d’’évolution.
Journal d’’évolution
‰
‰
Les séquences exactes des opérations appliquées pour satisfaire une demande
de changement
Les instances des concepts et des propriétés de l’’ontologie d’’évolution.
16/04/2008
Séminaire Ecol'IA - MA Aufaure
41
Construction et évolution d’ontologies
Evaluation
„ Guider
et valider la construction d’’une
ontologie
„ Choisir l’’ontologie la plus appropriée parmi
plusieurs, en fonction d’’un ensemble de
besoins
„ En évolution : détecter les changements
utiles
16/04/2008
Séminaire Ecol'IA - MA Aufaure
42
Construction et évolution d’ontologies
Niveaux d’’évaluation
„
Vocabulaire
‰
‰
„
Taxonomie (structure hiérarchique)
‰
‰
„
„
Termes représentant les primitives et les instances
Comparaison avec les sources (distance de similarité, Précision,
Rappel)
Mesures structurelles (profondeur, distribution des feuilles, largeur,
etc.)
Evaluation de l’’adaptation de la structure à un corpus
Application : Evaluation du résultat de l’’utilisation de
l’’application
Données
‰
‰
16/04/2008
Comparaison à une collection de documents
Sélection de l’’ontologie la plus appropriée parmi plusieurs, en les
comparant une à une à un corpus
Séminaire Ecol'IA - MA Aufaure
43
Apprentissage d’’ontologies
Typologie des méthodes
„ Application des techniques web
content/structure mining
„
16/04/2008
Séminaire Ecol'IA - MA Aufaure
44
Apprentissage d’ontologies
Apprentissage d’’ontologies :
cadre de travail
„
„
„
„
„
Apprentissage d’’ontologies : plug-in dans le
processus de développement d’’ontologies
Définir les phases pour lesquelles l’’automatisation
est pertinente
Définir les données sur lesquelles appliquer ce
processus
Réutilisation d’’ontologies existantes (fusion,
alignement). Utilisation de connaissance à priori
Offrir un ensemble d’’algorithmes pour résoudre un
problème et combiner les résultats
16/04/2008
Séminaire Ecol'IA - MA Aufaure
45
Apprentissage d’ontologies
Les données pertinentes
„
Données sous forme d’’ontologies :
‰
‰
„
Données sous forme de schémas :
‰
‰
„
„
„
Ontologies linguistiques
Thésaurus
Schémas BD (rel, ER, OO)
Schémas Web (XML-S, DTD)
Instances (BD, bases de connaissances)
Données semi-structurées
Documents en langage naturel :
‰
‰
Langage naturel pur
Documents en LN avec de l’’info semi-structurée
16/04/2008
Séminaire Ecol'IA - MA Aufaure
46
Apprentissage d’ontologies
Approches selon les données
„
A partir d’’un dictionnaire :
‰
„
Utilisation de Wordnet pour enrichir l’’ontologie
avec de nouveaux concepts et relations. Ces
méthodes se basent sur des analyses
linguistiques et sémantiques
A partir de schémas relationnels :
‰
‰
Processus d’’appariement basé sur un ensemble
de règles pour passer d’’un modèle EA vers une
ontologie
Processus de ré ingénierie
16/04/2008
Séminaire Ecol'IA - MA Aufaure
47
Apprentissage d’ontologies
Approches selon les données
„
A partir de schémas semi-structurés
‰
‰
‰
Clustering et reconnaissance de patterns
Apprentissage à partir des annotations
sémantiques d’’une base de documents RDF
(permet de récupérer des concepts définis)
Apprentissage basé sur des techniques de
regroupement conceptuel
16/04/2008
Séminaire Ecol'IA - MA Aufaure
48
Apprentissage d’ontologies
Approches selon les données
„
A partir du web :
‰
‰
Clustering pour enrichir les concepts à partir de
documents web classés à l’’aide de wordnet.
Extraction des mots et de leur fréquence pour
chaque collection
Recherche des concepts les plus pertinents d’’un
domaine à partir d’’une large collection de sites
web, sans recours à des connaissances a priori
16/04/2008
Séminaire Ecol'IA - MA Aufaure
49
Apprentissage d’ontologies
Approches selon les données
„
A partir de textes :
‰
‰
‰
‰
Utilisation d’’outils de TAL (guidée par l’’homme)
s’’appuyer sur des ressources existantes spécialisées
(thésaurus)
techniques linguistiques et statistiques
modéliser en tenant compte de l’’usage qui sera fait de
l’’ontologie
16/04/2008
Séminaire Ecol'IA - MA Aufaure
50
Apprentissage d’ontologies
Généralités
„
„
Approches semi-automatiques (guidage par
un expert)
Étapes :
‰
‰
Prétraitement des textes en utilisant ou non de la
connaissance a priori + traitement des ambiguïtés
par contexte
Choix de la méthode en fonction de l’’objectif :
„
„
„
„
16/04/2008
Extraction de concepts
Extraction de relations non taxonomiques
Extraction de relations taxonomiques
Extraction d’’instances, d’’axiomes
Séminaire Ecol'IA - MA Aufaure
51
Apprentissage d’ontologies
Techniques utilisées
„
„
„
„
„
Extraction à l’’aide de patrons (techniques
linguistiques et patrons lexico-syntaxiques)
Découverte de relations non taxonomiques à
l’’aide de règles d’’association
Groupement de concepts selon une distance
sémantique
Élagage d’’une ontologie ““large”” à l’’aide de
corpus textuels
Apprentissage de concepts qui seront ajoutés à
une ontologie existante à l’’aide de textes
16/04/2008
Séminaire Ecol'IA - MA Aufaure
52
Apprentissage d’ontologies
Techniques linguistiques
„
„
„
But : extraction d’’un modèle conceptuel
Difficulté : la spécification des patrons se fait
manuellement (ces patrons visent à extraire
les relations entre les concepts)
Méthodes automatiques étudient les
régularités syntaxiques entre deux concepts
(degré important d’’erreurs)
16/04/2008
Séminaire Ecol'IA - MA Aufaure
53
Apprentissage d’ontologies
La méthodologie Aussenac et al.
„
„
„
Construction d’’ontologies à partir de textes
Élaborer un modèle conceptuel d’’un domaine par
analyse de corpus de documents techniques
Hypothèses :
‰
‰
Le concepteur de l’’ontologie a une bonne connaissance du
domaine d’’application, il est capable de déterminer les
termes pertinents (noms, phrases, verbes ou adjectifs)
Le concepteur a également une bonne connaissance de la
manière dont l’’ontologie sera utilisée
16/04/2008
Séminaire Ecol'IA - MA Aufaure
54
Apprentissage d’ontologies
La méthodologie Aussenac et al.
Application visée
expertise
Ressources
terminologiques
description
des besoins
Constitution
du corpus
documentation
technique
Corpus
informatisé
étude
linguistique
outils TAL
Candidats termes
Relations lexicales
Regroupements
Normalisation
Concepts
Relations sémantiques
ontologie
Formalisation
outils TAL
Support
de modélisation : TERMINAE
16/04/2008
Séminaire Ecol'IA - MA Aufaure
formalisme
55
Apprentissage d’ontologies
Constitution du corpus
„
Choix des documents par un expert (en tenant
compte de la documentation technique) :
‰
‰
‰
„
„
Compromis entre représentativité (sujet, genre textuel) et
taille
Trouver les documents les plus pertinents pour une
application
Il est utile d’’avoir un glossaire des termes du domaine
Décider de la manière de traiter les documents
Opportunisme : découpage en sous-corpus
16/04/2008
Séminaire Ecol'IA - MA Aufaure
56
Apprentissage d’ontologies
Etude linguistique
„
„
„
Sélectionner des outils et techniques
linguistiques (extraction de motifs, clustering
conceptuel) et les appliquer aux textes pour
obtenir des termes, relations lexicales et
groupes de synonymes
Extraction de termes (groupes nominaux ou
verbaux) mis en relation par Syntex
[Bourigault & al 96]
Recherche de relations à l’’aide de patrons
avec Yakwa
16/04/2008
Séminaire Ecol'IA - MA Aufaure
57
Apprentissage d’ontologies
Normalisation : de la langue naturelle
à un langage formel
„
Langue naturelle :
Pas de primitives, des
énoncés imprécis,
contextuels, des objets
instables
„
„
Choisir un contexte de
référence des objets
dont on parle pour fixer
et stabiliser leur
interprétation
„
Structurer et organiser
les concepts ainsi
créés
Langage formel :
Des expressions logiques
construites avec des
primitives, des
connecteurs, des
quantificateurs, etc.
16/04/2008
Séminaire Ecol'IA - MA Aufaure
58
Apprentissage d’ontologies
Normalisation
„
„
Interprétation sémantique du contenu des textes
guidée par l’’expertise et les usages
Des relations lexicales aux relations sémantiques :
‰
‰
‰
„
Déterminer les concepts reliés et le type des relations
Les représenter à l’’aide de rôles ou de relations is-a
Décider des propriétés des relations : héritage, ……
Des relations à une hiérarchie de concepts :
‰
‰
Différencier des concepts selon des critères homogènes :
corps solide/corps liquide, etc.
Ajout de concepts non terminologiques
16/04/2008
Séminaire Ecol'IA - MA Aufaure
59
Apprentissage d’ontologies
Formalisation
„
„
„
„
Représentation des connaissances en
logique de description
Classification des concepts
Validation du modèle
Plusieurs formats possibles pour l’’ontologie :
‰
‰
‰
‰
RDF
OIL
XML
OWL
16/04/2008
Séminaire Ecol'IA - MA Aufaure
60
Apprentissage d’ontologies
La méthodologie Moldovan&Girju
„
„
Découverte de concepts et relations via
l’’enrichissement d’’une ontologie avec de nouvelles
connaissances acquises à partir de textes analysés
Sources d’’entrée :
‰
‰
„
Corpus textuel non spécifique à un domaine
Autres ressources lexicales
Trois phases :
‰
‰
‰
Apprentissage de nouveaux concepts à partir de texte,
Classification des concepts en se basant sur l’’analyse des
expressions associées aux concepts candidats,
Apprentissage des relations à partir de patrons et
évaluation de l’’ontologie
16/04/2008
Séminaire Ecol'IA - MA Aufaure
61
Apprentissage d’ontologies
Apprentissage de nouveaux concepts
„
„
„
„
Sélection de concepts ““granulaires””
‰ Jugés pertinents et existants dans Wordnet
‰ Uniquement des concepts nominaux
Extraction des phrases contenant un concept granulaire (max :
500 phrases/concept)
Extraction de nouveaux concepts :
‰ Expressions du type [mot, mot, ……, concept]
‰ Seuls les mots appartenant à wordnet sont conservés
Classification des concepts :
‰ Classer les concepts de la forme [mot, concept] ou mot est un
nom ou un adjectif (mots apparus dans les expressions des
concepts candidats)
‰ Ajout d’’une relation d’’hyponymie entre ce nouveau concept et le
concept granulaire
16/04/2008
Séminaire Ecol'IA - MA Aufaure
62
Apprentissage d’ontologies
Méthodologie Maedche et al.
(outil Text-to-Onto) –– Élagage d’’ontologie
„
„
„
But: construire une ontologie sur la base d’’une ontologie
existante (SENSUS, WordNet, etc.), qui est enrichie avec les
concepts appris.
5 étapes :
‰ sélection des sources: documents Web, schéma XML, ontologie,
etc.
‰ l’’apprentissage de concepts en utilisant des outils de traitement
du langage naturel
‰ « domain focusing »: enrichir l’’ontologie et retirer les concepts
généraux
‰ apprentissage de relations basé sur les règles d’’association et
les patterns
‰ Évaluation
Cette méthode a été appliquée dans le projet On-To-Knowledge
16/04/2008
Séminaire Ecol'IA - MA Aufaure
63
Apprentissage d’ontologies
Activity 1.
Select sources
general corpus
specific corpus
Core ontology
Activity 2.
Concept learning
Activity 3.
Domain focusing
Activity 4.
Relation learning
Activity 5.
Evaluation
Core ontology
Core ontology
Core ontology
Core ontology
R1
16/04/2008
Séminaire Ecol'IA - MA Aufaure
R2
R1
R2
64
Apprentissage d’ontologies
Méthodologie Maedche et al.
„
Sélection des sources :
‰
‰
„
Sélection d’’une ontologie, base de l’’apprentissage,
contenant des concepts génériques et spécifiques
Sélection des corpus de documents hétérogènes (texte
libre, semi-structuré, du domaine, génériques)
Apprentissage de concepts :
‰
‰
‰
Acquisition de nouveaux concepts génériques et
spécifiques
Utilisation d’’outils de TAL : extraction de patterns,
clustering conceptuel
La méthode suggère de lier les concepts appris par des
relations de type « sous-classe de »
16/04/2008
Séminaire Ecol'IA - MA Aufaure
65
Apprentissage d’ontologies
Méthodologie Maedche et al.
„
Domain focusing :
‰
‰
„
Apprentissage de relations :
‰
„
But : élaguer l’’ontologie enrichie et supprimer les concepts
généraux
Les termes apparaissant fréquemment dans les corpus
spécifiques sont présentés à l’’ontologue pour qu’’il décide
s’’il les conserve dans l’’ontologie enrichie
Relations entre les concepts extraites à l’’aide de règles
d’’association
Évaluation de l’’ontologie, et éventuellement répéter
le processus
16/04/2008
Séminaire Ecol'IA - MA Aufaure
66
Apprentissage d’ontologies
Méthodes de clustering
„
Clustering hiérarchique
‰
Méthode simple : nécessite la définition d’’une distance
entre les points, généralisée à une distance entre clusters
„
„
‰
Objectif : maximiser la similarité intracluster (fonction
d’’évaluation)
„
‰
Ex : mesure du cosinus pour des documents représentés
comme des vecteurs tf*idf
Généralisation : similarité entre les centroïdes, min, max,
average
Introduction de paramètres de contrôle : stopper le processus
lorsqu’’un nombre désiré de clusters est obtenu ou lorsque la
similarité intraclusters < seuil
Obtention d’’une hiérarchie Ÿ ontologie
16/04/2008
Séminaire Ecol'IA - MA Aufaure
67
Apprentissage d’ontologies
Méthodes de clustering
„
K-Means
‰
‰
‰
‰
Facile à mettre en œœuvre
Nécessite de connaître le nombre de classes
Résultats dépendent fortement du choix des
centroïdes au départ
Permet la hiérarchisation lorsqu’’il est appliqué sur
les classes formées
16/04/2008
Séminaire Ecol'IA - MA Aufaure
68
Apprentissage d’ontologies
Application au web content/sructure
mining
‰
‰
Apprentissage d’’une ontologie de domaine (tourisme) à
partir de pages web et sans utiliser de connaissance a
priori
Nécessite une étude approfondie des documents avant
de les exploiter pour construire l’’ontologie
„
Définition d’’un contexte permettant de mieux sélectionner
les mots sémantiquement proches
„
Étude des algorithmes de clustering
„
Évaluation sémantique des clusters (concepts)
16/04/2008
Séminaire Ecol'IA - MA Aufaure
69
Apprentissage d’ontologies
Découverte d’’ontologie
: 4 étapes
•Méthodologie basée sur une
•Tenir contextualisation
compte de la structure
:
progressive
Hiérarchie
contextuelle
•Critères
d’évaluation
•Algorithme
contextuel
•Visualisation
interactive
d’extraction
•Différentes analyses:
lexicale,de concepts
•Utilisation
des relations
Découverte
contextuelle
syntaxique,
statistique
Evaluation des concepts
extraites
de concepts
ontologiques
•Utilisation
des relations
•Utilisation
de de
Existants dans
la hiérarchie
concepts l’évaluation des concepts
Découverte de relations :
Extraction & Validation
16/04/2008
Evaluation et
enrichissement de la
hiérarchie
Séminaire Ecol'IA - MA Aufaure
70
Apprentissage d’ontologies
Découverte contextuelle de concepts
„
Principes :
‰
‰
Détecter les relations
entre les tags HTML
Modéliser la relation
entre différents contextes
„
‰
Notion de Hiérarchie
Contextuelle
Définir un algorithme de
classification
hiérarchique non
supervisé
16/04/2008
Un extrait de la Hiérarchie Contextuelle
Séminaire Ecol'IA - MA Aufaure
71
Apprentissage d’ontologies
Principes algorithmiques
„
Algorithme incrémental
‰
‰
‰
Basé sur K-Means
Dirigé par les contextes structurels
Entrée : matrice de termes co-occurrents avec
calcul de l’’indice d’’équivalence qui évalue la force
du lien :
„
„
16/04/2008
Si = 0, les mots ne sont jamais présents ensemble,
Si = 1, les mots sont toujours présents ensemble
Séminaire Ecol'IA - MA Aufaure
72
Apprentissage d’ontologies
Principes algorithmiques
„
„
„
„
„
Calcul des occurrences de chaque mot, puis sélection
de leurs co-occurrents en fonction de la hiérarchie
contextuelle, affectation des poids
Première exécution de Kmeans pour obtenir une
première distribution dans K clusters
Division des clusters
Affectation des mots isolés aux clusters formés
Paramètres : nombre maximal de mots par cluster,
marge acceptable permettant de rajouter des mots aux
clusters ayant atteint ce nombre max, mesure de
similarité (plusieurs mesures implémentées)
16/04/2008
Séminaire Ecol'IA - MA Aufaure
73
Apprentissage d’ontologies
Évaluation de l’’algorithme ––
Expérimentation
„
Comparaison des résultats entre :
‰
‰
„
Exécution avec un contexte fenêtre
Exécution incrémentale avec la hiérarchie contextuelle
Évaluation manuelle selon 6 critères :
‰
‰
‰
‰
‰
‰
Distribution des mots dans les clusters
Poids attribués aux paires de mots (importance du mot
dans le contexte)
Similarité des paires de mots
Concepts extraits
Interprétation sémantique (% de classes auxquelles un
expert peut attribuer un label)
Degré de généralité des concepts extraits
16/04/2008
Séminaire Ecol'IA - MA Aufaure
74
Apprentissage d’ontologies
Problématique : évaluation des concepts
„
Évaluer des concepts extraits à partir des classes de
mots produites
‰
Clusters = sacs de mots
„
„
„
„
„
Sans information sur les mots
Sans ordre
Avec du bruit
Aider l’’expert à évaluer chaque terme d’’un groupe,
définir les relations entre les mots d’’une classe et lui
associer un label sémantique en tant que concept
Outil permettant de donner des informations aux experts
en se basant sur les différents contextes (linguistique,
documentaire)
16/04/2008
Séminaire Ecol'IA - MA Aufaure
75
Apprentissage d’ontologies
Proposition pour l’’évaluation
„
„
„
„
Évaluation quantitative et qualitative :
‰ basée sur la richesse des documents web, l’’interprétation
sémantique et la notion de contextualisation progressive
‰ Trois critères :degré de crédibilité, degré de cohésion, degré
d’’éligibilité
Degré de crédibilité :
‰ Évaluation qualitative globale (basée sur une collection de
documents pour tous les termes des clusters) ou une évaluation
qualitative rafinée (une collection de documents appropriée à
chaque cluster)
‰ Basée sur les associations de mots ave une utilisation possible
de documents indexés par Google
Degré de cohésion :
‰ Estime la force du lien entre les mots d’’un cluster
Degré d’’éligibilité
‰ Suggestion d’’un mot pouvant être utilisé pour labelliser une
classe
16/04/2008
Séminaire Ecol'IA - MA Aufaure
76
Apprentissage d’ontologies
•Méthode indépendante de toute connaissance a priori
•Automatique ou interactive
Collection appropriée
Classe de mots
Moteur de recherche
Algorithme de
calcul de degré de crédibilité
(CDC)
Pour chaque classe :
Les critères de
crédibilité
+ les associations de
termes
16/04/2008
Algorithme de
calcul de degré d’’éligibilité
(EDC)
Algorithme de
calcul de degré de cohésion
(CoDC)
Pour chaque classe
une valeur
Séminaire Ecol'IA - MA Aufaure
Une liste de mots avec
leurs valeurs ainsi que le
terme qui peut représenter
la classe en tête
77
Apprentissage d’ontologies
Synthèse
„
Phases nécessaires à la construction
d’’ontologies :
‰
‰
‰
‰
‰
Préparation et prétraitement des sources de
données (avec l’’utilisation ou non de
connaissances a priori)
Apprentissage de concepts (techniques
linguistiques, statistiques et/ou clustering)
Extraction des relations
Extraction des instances
Validation des ontologies
16/04/2008
Séminaire Ecol'IA - MA Aufaure
78
Apprentissage d’ontologies
Critères des approches d’’ingénierie
ontologique :
„
„
„
„
„
„
Clarté : la définition d’’un concept doit communiquer
le sens voulu du terme, de façon objective et
indépendante du contexte
Cohérence : les inférences faites à partir des
ontologies doivent être cohérentes avec la définition
des concepts
Capacités d’’extension (évolution de l’’ontologie)
Classes disjointes
Distance sémantique minimale entre les concepts
enfants de mêmes parents
Normalisation des noms
16/04/2008
Séminaire Ecol'IA - MA Aufaure
79
Apprentissage d’ontologies
Type d’ontologie à
construire
Usage de
l’ontologie
Sources d’informations
d’entrée de la méthode
La construction d’une ontologie
?
Les techniques de
traitement
automatique de la
langue naturelle
L’extraction des concepts
Les techniques
d’apprentissage
L’extraction des relations
L’extraction des axiomes
Les patrons
lexico-syntaxiques
16/04/2008
Des techniques
hybrides
Séminaire Ecol'IA - MA Aufaure
symboliques
numériques
80
Apprentissage d’ontologies
Les techniques de
traitement
automatique des
langues naturelles
ƒExtraction des hyponymes des instances
ƒExtraction des collocations de termes
ƒExtraction des relations taxonomiques
Les patrons
lexico-syntaxiques
symboliques
Les techniques
d’apprentissage
numériques
16/04/2008
Séminaire Ecol'IA - MA Aufaure
ƒ La logique des propositions
ƒLa logique du premier ordre
ƒ Les réseaux sémantiques
ƒ Les graphes conceptuels
ƒ Les arbres de décision
ƒ Les treillis de Galois
ƒ Les langages de Frames
ƒ La représentation des
connaissances par objets
ƒ Les réseaux bayésiens
ƒ Les réseaux de neurones
ƒ Les cartes de Kohonen
ƒ Les chaînes de Markov
cachées (HMM)
ƒ Les algorithmes génétiques
ƒLes algorithmes de clustering
81
Apprentissage d’ontologies
Synthèse
„
Limites observées :
‰
‰
‰
‰
‰
Analyses linguistiques : permet le typage des termes et
relations mais coûteux par rapport à la définition manuelle
des patrons
Analyses statistiques : facile à mettre en oeuvre, gèrent de
grands volumes mais nécessitent des corpus importants
pour être validées
Extraction de patrons lexico-syntaxiques : efficace sur des
corpus de petite taille. Les patrons appris peuvent
présenter des erreurs (validation par un expert)
Peu d’’approches permettent l’’extraction de relations non
taxonomiques
Pas d’’approches d’’apprentissage d’’axiomes
16/04/2008
Séminaire Ecol'IA - MA Aufaure
82
Téléchargement