Télécharger la présentation
La présentation est en train de télécharger. S'il vous plaît, attendez
Publié parLooys Tellier Modifié depuis plus de 10 années
1
Découverte de correspondances entre ontologies distribuées
F.-E. Calvier le 03/07/07 Cette présentation porte sur la découverte de mappings dans SomeRDFS. Lors de la précédente réunion d’avancement en décembre 2006, j’avais présenté un état de l’art qui portait sur 3 points : la création d’ontologies, la découverte de mappings et le problème de l’évolution des ontologies et des mappings, le tout ayant été étudié dans un contexte distribué. Depuis, je me suis focalisé sur le problème de la découverte de mappings, toujours en environnement distribué, et j’ai étudié ce problème dans le cadre de la plateforme SomeRDFS développée dans l’équipe.
2
Plan Contexte de travail
Découverte de mappings : environnement centralisé vs. distribué Exploitation du raisonnement Découverte de raccourcis de mappings Identification d’éléments pertinents à mettre en correspondance Conclusions et perspectives Le plan de ma présentation est le suivant. Je présenterai dans un premier temps le contexte dans lequel s’effectue mon travail et j’en profiterai pour donner un exemple sur lequel je vais m’appuyer à plusieurs reprises au cours de la présentation. Dans un 2ème temps, j’exposerai les spécificités du problème de la découverte de mappings en environnement distribué par opposition à ce même problème dans un contexte centralisé. Les parties 3 et 4 sont ensuite consacrées à la présentation de techniques de découvertes de mappings proprement dites. Je distinguerai les techniques qui reposent sur l’exploitation du raisonnement réalisé d’un système de gestion de données Pair à Pair, des techniques de découvertes de mappings déclenchables sur l’ajout de connaissances au sein du système, qu’il s’agisse de connaissances au sein d’une ontologie ou de mappings nouveaux. Enfin, je concluerai et je donnerai quelques perspectives.
3
1. Contexte de travail D O M
Les ontologies et les mappings sont représentés en RDF(S) et les données en RDF Les mêmes constructeurs sont utilisés pour représenter les ontologies et les mappings Ontologies : Vocabulaire d’un pair = {noms de classes du pair} {noms de propriétés du pair} Mappings : Inclusions entre classes ou propriétés de 2 pairs différents Typage d’une propriété d’un pair donné par une classe d’un autre pair Nous travaillons dans le cadre du système SomeRDFS qui est un système de gestion de données pair à pair, ou PDMS pour faire plus court. L’architecture de SomeRDFS est celle d’un PDMS totalement décentralisé ; il n’existe pas de super-pairs dotés de capacités d’administration particulières du système. Tous les pairs sont donc placés sur un même pied d’égalité. Chaque PDMS est constitué de pairs autonomes ayant chacun des données propres, une ontologie représentant le schéma de ces données et un ensemble de mappings permettant de communiquer avec les pairs voisins. Dans SomeRDFS, les données sont exprimées en RDF, les ontologies et les mappings en RDF(S). Il est ainsi possible de définir des classes, des sous-classes, des propriétés, des sous-propriétés, de typer le domaine et le co-domaine des propriétés. Les ontologies définissent le vocabulaire de chacun des pairs qui comprend l’union de l’ensemble des noms de classes et de l’ensemble des noms de propriétés. Les noms de classes et de propriétés sont propres à un pair donné. Les mappings correspondent à des inclusions entre classes ou propriétés de 2 pairs différents ou au typage d’une propriété d’un pair donné avec une classe d’un autre pair. Ce sont donc également des expressions RDF(S). Par rapport aux expressions RDF(S) composant les ontologies, les expressions représentant des mappings ont la particularité d’être construites à partir du vocabulaire d’ontologies de pairs différents, établissant ainsi des correspondances sémantiques entre eux.
4
Opérateurs RDF(S) Inclusion de classes : X, C1(X) C2(X)
X, Painter(X) Artist(X) X Y, Paints(X, Y) Creates(X,Y) Nous présentons, très brièvement, dans les 2 transparents qui suivent, les constructeurs autorisés pour définir les ontologies et les mappings. Il s’agit tout d’abord de l’inclusion de classes et de l’inclusion de propriétés. Les classes sont représentées par des relations unaires (exemple : C1(X) pour la classe C1 et C2(Y) pour la classe C2). Les propriétés sont représentées par des relations binaires (par exemple P1(X,Y) pour la propriété P1 établissant une relation entre X et Y. Nous donnons ici la traduction de l’inclusion de classes en logique du 1er ordre : qqs X, C1(X) C2(X). Le schéma à gauche correspond à la représentation graphique de l’inclusion entre la classe Painter et Artist, ce qui signifie que les instances de Painter sont aussi instances de Artist. Nous avons ici la traduction de l’inclusion de propriétés : …. Le schéma à droite correspond à …. Inclusion de classes : X, C1(X) C2(X) Inclusion de propriétés : X Y, P1(X,Y) P2(X,Y)
5
Opérateurs RDF(S) Typage de domaine et de co-domaine d'une propriété
X Y , Paints(X,Y) Painter(X) X Y , Paints(X,Y) Painting(Y) Typage de domaine et de co-domaine d'une propriété X Y , P1(X,Y) C1(X) X Y , P1(X,Y) C2(Y) Langage restreint : coreRDFS Ce 2ème transparent consacré aux opérateurs RDF(S) est consacré au typage du domaine et du co-domaine (ou range) d’une propriété avec leur traduction en logique du 1er ordre. Ces définitions sont ici également accompagnées d’un schéma représentant graphiquement que le domaine de la propriété Paints est … et que son range ou co-domaine est …Cela signifie que … Notons que nous nous limitons à ces constructeurs dans SomeRDFS pour représenter les connaissances des ontologies et des mappings. Le langage, ainsi restreint, est appelé coreRDF(S). Il a l’avantage d’avoir une sémantique logique claire et intuitive comme nous venons de le montrer.
6
Mappings SomeRDF(S) Des expressions construites à partir du vocabulaire de pairs différents qui établissent ainsi des correspondances sémantiques entre eux. Notation : P : R, relation R de l’ontologie d’un pair P Inclusion de classes : X, P1:C1(X) P2:C2(X) Inclusion de propriétés : X Y , P1:P1(X,Y) P2:P2(X,Y) Typage de domaine et de co-domaine d'une propriété X Y , P1:P1(X,Y) P2:C1(X) X Y , P1:P1(X,Y) P2:C2(Y) Voici une rapide illustration des expressions représentant des mappings. Je rappelle qu’il s’agit d’expressions construites à partir du vocabulaire des ontologies de pairs différents qui établissent ainsi des correspondances sémantiques entre eux. Pour repérer qu’une relation appartient au vocabulaire d’un pair donné, nous utilisons la notation suivante : …
7
Exemple Q1(X) ≡ P1:Artifact(X) R1(X) ≡ P1:Artifact(X)
R2(X) ≡ P1:Painting(X) R3(X) ≡ Y, P1:Belongsto(X, Y ) R4(X) ≡ P2:Sculpture(X) R5(X) ≡ Y, P1:Creates(Y,X) R6(X) ≡ Y, P1:Paints(Y,X) R7(X) ≡ Y, P2:Sculpts(Y,X) Q1(X) ≡ P1:Artifact(X) R1(X) ≡ Ø R2(X) ≡ {la_joconde} R3(X) ≡ Ø R4(X) ≡ {statue_de_david} R5(X) ≡ {les_demoiselles_d_avignon} R6(X) ≡ Ø R7(X) ≡ {le_penseur} P2 Glass Sculptor Wood Sculptor Steel Sculptor Movement Refersto Sculpts Sculptor Sculpture Belongsto Q1(X) P1 Creates Voici maintenant un exemple de PDMS composé des pairs P1 et P2 pour lesquels nous avons représenté les ontologies et les mappings. Le pair P1 dispose de données sur des sculpteurs, ….expliquer l’ontologie Le pair P2 dispose de données sur …. Les mappings sont : ….. Je vais utiliser cet exemple pour illustrer la façon dont le raisonnement s’effectue dans le système. Supposons qu’un utilisateur pose la requête Q1 (X) = P1 :Artifact (X), qui signifie que cet utilisateur s’adresse au pair P1 pour connaître l’ensemble des artefacts connus. Le calcul des réponses s’effectue alors en 2 temps. 1. la requête est réécrite en un ensemble de requêtes subsumant Q1. Une réécriture possible de Q1 est par exemple, P1 : painting, ce qui signifie qu’un moyen d’obtenir des instances de artifact(X) consiste à aller rechercher des instances de painting au sein du même pair. Une autre réécriture est … Donner un exemple de chaque type de réécriture 2. ces réécritures sont ensuite évaluées afin d’obtenir les données associées. Artist Artifact Paints Painter Painting
8
2. Découverte de mappings : environnement centralisé vs. distribué
Spécificités du contexte distribué par rapport au contexte centralisé : Nombre de comparaisons Des connaissances locales Richesse du raisonnement Passons maintenant à la présentation des spécificités du problème de la découverte de mappings en environnement distribué.
9
Nombre de comparaisons
… Contexte centralisé : Nombre établi d’ontologies Nombre limité de comparaisons Contexte distribué : Multitude de pairs Nombre variable de pairs Nombre important et variable de comparaisons Une 1ère spécificité concerne le nombre d’éléments à mettre en correspondance. Alors que dans un contexte centralisé, on compare un nombre donné fixe d’ontologies, en environnement distribué du type de SomeRDFS, le réseau peut être constitué de millions de pairs ayant chacun une ontologie. De plus chaque pair est autonome et peut décider à tout instant de quitter le système quand d’autres peuvent décider de le rejoindre.
10
Nombre de comparaisons
… Z1 A2 1 0.5 0.8 B2 0.1 0.7 C2 0.4 0.2 0.6 Z2 0.3 ? O O O … Contexte centralisé : Découverte de mappings produit cartésien des éléments des ontologies Nous avons donc un nombre très important et inconnu d’ontologies à comparer. La découverte de mappings ne peut consister à faire le produit cartésien entre les éléments des ontologies suivant un ou plusieurs calculs de distance puis à analyser les mesures obtenues.
11
Des connaissances locales
F1 P1 F2 P2 P1 H1 P2 H2 D1 N1 D2 N2 Contexte distribué : Accès aux pairs voisins uniquement via les mappings Aucune vision sur les autres relations des pairs voisins Communication entre certains pairs impossible Des limitations fortes sur les mappings pouvant être découverts Un processus à l’initiative d’un pair donné La 2ème spécificité concerne le fait que les connaissances sont locales à un pair. Les pairs disposent de leurs connaissances propres constituées d’ontologies et de mappings. Cela leur permet de répondre à des requêtes collectivement, un pair pouvant propager une requête à un voisin s’il dispose d’un mapping avec une relation de ce voisin. MAIS cette communication est assez limitée : 1) d’une part il faut qu’il existe des mappings mais, même quand un mapping existe, le pair ne connaît que la relation liée, rien d’autres concernant le pair distant 2) d’autre part, même si on peut théoriquement imaginer, grâce aux connections de tous les pairs avec leurs voisins, qu’un pair donné peut toujours indirectement établir une communication avec un autre pair, il existe des situations où ceci est impossible. Sur ce schéma, par exemple, le pair …. ne pourra jamais communiqué avec … La découverte de mappings en environnement distribué doit tenir compte de cette contrainte : des connaissances locales à un pair et des possibilités de communication pour accéder aux connaissances des autres pairs limitées. Sans ajout de mécanisme centralisé, le processus de découverte de mappings dans SomeRDFS ne peut se faire qu’à l’initiative d’un pair donné. Les limites liées aux communications vont venir aussi contraindre les nouveaux mappings qui peuvent être découverts.
12
Richesse du raisonnement
F1 P1 F2 P2 P1 H1 P2 H2 D2 N2 D1 N1 D2 D2 N2 N2 La 3ème spécificité que nous avons mis en évidence porte sur la richesse du raisonnement en environnement distribué. L’analyse du raisonnement mis en œuvre dans un PDMS pour répondre aux requêtes posées peut permettre de donner des indications utiles à la découverte de mappings. Par exemple, supposons ce système schématisé sur ce transparent. Si un utilisateur pose une requête sur H1, grâce au mapping existant avec H2, une propagation de la requête sera effectuée vers P2 qui pourra, peut-être aussi la propager. En revanche, si un utilisateur pose une requête sur D1, il n’y aura pas de propagation parce qu’il n’existe pas de mapping concernant D1 dans P1, ce qui peut nuire à la richesse de la réponse apportée. Nous en déduisons qu’il peut être utile d’analyser les réponses aux requêtes qui sont faites pour pointer sur les éléments qu’il serait intéressant de mettre en correspondance. Contexte distribué : Les réponses aux requêtes : indicateurs utiles à la découverte de mappings
13
3. Exploitation du raisonnement
Exploitation des réponses aux requêtes Découverte de raccourcis de mappings Identification d’éléments pertinents à mettre en correspondance Passons maintenant à la présentation des techniques de découverte de mappings. Nous allons montrer comment les réponses aux requêtes peuvent être exploitées d’une part pour découvrir des raccourcis de mappings d’autre part pour identifier des éléments qu’il serait intéressant de mettre en correspondance
14
3.1 Découverte de raccourcis de mappings
Liens indirects remplacés par de liens directs Renforce le réseau Intéressant en cas de disparition de pairs Un processus automatisable Pb : l’ajout ne doit pas être systématique Processus de filtrage nécessaire Un raccourci de mapping est un lien direct entre des relations de 2 pairs différents, liés jusqu’alors que par des liens indirects. Par exemple, … Ce type de mapping ne permet pas d’aboutir à des réponses plus riches mais il renforce le réseau, en préservant des liens qui, sinon pourraient disparaître avec la disparition de certains pairs. La détermination des raccourcis de mapping peut être automatisé. Nous allons montrer comment dans la suite de l’exposé. Le problème que pose ce genre de mapping porte sur le fait que l’objectif n’est pas de rajouter des raccourcis de mapping à tout va mais de façon sélective. Un processus de filtrage est nécessaire. Il faut déterminer les critères de sélection applicables
15
3.1 Découverte de raccourcis de mappings
Un processus en 2 temps : Exploiter les résultats des requêtes posées dans SomeRDFS Appliquer des techniques de sélection des raccourcis pertinents à représenter Pour trouver les raccourcis de mappings, nous proposons de procéder en 2 temps : d’exploiter les résultats des requêtes posées dans SomeRDFS puis d’appliquer des techniques de sélection des raccourcis pertinents à représenter. Avec le transparent suivant, nous allons illustrer ce mécanisme.
16
Scénario de découverte de raccourcis de mappings
B F P1 A? P H {A1, A2} B? D N {A} {W, T, A1, M, A2, Z, …} {W, T, K, A, Z, G, …} V B L’exemple est donc celui d’une requête posée à un pair et nous verrons ce qu’il est possible d’en conclure. Supposons qu’un utilisateur s’adresse au pair P1 afin d’obtenir des instances de A. Malheureusement A n’existe pas dans l’ontologie du pair P1. En revanche, en observant l’ontologie de P1, l’utilisateur s’aperçoit de la présence de B dans la vocabulaire de P1, B étant connu de l’utilisateur comme étant un généralisant de A. L’utilisateur décide donc de poser sa requête sur B. Le système calcule les réécritures de B qui sont les suivantes : … On remarque que, parmi ces réécritures, figure A. Si on suppose que l’ensemble des réécritures sont délivrées à l’utilisateur, ce dernier peut alors décider de ne demander l’instanciation que de A, qui seul l’intéresse. Dans ce cas, s’il arrive fréquemment que des utilisateurs s’adressant à P1 soient intéressées par A, il pourrait être judicieux d’ajouter un lien de subsomption entre A de P2 et B de P1, ce qui correspond à un mapping, plus précisément à un raccourci de mapping. Un scénario proche pourrait débuter de la même façon mais l’utilisateur sélectionne 2 réécritures intéressantes à instancier au lieu d’1. Dans ce cas, la décision pourrait être de suggérer l’ajout de 2 raccourcis de mapping. R W T G A1 Z A2 K A M
17
3.1 Découverte de raccourcis de mappings
Un processus en 2 temps : Exploiter les résultats des requêtes posées dans SomeRDFS Dissociation des étapes de réécriture et d’évaluation L’utilisateur sélectionne les réécritures pour lesquelles il demande l’évaluation Appliquer des techniques de sélection des raccourcis pertinents à représenter Analyse de la trace des interactions entre les utilisateurs et les pairs Raccourcis de mapping ajoutés = liens directs avec les classes intéressantes pour les utilisateurs Apparues dans les réécritures Les utilisateurs ont, à plusieurs reprises, demandé leur évaluation Nombre de fois que l’évaluation de la classe distante est demandée détermine l’ajout de raccourcis de mappings seuil à fixer Au travers des scénarios présentés, nous voyons que notre approche est basée sur la dissociation de l’étape de réécriture de celle de l’évaluation de ces réécritures dans le calcul des réponses aux requêtes. Cela permet de connaître les réécritures que les utilisateurs jugent pertinentes par rapport à ce qu’ils cherchent. Concernant le processus de sélection des mappings pertinents à représenter, la technique proposée se base sur l’exploration des traces des interactions entre les utilisateurs et les pairs. Nous proposons d’ajouter des raccourcis lorsqu’il s’agit de liens directs avec des classes INTERESSANTES pour les utilisateurs. Pour savoir si elles sont intéressantes, il faut connaître le nombre de fois que les utilisateurs ont demandé leur évaluation et fixer un seuil.
18
3.2 Identification d’éléments pertinents à mettre en correspondance
Reformulation du problème : A partir de quelles relations rechercher des correspondances ? = relations cibles exploitation du raisonnement Parmi quelles relations distantes rechercher des correspondances ? = contexte de mapping (CM) Le raisonnement peut servir à identifier des éléments pertinents à mettre en correspondance, correspondant à des éléments qui jusqu’alors n’étaient absolument pas liés. Nous proposons de poser le problème de la façon suivante. Tout d’abord trouver à partir de quelles relations rechercher des mises en correspondance. La relation à partir de laquelle les corr. seront recherchées est appelée Relation cible. Ensuite chercher parmi quelles relations distantes rechercher les correspondances. Cet ensemble de relations constitue l’ensemble des candidats au mapping noté CM.
19
Identification de relations cibles
A partir de quelles relations ? Identifiables à partir des requêtes dont les réécritures sont toutes locales Les relations pour lesquelles il n’existe pas de spécialisation au sein des réécritures Pour nous les relations cibles sont identifiables à partir du raisonnement, plus précisément à partir des requêtes posées à un pair dont les réécritures sont toutes locales à ce pair. Dans ce cas, en effet, l’existence d’un mapping liant ce pair à un pair distant pourrait permettre d’obtenir des réponses plus riches. Sur ce schéma, si on pose la requête C3(X), la seule réécriture obtenue est C2(X) et elle est locale. La relation cible, pour cet exemple, sera C2(X).
20
Parmi quelles relations rechercher des mappings?
Idée : recherche de mise en correspondance des classes qui ont des points communs généralisant ou spécialisant Pour chaque classe cible, déterminer un ensemble de classes entre lesquelles il serait pertinent de rechercher des mises en correspondance (CM) CCIBLE = C1 Si ! Cg | CCIBLE Cg et Q(X) ≡ Cg(X) Alors CM = {C | R réécriture de Q(X), C R} CCIBLE = C2 Si G = {Cg | CCIBLE Cg} avec G = G1G2 | G1 = {Cg PCIBLE} et G2 = {Cg PCIBLE} Alors CM = G A partir des classes cibles (nous nous limitons dans nos explications aux classes), nous proposons ensuite de déterminer l’ensemble des classes entre lesquelles il serait intéressant de rechercher des mises en correspondance (CM). Notre idée est la suivante. Nous pensons que les mises en correspondance doivent être recherchées entre des éléments qui ont des points communs. Dans le cadre de SomeRDFS, ces points communs sont 1) l’existence d’une classe commune plus générale Ou 2) l’existence d’une classe commune plus spécifique. Ceci est schématisé sur l’exemple. Ici C1 et C3 ont le même généralisant. Ici, ils ont le même spécialisant. Dans le contexte de système Pair à pair, nous définirons CM de la façon suivante : Donner les définitions Le schéma 1 correspond à l’application de la 1ère définition et le schéma 2 à la seconde. Notons, que la relation cible ne fait pas forcément partie de CM ; c’est l’élément à partir duquel CM a pu être construit, mais ce n’est pas forcément un élément de l’ensemble.
21
Scénarios combinables
Permet de définir un ensemble CM sur lequel utiliser des techniques d’alignement CM permet aussi de trouver des mappings entre relations de pairs distants Que faire de ces mappings particuliers ? Les 2 cas que nous venons de voir peuvent être combinés comme nous le montrons sur ce transparent. Les 2 cas de figure s’appliquent. La méthode conduit à rechercher des mappings ici entre C1 et C3 et là entre C1 et C4. Suite à l’application de l’ensemble de ces techniques, on aboutit alors à un ensemble de classes entre lesquelles il faut rechercher l’existence de mappings, par utilisation de techniques d’alignement. Si l’application de ces techniques est prise en charge par un pair donné, le problème revient à rechercher des mappings entre un élément d’une ontologie qui est connue et des éléments isolés dont on ne connaît que le nom. Il est également possible de rechercher des mappings entre deux éléments de pairs distants mais qu’en fait-on ?
22
Conclusion et perspectives
Des méthodes exploitant le raisonnement dans SomeRDFS Orientant la découverte de mappings Nécessitant d’autres outils : Analyse de la trace des interactions (outils statistiques) Méthodes d’alignement particulières prenant en compte la dissymétrie structurelle (Taxomap) D’autres méthodes possibles basées sur l’évolution des connaissances d’un pair Etude des requêtes sous forme de conjonctions de relations Implémentation des méthodes proposées
Présentations similaires
© 2024 SlidePlayer.fr Inc.
All rights reserved.