Construction d’une ontologie de descripteurs en astronomie à partir de
tables de données
Alexandre RICHARD
DEA Informatique
Équipe ORPAILLEUR – LORIA
Encadrant : Amedeo Napoli
Co-encadrant : Emmanuel Nauer
27 juin 2005
27 juin 2005 Alexandre RICHARD 2
Sommaire
• Quelques repères en astronomie• Le projet « Masse de données en astronomie »• Les UCD (Unified Content Descritptors)• Domaine de l’ontologie
• Construction de l’ontologie• Éléments de l’ontologie• Construction de l’ontologie
• Attribution d’un UCD à une description textuelle• Traitement des colonnes Units et Explanations• Traitement de la colonne Label• Bilan
• Apports et perspectives
27 juin 2005 Alexandre RICHARD 3
Projet « Masse de données en astronomie »
• Acteurs incluent entre autres:• Centre de Données en astronomie de Strasbourg (CDS)• Équipe ORPAILLEUR du Laboratoire Lorrain de Recherche en
Informatique et ses Applications (LORIA)
• Travaux sur des descripteurs en astronomie: les UCD (Unified Content Descriptors)
• Descripteurs standardisés et universels• Absence de sémantique formelle• Utilisation de méthodes de fouille de texte pour faire émerger
– L’utilisation correcte des UCD– De nouveaux UCD
• Création d’une structure permettant de représenter les UCD et les manipuler dans un raisonnement : une ontologie des UCD
27 juin 2005 Alexandre RICHARD 4
Contenu de publications en astronomie
Table de
données
ReadMe
27 juin 2005 Alexandre RICHARD 5
Les UCD
Units Label Explanations UCD
--- Macs Designation meta.code
h RAh Right Ascension J2000, Epoch 1989.0 (hours) pos.eq.ra
min RAm Right Ascension J2000 (minutes) pos.eq.ra
s RAs Right Ascension J2000 (seconds) pos.eq.ra
deg DEd Declination J2000, Epoch 1989.0 (degrees) pos.eq.dec
arcmin DEm Declination J2000 (minutes) pos.eq.dec
arcsec DEs Declination J2000 (seconds) pos.eq.dec
--- Npos Number of positions used meta.number;pos
mag Mag ?=99.00 Instrumental Magnitude phot.mag;instr
27 juin 2005 Alexandre RICHARD 6
Domaine de l’ontologie(1/2)
• Domaine : UCD incluant au moins un mot pos
• Une catégorie pos des mots d’UCD– Décrivent :
• Des mesures de position• Des informations sur des positions
– 58 mots sur les 427 mots d’UCD valides– Exemples :
• pos position• pos.eq coordonnées équatoriales• pos.eq.ra ascension droite
27 juin 2005 Alexandre RICHARD 7
Domaine de l’ontologie (2/2)
• Problèmes pour la représentation des UCD incluant au moins un mot pos :– Pas de liste exhaustive
– Plus de 106 écritures potentielles
• Représentation des mots pos• Exemple d’exploitation : associer un UCD à une ligne de
ReadMe• Exemple : pos.eq.ra
27 juin 2005 Alexandre RICHARD 8
Éléments de l’ontologie (1/2)
• Ontologie : Une ontologie est la spécification explicite d’une conceptualisation [Gruber 1993]
• Ontologie des mots pos– Formalisme : logiques de descriptions
– Trois types d’entités :• Concept : classe d’individus ayant les mêmes
propriétés.– Exemple :
Concept représente
AngleUnit Les unités d’angle
pos.eq.ra Les descriptions d’ascensions droites
27 juin 2005 Alexandre RICHARD 9
Éléments de l’ontologie (2/2)
• Rôle : représente une relation binaire entre 2 concepts– Exemple : la relation hasAngleUnit
• Individu : instance d’un concept– Exemple : description textuelle d’une ascension droite
(instance du concept pos.eq.ra)
pos.eq.ra AngleUnithasAngleUnitdomaine co-domaine
27 juin 2005 Alexandre RICHARD 10
Construction de l’ontologie (1/3)
• Hypothèse : un co-domaine unique et différent pour chaque rôle
• Processus de construction1. Identification des concepts
Concepts correspondant aux mots posExemple : Mot pos Correspond au concept de
pos Position
pos.eq Coordonnées équatoriales
pos.eq.ra ascension droite
27 juin 2005 Alexandre RICHARD 11
Construction de l’ontologie (2/3)
2. Écriture des définitions de concepts– Ensemble de rôles
– Condition nécessaire et suffisante d’appartenance à l’extension du concept
Exemple :
27 juin 2005 Alexandre RICHARD 12
3. Hiérarchisation des concepts et des rôles par la relation de subsomption
• Concepts
• Rôles
Construction de l’ontologie (3/3)
Measure UnithasUnit
pos.eq.ra AngleUnithasAngleUnit
co-domainedomaine
27 juin 2005 Alexandre RICHARD 13
Hiérarchie de concepts
27 juin 2005 Alexandre RICHARD 14
Attribution d’un UCD à une ligne de ReadMe
• Cas considéré : UCD composé d’un seul mot pos• En entrée : ligne de ReadMe
• En sortie : tableau trié de concepts de l’ontologieClassement selon le degré de correspondance entre le concept et la ligne de ReadMe.
• Traitement en deux phases :– Traitement des colonnes Units et Explanations
– Traitement de la colonne Label
27 juin 2005 Alexandre RICHARD 15
Traitement des colonnes Units et Explanations
Ligne de ReadMe
Extract(Units) = {contenu de la colonne Units}Extract(Explanations) = {contenu de la colonne Explanations}
Classement des concepts de l’ontologie
Extraction du contenudes colonnes Units et Explanations
Extraction des co-domainessur Units et Explanations
Codom(Extract(Units), Extract(Explanations)) = ensemble de co-domaines
Classification par rapport aux concepts de l’ontologie
27 juin 2005 Alexandre RICHARD 16
Extraction du contenu des colonnes Units et Explanations
• Extraction du contenu des colonnes Units et Explanations
• Obtention en sortie des ensembles : Extract(Units) = {s}Extract(Explanations) = {right|ascension|J2000|seconds)}
27 juin 2005 Alexandre RICHARD 17
Traitement des colonnes Units et Explanations
Ligne de ReadMe
Extract(Units) = {contenu de la colonne Units}Extract(Explanations) = {contenu de la colonne Explanations}
Codom(Extract(Units), Extract(Explanations)) = ensemble de co-domaines
Classement des concepts de l’ontologie
Extraction du contenudes colonnes Units et Explanations
Extraction des co-domainessur Units et Explanations
Classification par rapport aux concepts de l’ontologie
27 juin 2005 Alexandre RICHARD 18
Extraction des co-domainessur Units et Explanations (1/2)
• Objectif : obtention d’un ensemble de co-domaines
• Moyens utilisés :
– Deux hypothèses :• Un co-domaine unique et différent pour chaque rôle• Le co-domaine identifie le rôle de manière non-ambiguë
27 juin 2005 Alexandre RICHARD 19
– Des fichiers intermédiaires (fichiers de méta-données)Construction : – L’expert fait l’association : contenu de colonne – rôles
exemple : s – hasAngleUnit, hasOneValue– Le programme construit le fichier Méta(étiquette) = {(contenu de colonne, co-domaines)}
exemple : Méta(Units) = {(s, AngleUnit | Value), ...}
• En entrée : Extract(Units) = {s}Extract(Explanations) = {right | ascension | J2000 | seconds)}
• Lecture des fichiers de méta-données :Méta(Units) = {(s, AngleUnit | Value), ... }Méta(Explanations) = {(right, CcOriginEqRa | Value), (ascension, Value), ... }
• En sortie : Codom(Extract(Units), Extract(Explanations)) = {AngleUnit | CcOriginEqRa | Value}
Extraction des co-domainessur Units et Explanations (2/2)
27 juin 2005 Alexandre RICHARD 20
Traitement des colonnes Units et Explanations
Ligne de ReadMe
Extract(Units) = {contenu de la colonne Units}Extract(Explanations) = {contenu de la colonne Explanations}
Classement des concepts de l’ontologie
Extraction du contenudes colonnes Units et Explanations
Extraction des co-domainessur Units et Explanations
Codom(Extract(Units), Extract(Explanations)) = ensemble de co-domaines
Classification par rapport aux concepts de l’ontologie
27 juin 2005 Alexandre RICHARD 21
Classification par rapport aux concepts de l’ontologie
• Recherche des concepts de l’ontologie possédant les rôles de Codom(Extract(Units), Extract(Explanations)) , tri selon nombre de rôles partagésCodom(Extract(Units), Extract(Explanations)) = {AngleUnit | CcOriginEqRa | Value}
co-domaines des rôles : {hasAngleUnit, hasCcOriginEqRa, hasOneValue}CONCEPT ROLES N
pos.eq.ra hasAngleUnit, hasOneValue, hasCcOriginEqRa, hasFrameTypeEq 3
pos.angDistance hasAngleUnit, hasOneValue 2
pos.az.alt hasAngleUnit, hasOneValue, hasCcOriginAzAlt, hasFrameTypeAz 2
pos.eq.dec hasAngleUnit, hasOneValue, hasCcOriginEqDec, hasFrameTypeEq 2
pos.eq.spd hasAngleUnit, hasOneValue, hasCcOriginEqSpd, hasFrameTypeEq 2
pos.parallax hasAngleUnit, hasOneValue, hasPlxMethod 2. . . . . . . . .
27 juin 2005 Alexandre RICHARD 22
Traitement de la colonne Label (1/3)
Ligne de ReadMe
Extract(Label) = {contenu de la colonne Label}
Classement des concepts de l’ontologie
Extraction du contenude la colonnes Label
Extraction des co-domainessur Label
Codom(Extract(Label)) = ensemble de co-domaines
Classification par rapport aux concepts de l’ontologie
27 juin 2005 Alexandre RICHARD 23
Traitement de la colonne Label (2/3)
• Étape 1 : Extract(Label) = {RAs}
• Étape 2 : Méta(Label) = {(RAs, AngleUnit | CcOriginEqRa | Value | FrameTypeEq),...} Codom(Extract(Label)) = {AngleUnit | CcOriginEqRa | Value | FrameTypeEq}
• Étape 3 : rôles : {hasAngleUnit, hasCcOriginEqRa, hasOneValue, hasFrameTypeEq}
CONCEPT ROLES N
pos.eq.ra hasAngleUnit, hasCcOriginEqRa, hasOneValue, hasFrameTypeEq 4
pos.eq.dec hasAngleUnit, hasCcOriginEqDec, hasOneValue, hasFrameTypeEq 3
pos.eq.spd hasAngleUnit, hasCcOriginEqSpd, hasOneValue, hasFrameTypeEq 3
pos.angDistance hasAngleUnit, hasOneValue 2
pos.az.alt hasAngleUnit, hasOneValue, hasCcOriginAzAlt, hasFrameTypeAz 2. . . . . . . . .
27 juin 2005 Alexandre RICHARD 24
Traitement de la colonne Label (3/3)
• S’il y a toujours égalité au premier rang, c’est à l’expert de choisir parmi les concepts de meilleur rang
• Travail sur la colonne Label séparé– Labels porteurs de beaucoup d’information– Labels souvent ambigus
• alpha : angle de phase d’une orbite d’un corps céleste• alpha : ascension droite d’un corps céleste
– Absence de liste des labels ou de règles de construction– Difficulté de construction du fichier Méta(Label)
27 juin 2005 Alexandre RICHARD 25
Bilan
• Test sur 75 lignes de ReadMe• 4 lignes attribuées avant le traitement de la colonne Label
• + 42 lignes attribuées après le traitement de la colonne Label
• + 26 lignes attribués par l’expert
• 3 échecs
• Compatibilité avec l’outil lexico-syntaxique existant au CDS
• Indépendance du processus d’identification• Aux langues utilisées dans les ReadMe• Aux évolutions des UCD
27 juin 2005 Alexandre RICHARD 26
Apports et Perspectives
• Application fondée sur une méthode de classification partielle
• Emploi de fichiers intermédiaires pour faire le lien instance – concept
• Travaux futurs : – Prise en compte des UCD composés de plus d’un mot
– Application aux 11 autres catégories de mots d’UCD
Construction d’une ontologie de descripteurs en astronomie à partir de
tables de données
Alexandre RICHARD
DEA Informatique
Équipe ORPAILLEUR – LORIA
Encadrant : Amedeo Napoli
Co-encadrant : Emmanuel Nauer
27 juin 2005
Top Related