Il s'agit ici de partir d'un graphe de connaissances et de chercher à créer de nouvelles connaissances à introduire dans ce graphe à partir des connaissances déjà présentes.
Nous avons vu dans le billet
https://datamusee.wp.imt.fr/2023/07/25/creation-dun-dump-wikidata-de-la-base-joconde/
comment a été créé un dump de Wikidata de la description d'œuvres de la base Joconde, que j'ai nommé WikidataJoconde. Ce dump est accessible sur Zenodo à l'url:
https://zenodo.org/record/7941537
WikidataJoconde comporte 484207 triplets pour 28524 entités qui utilisent 370 propriétés. Les entités sont principalement de type painting (Q3305213; 14491 occurrences). Au total, 18099 œuvres de Joconde sont décrites dans ce jeu de données
Je vais ici analyser ce dump avec Amie3 pour produire des nouvelles connaissances -règles au sens de AMIE- déduites du dump. Amie3 est un outil qui analyse un ensemble de triplets (RDF) pour en déduire des règles permettant de déduire de nouveaux triplets à partir de la présence d'autres triplets.
Une présentation de résultats obtenus avec AMIE3 est disponible dans l'article suivant:
Fast and Exact Rule Mining with AMIE3
Pour exploiter WikidataJoconde au format nt avec AMIE, il faut le transformer en fichier tsv. Le principe général est simple, pour une ligne qui contient un triplet comme
<http://www.wikidata.org/entity/Q117600569> <http://www.wikidata.org/prop/direct/P195> <http://www.wikidata.org/entity/Q3044753> .
il faut enlever le point final et remplacer l'espace entre les éléments du triplet par une tabulation.
Le lancement d'une commande sur ce modèle:
java -jar amie_plus.jar "ici le chemin vers le fichier tsv" >ici le chemin vers le fichier résultat
donne 94 'règles', chacune étant accompagnée d'un ensemble de valeurs contribuant à en évaluer la pertinence (que je ne commenterais pas ici). Par exemple:
?b <http://www.wikidata.org/prop/direct/P361> ?a =>
?a <http://www.wikidata.org/prop/direct/P527> ?b
0,394495413 0,262195122 0,988505747 86 328 87 ?b 0.0 0.0 0.0
P361 est la propriété 'part of' de Wikidata et P527 la propriété 'has part(s)'
On voit que AMIE3 a déduit la symétrie entre ces deux propriétés. La règle ainsi produite pourrait alimenter un ensemble de règles SHACL ou une ontologie au sujet du jeu de données.
Dans ces règles, 35 propriétés sont impliquées.
L'analyse des 94 règles obtenues révèle différentes natures de règles. Nous allons en commenter quelques unes dans la suite de ce billet.
Règles où un triplet en entraine un autre
Certaines règles révèlent qu'une propriété pourrait être l'inverse d'une autre:
- "derivative work" est l'inverse de "based on" (*)
- "has part(s)" est l'inverse de "part of" (*)
Certaines règles révèlent qu'une propriété pourrait être une précision d'une autre:
- "part of the series" précise "part of" (*)
- "published in" implique "catalog"; cette règle est fausse; l'inverse pourrait être envisagé: le fait que ?a soit publié dans ?b, n'implique pas que ?a soit dans le catalogue ?b, car ?b n'est pas nécessairement un catalogue; alors que le fait que ?a soit dans le catalogue ?b implique bien que ?a soit publié dans ?b
- "depicts" implique "main subject"; cette règle est fausse; l'inverse pourrait être envisagé: le fait que ?a soit décrit par ?b, n'implique pas que ?a ait pour sujet principal ?b; alors que le fait que ?a ait pour sujet principal ?b implique bien que ?a soit décrit par ?b
Certaines règles révèlent qu'une propriété pourrait être symétrique
- "pendant of" (*) indiquant qu'une œuvre est le pendant d'une autre dans un ensemble d'œuvres,
- "different from"
Certaines règles révèlent que si une propriété relie ?a à ?b, alors ?a est différent de ?b:
- si ?a est basé sur (based on) ?b, alors ?a est différent de ?b,
- si ?a est dérivé (derivative work) de ?b, alors ?a est différent de ?b,
Certaines règles révèlent que deux propriétés pourraient être équivalentes:
- 'country' et 'country of origin'
- 'image' et 'image with frame'
En fait, dans ces deux cas, la deuxième propriété devrait être vue comme une précision (restriction) de la première. Une des deux règles induisant l'équivalence est donc exacte, l'autre non.
Les règles marquées d'une étoile sont pertinentes et pourraient être exprimées dans une ontologie.
Certaines règles renvoient à des discussions dans la communauté des éditeurs de Wikidata.
Par exemple, une règle suggère une symétrie entre 'country' et 'country of origin'. En fait, 'country of origin' pourrait être vu comme une précision (restriction) de 'country'. Mais, 'country' est insuffisamment défini; il est quelquefois utilisé dans le sens de 'country of origin', mais il s'agit quelquefois du pays où l'œuvre est conservée. Il peut y avoir d'autres interprétation de la propriété 'country': pays représenté dans l'œuvre? pays où se passe l'évènement représenté dans l'œuvre?...
Une règle énonce que si ?a est la suivante de ?b dans une série (followed by), alors ?a est une œuvre dérivée (derivative work) de ?b. Cette règle est fausse; elle pourrait révéler une utilisation approximative de ces propriétés dans notre jeu de données.
Deux règles conduisent à considérer les propriétés 'location' (utilisé 17589 fois) et 'collection' (utilisé 19912 fois) comme interchangeables. 'location' est décrit par wikidata comme 'endroit où se situe l'objet, la structure ou l'événement' et prend des valeurs comme 'Department of Paintings of the Louvre', 'Musée d'Orsay', 'Unterlinden Museum' et 'National Archaeological Museum'. 'collection' est décrit comme 'collection d’œuvres d'art, de musée, ou bibliographique dont le sujet fait partie' et prend des valeurs comme 'Room 702', 'France', 'Notre-Dame de Paris' et 'Condé Museum'. On trouve seulement 247 valeurs communes utilisées pour l'une ou l'autre des propriétés, sur les plus de 30000 valeurs possibles. Cela montre que ces propriétés ne sont pas interchangeables, même si elles recouvrent des concepts corrélés. Les règles sont probablement dues au fait que 8981 entités utilisent les deux propriétés avec la même valeur; en fait, ce nombre élevé est lié au fait qu'effectivement la collection dont fait partie une œuvre est souvent la collection du musée où se trouve l'œuvre: dans ce cas, les deux propriétés peuvent prendre la même valeur. Cependant, pour 'location', la recommandation des éditeurs de wikidata est de fournir la localisation la plus précise possible: cela est illustré par la valeur ci-dessus, Room 702, qui est en fait une salle du musée du Louvre. Quand on regarde les valeurs associées à ces règles, on trouve un support de 9000 (nombre d'entités ayant servies à établir les règles), et une confiance PCA de 0,512 pour l'une et 0,452 pour l'autre.
Deux règles conduisent à considérer les propriétés 'time period' (utilisé 286 fois) et 'movement' (utilisé 1454 fois) comme interchangeables. 'time period' est décrit par wikidata comme 'période (époque historique ou ère, saison sportive ou théâtrale, période législative etc.) dans laquelle le sujet apparaît' et prend des valeurs comme 'Roman Empire', 'Ancient Rome', 'Hellenistic period' ou 'late antiquity'. 'movement' est décrit comme 'mouvement littéraire, artistique ou philosophique associé avec cette personne ou cette œuvre' et prend des valeurs comme 'academic art', 'Roman sculpture', 'neoclassicism' et 'Dutch Golden Age painting'. On trouve seulement 7 valeurs communes utilisées pour l'une ou l'autre des propriétés: 'High Renaissance' (231 fois), 'Romanticism' (416 fois), 'Early Renaissance' (14 fois), 'Baroque' (413 fois), 'Dutch Golden Age painting' (76 fois), 'mannerism' (18 fois), 'Renaissance' (4 fois). Cela montre que ces propriétés ne sont pas interchangeables, même si elles recouvrent des concepts corrélés. Les règles sont probablement dues au fait que 19 entités utilisent les deux propriétés avec la même valeur; quand on regarde les valeurs associées à ces règles, on trouve bien un support de 19 (nombre d'entités ayant servies à établir les règles), mais une confiance PCA relativement faible: 0,283 pour l'une et 0,268 pour l'autre.
Règles où deux triplets en entrainent un troisième
Plusieurs règles sont sur le modèle suivant, avec des propriétés pr différentes:
si ?a pr ?f et ?b pr ?f alors ?a 'different from' ?b
Cela peut être considéré comme vrai, si, par construction, AMIE3 élimine le cas où ?a est identique à ?b. Je n'ai pas vérifié cela et j'ai considéré ces règles comme fausses. De toute façon, elles n'apportent pas vraiment d'information.
Des règles s'appuient sur la propriété 'different from' et en tirent des conclusions erronées. Par exemple, une règle énonce:
si ?f est basé sur ?b et ?a est différent de ?f (different from) alors ?a est basé sur ?b
Cette règle n'est évidemment pas de pertinence sémantique.
Globalement, les règles qui font intervenir 'different from' dans les prémisses et pas dans les conclusions sont fausses (14 cas). Celles qui font intervenir 'different from' dans les prémisses et les conclusions sont exactes, sauf si les deux prémisses utilisent 'different from'; cependant, lorsqu'elles comportent deux prémisses, celui n'utilisant pas 'different from' n'apporte rien à la règle. Une règle similaire, mais avec seulement le prémisse utilisant 'different from', existe et apporte la même conclusion.
Deux règles sont équivalentes et correspondent à des réalités souvent vraies:
si ?a est le pendant de ?b (dans un ensemble d'œuvres) et que ?a est fait avec le matériau ?c, alors ?b est (probablement) fait avec le matériau ?c
On trouve d'autres paires de règles similaires avec un prémisse comportant la propriété 'pendant of' et une propriété, cette dernière se propageant à l'œuvre reliée par 'pendant of'; il s'agit de propriétés: 'copyright status', 'country of origin', 'instance of', 'movement', 'commisioned by', 'country', 'catalog', 'collection', 'creator', 'owned by', 'location', 'genre', 'depicted format' (l'exactitude de celle-là est incertaine). Cela constitue 28 règles qui peuvent ainsi être considérées comme exactes.
Concernées par ces règles, on trouve 225 entités reliées par la propriété 'pendant of'. Reliant ces paires d'entités, on trouve 48 propriétés qui peuvent prendre une valeur différente pour une entité et sa 'sœur'. Pour certaines propriétés comme 'label' ou 'description', on peut comprendre que les valeurs diffèrent. Une analyse plus fine des propriétés qui pourraient donner lieu à un transfert d'une entité vers l'autre sort du champ de ce billet.
(note: voir combien d'oeuvres seraient concernées et si cela permettrait d'enrichir le dataset -> 225 paires)
Quelques règles qui doivent être remises en cause
- si ?a est différent de ?b et ?b different de ?a, une règle propose que ?a dérive (derivative from) de ?b
Des règles similaires:
- si ?b est une partie de ?f et ?f a pour partie ?a, une règle propose que ?a est différent de ?b
- si ?a est une partie de ?f et ?b est une partie de ?f, une règle propose que ?a est différent de ?b
Bilan global
Avec le seuil par défaut, on obtient 94 règles, dont notre analyse montre que 46 sont exactes. Si on ne considère que les règles avec un indice PCA de confiance supérieur ou égal à 0,6, on a 60 règles, dont sont 43 considérées comme exactes.
Il faudrait trouver une méthode générale pour éliminer des règles fausses. En attendant de l'avoir trouvée, on peut faire une première évaluation en éliminant les règles qui ont 'different from' ou 'image' dans les prémisses. Il reste alors 46 règles dont 43 sont considérées comme exactes. Un tel résultat peut permettre d'envisager un automatisme d'enrichissement du jeu de données; il faut noter que ces mêmes règles peuvent s'appliquer à l'ensemble des œuvres décrites dans Wikidata, car elles ont un caractère générique. Cela sera l'objet de travaux ultérieurs.
Un prochain billet étudiera des méthodes plus génériques de filtrage des règles.
(un tableur de travail sur ce billet est visible ici: https://docs.google.com/spreadsheets/d/1-yvArUrA4XIL5HqwzOUOzyJy9fHkNrbNVtTebJQ32WQ/edit?usp=sharing)