J'interviens le jeudi 20 mars 2014 à la Cantine Numérique…
Aligner son thesaurus avec RAMEAU en utilisant OnAGUI
La BNF organisait le 10 juillet 2018 un atelier « Données liées et données à lier : quels outils pour quels alignements ?« , avec plein de bonnes choses dedans :
- RobotDonnées, le module développé par Logilab pour data.bnf.fr qui permet le regroupement semi-automatique des éditions en œuvres;
- où l’on apprend que data.bnf.fr ne comporte « que » 300 000 œuvres, alors que la cible théorique serait à plusieurs millions; par exemple on voit bien en regardant les oeuvres dont Michel Houellebecq est auteur dans data.bnf.fr que « La carte et le territoire » n’apparaît pas comme œuvre, mais que toutes les éditions de cet ouvrage sont bien listées quand on regarde tous les documents dont Houellebecq est l’auteur.
- où l’on apprend également que ce regroupement en œuvre est progressivement réintroduit dans le catalogue général de la BNF;
- BiblioStratus, pour aligner un catalogue externe avec celui de la BNF sur la base de plusieurs heuristiques (ISBN, EAN ou bien titre+auteur+date ou titre+auteur); où l’on apprend que la transition n’est pas qu’écologique mais qu’il existe également une transition bibliographique;
- l’ANR ELKER pour « Enhancing Link Keys: Extraction and Reasoning », porté notamment par l’INRIA Grenoble pour la détection automatique des attributs permettant de trouver des correspondances dans 2 jeux de données RDF arbitraires; très impressionnant;
- CultuurLink, à tester pour tous ceux qui s’intéressent aux processus d’alignement de vocabulaires, bien que l’outil soit restreint aux vocabulaires patrimoniaux des Pays-Bas;
- et encore plein d’autres choses (cf les liens sur la page de l’atelier);
OnAGUI pour aligner 2 thesaurus SKOS
Je voulais profiter de cette thématique des alignements pour parler d’un autre outil d’alignement de thesaurus SKOS : OnAGUI pour « Ontology Alignment Graphical Interface« . OnAGUI est le genre d’outil qui ne paie pas de mine au premier abord mais qui est à mon avis l’outil dont la prise en main est la plus immédiate pour qui veut aligner 2 thesaurus en SKOS, tout en permettant d’outiller le processus depuis l’alignement linguistique automatique jusqu’à la validation manuelle de l’alignement produit.
Quelques considérations générales : d’abord l’acronyme parle d’alignement d’ « ontologies », mais pas de panique, ça marche pour des thesaurus en SKOS; surtout pour des thesaurus en SKOS, d’ailleurs. Ensuite, c’est open-source; ça s’installe facilement sur n’importe quel poste équipé de Java, c’est une application « de bureau », qui ne nécessite pas d’infrastructure client-serveur, etc. l’interface est en français (et anglais) puisque le développement à été fait par Laurent Mazuel à l’époque où il travaillait avec Jean Charlet au LIMICS (INSERM). L’outil est maintenu, notamment par votre serviteur.
Vous pouvez consulter la documentation d’OnAGUI où vous trouverez des informations plus détaillées sur le logiciel.
Alignement avec RAMEAU
Maintenant, le cas d’usage : il m’ait arrivé de rencontrer des personnes qui avaient besoin d’aligner un vocabulaire vers le langage d’indexation RAMEAU de la BNF. Comment faire ?
- Je ne détaille pas ici la structure de RAMEAU et son mécanisme de « vedettes-matières pré-coordonnées » que je ne connais pas bien d’ailleurs, mais je pars (naïvement) de ce qui existe : le fichier des Thèmes Rameau que l’on télécharge depuis le site des dumps de données de la BNF. Il s’agit du fichier intitulé « [RDF/XML] Thèmes RAMEAU« .
- A ce stade il faut l’avouer : la BNF a encore des efforts à faire sur diffusion des données de RAMEAU; les données telles qu’on les télécharge sont inutilisables telles qu’elles, et nécessitent : 1/ un nettoyage et 2/ une fusion en un seul fichier; je ne m’étends pas sur cette étape que j’ai réalisé à l’aide de scripts RDF4J dont je me sers régulièrement, mais on se ramène au final à un seul fichier RDF contenant tout RAMEAU en SKOS; si vous voulez tester OnAGUI sur un autre vocabulaire ne nécessitant pas cette étape de « magie noire », essayez avec le thesaurus de l’UNESCO ou Eurovoc;
- Il faut ensuite avoir son propre thesaurus en SKOS; on peut utiliser pour cela l’outil de conversion Excel vers SKOS disponible dans SKOS Play;
- Il faut télécharger OnAGUI en prenant soin de prendre une version postérieure à 0.3.2, version pour laquelle des améliorations ont été apportées pour fonctionner avec RAMEAU;
- Muni donc de votre vocabulaire en SKOS d’un côté, de RAMEAU (nettoyé) de l’autre, et d’OnAGUI entre les deux, vous pouvez ensuite :
- Charger votre thesaurus dans OnaGUI (Menu « Fichier > Charger vocabulaire 1 > Charger en SKOS »);
- Charger RAMEAU dans OnaGUI (Menu « Fichier > Charger vocabulaire 2 > Charger en SKOS »), qui va vaillamment charger 160000+ concepts;
- Lancer un alignement linguistique (Menu « Alignement > I-Sub distance ») en prenant soin de :
- sélectionner la langue « fr » dans les 2 thesaurus;
- abaisser légèrement le seuil de tolérance de l’algorithme, en le mettant à 0.85 par exemple; ne le mettez pas trop bas sinon vous aurez trop de correspondances qui ne veulent rien dire, ni trop haut sinon vous allez rater des choses;
- Aller prendre un petit café, ou deux, ou trois… en fonction de la taille du vocabulaire que vous avez besoin d’aligner; patientez entre quelques secondes et une nuit entière;
- Analyser le tableau de résultat fourni et soit :
- supprimer des lignes de correspondances fausses; regardez le score de chaque correspondance : plus le score tend vers 1, meilleure est la correspondance linguisitique, plus le score diminue, plus les libellés sont éloignés;
- ajouter des nouvelles correspondances qui auraient été ratées;
- Puis exporter l’alignement (Menu « Fichier > Exporter l’alignemenr ») soit dans un format RDF EDOAL, le plus expressif, soit avec les propriétés d’alignement SKOS, soit en CSV pour une analyse dans un tableur;
OnAGUI est un outil perfectible sur bien des aspects mais qui permet de valider « pour de vrai » des alignements sur des vrais projets, sans besoin d’infrastructure compliquée ou d’outil commercial. J’ai pu le mettre en œuvre à 2 reprises : pour l’alignement du thesaurus de l’IRSTEA vers le GEMET et Agrovoc, et plus récemment pour un essai d’alignement du vocabulaire thématique d’indexation de la loi Luxembourgeoise avec le thesaurus Eurovoc utilisé au niveau européen, sur la base de l’analyse des transpositions des directives européennes dans la loi nationale. Il peut également prendre en charger des cas d’usage d’alignement partiel, en alignant seulement les concepts créés ou modifiés après une certaine date, de façon à ne pas à avoir à refaire l’intégralité de l’alignement à chaque nouvelle version du thesaurus.
Si vous avez des questions, des cas d’usage ou des retours d’expérience sur OnAGUI, n’hésitez pas à soumettre des tickets dans le site du projet.