Your SlideShare is downloading. ×
0
Enrichissement des moteurs de recherche à partir de connaissances métier thomas francart
Enrichissement des moteurs de recherche à partir de connaissances métier thomas francart
Enrichissement des moteurs de recherche à partir de connaissances métier thomas francart
Enrichissement des moteurs de recherche à partir de connaissances métier thomas francart
Enrichissement des moteurs de recherche à partir de connaissances métier thomas francart
Enrichissement des moteurs de recherche à partir de connaissances métier thomas francart
Enrichissement des moteurs de recherche à partir de connaissances métier thomas francart
Enrichissement des moteurs de recherche à partir de connaissances métier thomas francart
Enrichissement des moteurs de recherche à partir de connaissances métier thomas francart
Enrichissement des moteurs de recherche à partir de connaissances métier thomas francart
Enrichissement des moteurs de recherche à partir de connaissances métier thomas francart
Enrichissement des moteurs de recherche à partir de connaissances métier thomas francart
Enrichissement des moteurs de recherche à partir de connaissances métier thomas francart
Enrichissement des moteurs de recherche à partir de connaissances métier thomas francart
Enrichissement des moteurs de recherche à partir de connaissances métier thomas francart
Enrichissement des moteurs de recherche à partir de connaissances métier thomas francart
Enrichissement des moteurs de recherche à partir de connaissances métier thomas francart
Enrichissement des moteurs de recherche à partir de connaissances métier thomas francart
Enrichissement des moteurs de recherche à partir de connaissances métier thomas francart
Enrichissement des moteurs de recherche à partir de connaissances métier thomas francart
Enrichissement des moteurs de recherche à partir de connaissances métier thomas francart
Enrichissement des moteurs de recherche à partir de connaissances métier thomas francart
Enrichissement des moteurs de recherche à partir de connaissances métier thomas francart
Enrichissement des moteurs de recherche à partir de connaissances métier thomas francart
Enrichissement des moteurs de recherche à partir de connaissances métier thomas francart
Enrichissement des moteurs de recherche à partir de connaissances métier thomas francart
Enrichissement des moteurs de recherche à partir de connaissances métier thomas francart
Enrichissement des moteurs de recherche à partir de connaissances métier thomas francart
Enrichissement des moteurs de recherche à partir de connaissances métier thomas francart
Enrichissement des moteurs de recherche à partir de connaissances métier thomas francart
Enrichissement des moteurs de recherche à partir de connaissances métier thomas francart
Enrichissement des moteurs de recherche à partir de connaissances métier thomas francart
Enrichissement des moteurs de recherche à partir de connaissances métier thomas francart
Enrichissement des moteurs de recherche à partir de connaissances métier thomas francart
Enrichissement des moteurs de recherche à partir de connaissances métier thomas francart
Enrichissement des moteurs de recherche à partir de connaissances métier thomas francart
Enrichissement des moteurs de recherche à partir de connaissances métier thomas francart
Enrichissement des moteurs de recherche à partir de connaissances métier thomas francart
Enrichissement des moteurs de recherche à partir de connaissances métier thomas francart
Enrichissement des moteurs de recherche à partir de connaissances métier thomas francart
Enrichissement des moteurs de recherche à partir de connaissances métier thomas francart
Enrichissement des moteurs de recherche à partir de connaissances métier thomas francart
Enrichissement des moteurs de recherche à partir de connaissances métier thomas francart
Enrichissement des moteurs de recherche à partir de connaissances métier thomas francart
Enrichissement des moteurs de recherche à partir de connaissances métier thomas francart
Enrichissement des moteurs de recherche à partir de connaissances métier thomas francart
Enrichissement des moteurs de recherche à partir de connaissances métier thomas francart
Enrichissement des moteurs de recherche à partir de connaissances métier thomas francart
Enrichissement des moteurs de recherche à partir de connaissances métier thomas francart
Enrichissement des moteurs de recherche à partir de connaissances métier thomas francart
Enrichissement des moteurs de recherche à partir de connaissances métier thomas francart
Enrichissement des moteurs de recherche à partir de connaissances métier thomas francart
Enrichissement des moteurs de recherche à partir de connaissances métier thomas francart
Enrichissement des moteurs de recherche à partir de connaissances métier thomas francart
Enrichissement des moteurs de recherche à partir de connaissances métier thomas francart
Upcoming SlideShare
Loading in...5
×

Thanks for flagging this SlideShare!

Oops! An error has occurred.

×
Saving this for later? Get the SlideShare app to save on your phone or tablet. Read anywhere, anytime – even offline.
Text the download link to your phone
Standard text messaging rates apply

Enrichissement des moteurs de recherche à partir de connaissances métier thomas francart

652

Published on

Brought to you by Mondeca : how to enhance search engines capabilities to ease content access; use synonyms, translations, narrower terms, spellchecking dictionnaries, faceted search, content …

Brought to you by Mondeca : how to enhance search engines capabilities to ease content access; use synonyms, translations, narrower terms, spellchecking dictionnaries, faceted search, content classification, and entity disambiguation. All of that using semantic web standards like RDF and SKOS, and exemplified with SolR

Published in: Technology
0 Comments
0 Likes
Statistics
Notes
  • Be the first to comment

  • Be the first to like this

No Downloads
Views
Total Views
652
On Slideshare
0
From Embeds
0
Number of Embeds
2
Actions
Shares
0
Downloads
40
Comments
0
Likes
0
Embeds 0
No embeds

Report content
Flagged as inappropriate Flag as inappropriate
Flag as inappropriate

Select your reason for flagging this presentation as inappropriate.

Cancel
No notes for slide

Transcript

  • 1. Enrichissement des moteurs de recherche à partir de connaissances métier Mondeca thomas.francart@mondeca.com
  • 2. A l’intersection entre les problématiques Amélioration de la recherche grâce au référentiel métier Univers du Document Structuration sémantique du contenu Indexation intelligente du contenu sur sa structure Univers de la recherche Univers de la connaissance
  • 3. Cas LERUDI Univers du Document Univers de la connaissance Outil de gestion de contenu WCM AFS ITM SDK Univers de la recherche
  • 4. De quelles connaissances parle-t-on ? <ul><li>Des référentiels métiers internes : </li></ul><ul><ul><li>Thesaurus (multilingues) </li></ul></ul><ul><ul><li>Dictionnaires </li></ul></ul><ul><ul><li>Bases d’entités nommées </li></ul></ul><ul><ul><li>Règles de classifications </li></ul></ul><ul><ul><li>Alignements de thesaurus </li></ul></ul><ul><ul><li>… </li></ul></ul><ul><li>Toujours de la donnée structurée </li></ul><ul><li>Des données disponibles sur le Linked Open Data : </li></ul><ul><ul><li>Exemple : thesaurus du GEMET, sous-ensemble d’entités de DBPedia, etc. </li></ul></ul>
  • 5. Où peut-on intervenir ? <ul><li>à 2 endroits : </li></ul><ul><ul><li>Au moment de l’indexation du contenu </li></ul></ul><ul><ul><ul><li>enrichissement de l’index </li></ul></ul></ul><ul><ul><li>Au moment de la recherche de l’utilisateur </li></ul></ul><ul><ul><ul><li>Aide à la formulation de la requête </li></ul></ul></ul><ul><li>Les enrichissement les plus efficaces sont faits au moment de l’ indexation </li></ul><ul><ul><li>Mais cela demande de réindexer les documents si les connaissances métier évoluent </li></ul></ul>
  • 6. Le moteur de recherche <ul><li>Lucene SolR : </li></ul><ul><ul><li>Open-source </li></ul></ul><ul><ul><li>Recherche plein texte avancée </li></ul></ul><ul><ul><li>Recherche à facettes </li></ul></ul><ul><ul><li>Highlight </li></ul></ul><ul><ul><li>Spellcheck </li></ul></ul><ul><ul><li>« More Like This » </li></ul></ul><ul><ul><li>Integration UIMA </li></ul></ul><ul><ul><li>… feature list : http://lucene.apache.org/solr/features.html </li></ul></ul><ul><li>Les principes présentés ici peuvent être appliqués avec d’autres moteurs de recherche (commerciaux) </li></ul>
  • 7. SolR explorer : une interface de test <ul><li>SolR retourne un flux XML à une requête http </li></ul><ul><ul><li>http://localhost:8080/solr/select/q=lac&amp;start=0&amp;length=10 </li></ul></ul><ul><li>SolR explorer : </li></ul><ul><ul><li>Une interface web de visualisation / navigation / test du flux XML de retour </li></ul></ul><ul><ul><li>Ce n’est pas un rendu pour l’utilisateur final ! </li></ul></ul><ul><ul><li>https://issues.apache.org/jira/browse/SOLR-1163 </li></ul></ul>
  • 8. Le jeu de données <ul><li>Catalogue structuré d’un portail touristique </li></ul><ul><ul><li>Hôtels </li></ul></ul><ul><ul><li>Restaurants </li></ul></ul><ul><ul><li>Activités </li></ul></ul><ul><ul><li>Contacts </li></ul></ul><ul><ul><li>… </li></ul></ul><ul><li>Chaque ressource est associée à un site web </li></ul>
  • 9. Point de départ : une indexation simple des sites web – sans enrichissement
  • 10. Plan <ul><li>1 - Synonymes </li></ul><ul><li>2 - Traductions </li></ul><ul><li>3 - Termes spécifiques </li></ul><ul><li>4 - Corrections orthographiques </li></ul><ul><li>5 - Facettes </li></ul><ul><li>6 - Classification dynamique </li></ul><ul><li>7 - Alignements de vocabulaires </li></ul><ul><li>8 - Désambiguïsation </li></ul>
  • 11. 1 : enrichissement avec des synonymes <ul><li>Pourquoi ? </li></ul><ul><ul><li>Augmenter le rappel, étendre la requête sur des termes similaires </li></ul></ul><ul><li>Comment ? </li></ul><ul><ul><li>En donnant au moteur une liste de mots équivalents entre eux </li></ul></ul><ul><ul><li>Configuration SolR : </li></ul></ul>&lt; fieldType name =&amp;quot; text &amp;quot; class =&amp;quot; solr.TextField &amp;quot; positionIncrementGap =&amp;quot; 100 &amp;quot;&gt; &lt; analyzer type =&amp;quot; index &amp;quot;&gt;   &lt; tokenizer class =&amp;quot; solr.WhitespaceTokenizerFactory &amp;quot; /&gt; &lt;!-- in this example, we will only use synonyms at index time   --&gt;   &lt; filter class =&amp;quot; solr.SynonymFilterFactory &amp;quot; synonyms =&amp;quot; synonyms.txt &amp;quot; ignoreCase =&amp;quot; true &amp;quot; expand =&amp;quot; true &amp;quot; /&gt; &lt;!-- ... --&gt;   &lt;/ analyzer &gt; &lt; analyzer type =&amp;quot; query &amp;quot;&gt;   &lt; tokenizer class =&amp;quot; solr.WhitespaceTokenizerFactory &amp;quot; /&gt; &lt;!-- &lt;filter class=&amp;quot;solr.SynonymFilterFactory&amp;quot; synonyms=&amp;quot;synonyms.txt&amp;quot; ignoreCase=&amp;quot;true&amp;quot; expand=&amp;quot;true&amp;quot;/&gt;   --&gt; &lt;!-- ... --&gt;   &lt;/ analyzer &gt; &lt;/ fieldType &gt;
  • 12. Format du fichier de synonymes <ul><li>Une ligne par synonymes équivalents </li></ul><ul><li>Option 1 : termes équivalents entre eux </li></ul><ul><ul><li>Si l’un des termes est trouvé, tous les termes équivalents seront insérés dans l’index </li></ul></ul><ul><li>Option 2 : se ramener à un terme contrôlé </li></ul><ul><ul><li>Si l’un des termes est trouvé, le terme contrôlé sera inséré dans l’index </li></ul></ul>déreglementation,libéralisation,dérégulation croisière,croisière de plaisance,croisière maritime spectacle,attraction,show vacances familiales,tourisme familial pêche,pêche à la ligne,permis de pêche,article de pêche,pêche au gros,pêche touristique office de tourisme,otsi,office municipal de tourisme,syndicat d&apos;initiative libéralisation,dérégulation =&gt; déréglementation croisière de plaisance,croisière maritime =&gt; croisière attraction,show =&gt; spectacle tourisme familial =&gt; vacances familiales pêche à la ligne,permis de pêche,article de pêche,pêche au gros,pêche touristique =&gt; pêche otsi,office municipal de tourisme,syndicat d&apos;initiative =&gt; office de tourisme
  • 13. Génération d’un fichier de synonymes <ul><li>Génération du fichier « synonyms.txt » à partir d’un fichier SKOS </li></ul><ul><ul><li>Utilisation du thesaurus de l’Organisation Mondiale du Tourisme (OMT) </li></ul></ul>&lt; skos:Concept rdf:about =&amp;quot; http://thes.world-tourism.org#VACANCES &amp;quot;&gt;   &lt; skos:altLabel xml:lang =&amp;quot; en &amp;quot;&gt; long stays &lt;/ skos:altLabel &gt;   &lt; skos:altLabel xml:lang =&amp;quot; fr &amp;quot;&gt; marché des vacances &lt;/ skos:altLabel &gt;   &lt; skos:altLabel xml:lang =&amp;quot; fr &amp;quot;&gt; genre de vacances &lt;/ skos:altLabel &gt;   &lt; skos:altLabel xml:lang =&amp;quot; fr &amp;quot;&gt; long séjour &lt;/ skos:altLabel &gt;   &lt; skos:altLabel xml:lang =&amp;quot; en &amp;quot;&gt; holiday markets &lt;/ skos:altLabel &gt;   &lt; skos:altLabel xml:lang =&amp;quot; en &amp;quot;&gt; vacations &lt;/ skos:altLabel &gt;   &lt; skos:altLabel xml:lang =&amp;quot; es &amp;quot;&gt; mercado de vacaciones &lt;/ skos:altLabel &gt;   &lt; skos:altLabel xml:lang =&amp;quot; fr &amp;quot;&gt; activité de vacances &lt;/ skos:altLabel &gt;   &lt; skos:altLabel xml:lang =&amp;quot; fr &amp;quot;&gt; type de vacances &lt;/ skos:altLabel &gt;   &lt; skos:altLabel xml:lang =&amp;quot; en &amp;quot;&gt; holiday tourism &lt;/ skos:altLabel &gt;   &lt; skos:altLabel xml:lang =&amp;quot; fr &amp;quot;&gt; congés payés &lt;/ skos:altLabel &gt;   &lt; skos:altLabel xml:lang =&amp;quot; es &amp;quot;&gt; estancia larga &lt;/ skos:altLabel &gt;   &lt; skos:altLabel xml:lang =&amp;quot; fr &amp;quot;&gt; 06.09 &lt;/ skos:altLabel &gt;   &lt; skos:broader rdf:resource =&amp;quot; http://thes.world-tourism.org#FLUX_TOURISTIQUE &amp;quot; /&gt;   &lt; skos:inScheme rdf:resource =&amp;quot; http://thes.world-tourism.org#_06_FLUX_TOURISTIQUE &amp;quot; /&gt;   &lt;!-- … --&gt;   &lt; skos:narrower rdf:resource =&amp;quot; http://thes.world-tourism.org#VACANCES_D&apos;HIVER &amp;quot; /&gt;   &lt; skos:narrower rdf:resource =&amp;quot; http://thes.world-tourism.org#VACANCES_D&apos;ETE &amp;quot; /&gt;   &lt; skos:prefLabel xml:lang =&amp;quot; en &amp;quot;&gt; HOLIDAYS &lt;/ skos:prefLabel &gt;   &lt; skos:prefLabel xml:lang =&amp;quot; fr &amp;quot;&gt; VACANCES &lt;/ skos:prefLabel &gt;   &lt; skos:prefLabel xml:lang =&amp;quot; es &amp;quot;&gt; VACACIONES &lt;/ skos:prefLabel &gt; &lt;/ skos:Concept &gt; … Activités nautiques HOLIDAYS,VACANCES,long stays,marché des vacances,genre de vacances,long séjour,holiday markets,vacations,activité de vacances,type de vacances,holiday tourism,congés payés,06.09 KOREA DPR,COREE RDP,20.03.05.03 TOURISM IN NATIONAL ECONOMIES,TOURISME DANS L&apos;ECONOMIE NATIONALE,04.04.04,place du tourisme dans l&apos;économie …
  • 14. Résultat
  • 15. Au moment de l’indexation ou de la recherche ? <ul><li>En général, il est préférable d’appliquer les synonymes à l’indexation </li></ul><ul><ul><li>Un synonyme avec plusieurs mots (« activité nautique ») est tokenisé au moment de la query et ne sera pas reconnu correctement </li></ul></ul><ul><ul><ul><li>Même avec des quotes ? </li></ul></ul></ul><ul><ul><li>Impact sur les algorithmes de scoring du moteur (IDF) </li></ul></ul><ul><ul><li>Les requêtes prefix (« acti* ») ou fuzzy (« ~activité ») ne sont pas analysées au moment de la query et ne seront pas étendues aux synonymes </li></ul></ul><ul><li>Mais : </li></ul><ul><ul><li>L’index sera d’autant plus gros </li></ul></ul><ul><ul><li>Si les synonymes changent, il faudra réindexer </li></ul></ul>
  • 16. Étendre ou ne pas étendre ? <ul><li>Une solution possible pour limiter la taille de l’index : </li></ul><ul><ul><li>Ne pas étendre sur une liste de synonymes </li></ul></ul><ul><ul><li>Mais se ramener à une valeur controlée </li></ul></ul><ul><ul><li>Qui pourrait être une URI de concept </li></ul></ul><ul><li>Avantages : </li></ul><ul><ul><li>La taille de l’index ne grossit pas </li></ul></ul><ul><ul><li>Pas d’influence sur les algorithmes de score </li></ul></ul><ul><li>Mais il faut analyser au moment de l’indexation ET de la recherche </li></ul><ul><li>Ne règle pas la question des synonymes composés de plusieurs mots </li></ul>spectacle,attraction,show pêche,pêche à la ligne,permis de pêche,article de pêche,pêche au gros,pêche touristique office de tourisme,otsi,office municipal de tourisme,syndicat d&apos;initiative attraction,show =&gt; spectacle pêche à la ligne,permis de pêche,article de pêche,pêche au gros,pêche touristique =&gt; pêche otsi,office municipal de tourisme,syndicat d&apos;initiative =&gt; office de tourisme attraction,show,spectacle =&gt; http://thes.world-tourism.org#SPECTACLE pêche, pêche à la ligne,permis de pêche,article de pêche,pêche au gros,pêche touristique =&gt; http://thes.world-tourism.org#PECHE office de tourisme, otsi,office municipal de tourisme,syndicat d&apos;initiative =&gt; http://thes.world-tourism.org#OFFICE_DE_TOURISME
  • 17. Des approches mixtes <ul><li>Garder deux listes de synonymes : </li></ul><ul><ul><li>Une utilisée à l’indexation </li></ul></ul><ul><ul><li>Une utilisée à la recherche </li></ul></ul><ul><li>Lorsque de nouveaux synonymes apparaissent : </li></ul><ul><ul><li>Les ajouter dans la liste de synonymes pour la recherche </li></ul></ul><ul><ul><ul><li>Ils sont pris en compte tout de suite, sans avoir besoin de réindexer </li></ul></ul></ul><ul><ul><ul><li>Ne règle pas la question des synonymes composés de plusieurs mots </li></ul></ul></ul><ul><ul><li>Les ajouter aussi dans la liste de synonymes pour l’indexation </li></ul></ul><ul><ul><ul><li>Ils seront pris en compte lors de la prochaine indexation </li></ul></ul></ul><ul><li>Lors de la prochaine réindexation : </li></ul><ul><ul><li>Vider la liste de synonymes utilisée à la recherche </li></ul></ul><ul><li>Autre approche mixte : </li></ul><ul><ul><li>Traiter tous les synonymes d’un seul mot à la recherche </li></ul></ul><ul><ul><li>Traiter tous les synonymes composés de plusieurs mots lors de l’indexation </li></ul></ul>
  • 18. Plan <ul><li>1 - Synonymes </li></ul><ul><li>2 - Traductions </li></ul><ul><li>3 - Termes spécifiques </li></ul><ul><li>4 - Corrections orthographiques </li></ul><ul><li>5 - Facettes </li></ul><ul><li>6 - Classification dynamique </li></ul><ul><li>7 - Alignements de vocabulaires </li></ul><ul><li>8 - Désambiguïsation </li></ul>
  • 19. 2 : enrichissement avec des traductions <ul><li>Pourquoi </li></ul><ul><ul><li>Rendre le moteur de recherche multilingue / pouvoir rechercher sur un contenu qui n’est pas dans ma langue d’interrogation </li></ul></ul><ul><li>Même principe qu’avec des synonymes </li></ul><ul><ul><li>On déclare les traductions comme des synonymes équivalents </li></ul></ul><ul><li>Exemple </li></ul><ul><ul><li>Utilisation du thesaurus GEMET du développement durable </li></ul></ul><ul><ul><li>Téléchargeable en SKOS à http:// www.eionet.europa.eu / gemet </li></ul></ul>… achat,purchase,compra mosaïque,mosaic,mosaico station de montagne,mountain resort,centro turístico de montaña … &lt; rdf:Description rdf:about =&amp;quot; concept/10910 &amp;quot;&gt;   &lt; skos:prefLabel xml:lang =&amp;quot; fr &amp;quot;&gt; station de montagne &lt;/ skos:prefLabel &gt;   &lt; skos:prefLabel xml:lang =&amp;quot; en &amp;quot;&gt; mountain resort &lt;/ skos:prefLabel &gt;   &lt; skos:prefLabel xml:lang =&amp;quot; es &amp;quot;&gt; centro turistico de montana &lt;/ skos:prefLabel &gt; &lt;/ rdf:Description &gt; &lt; fieldType name =&amp;quot; text &amp;quot; class =&amp;quot; solr.TextField &amp;quot; positionIncrementGap =&amp;quot; 100 &amp;quot;&gt; &lt; analyzer type =&amp;quot; index &amp;quot;&gt;    &lt; filter class =&amp;quot; solr.SynonymFilterFactory &amp;quot; synonyms =&amp;quot; synonyms.txt &amp;quot; ignoreCase =&amp;quot; true &amp;quot; expand =&amp;quot; true &amp;quot; /&gt;   &lt; filter class =&amp;quot; solr.SynonymFilterFactory &amp;quot; synonyms =&amp;quot; gemet.txt &amp;quot; ignoreCase =&amp;quot; true &amp;quot; expand =&amp;quot; true &amp;quot; /&gt; &lt;/ analyzer &gt; &lt;!-- … --&gt; &lt;/ fieldType &gt;
  • 20. Résultat
  • 21. !? <ul><li>Pourquoi une recherche sur « mosaic » matche poterie et vitrail ? </li></ul><ul><li>Pourtant, dans GEMET, on a seulement : </li></ul><ul><li>Oui, mais dans OMT, on a aussi : </li></ul><ul><ul><li>(on peut se demander si « poterie » ou « mosaique » ne devraient pas être des termes spécifiques de « ARTISANAT » dans le thesaurus de l’OMT ? C’est ainsi…) </li></ul></ul><ul><li>Puisqu’on utilise les 2 dictionnaires de synonymes, on a à l’indexation : </li></ul><ul><ul><li>Poterie  mosaïque  mosaic </li></ul></ul><ul><li>On tire parti des synonymes de l’OMT et des traductions du GEMET </li></ul><ul><ul><li>Attention aux interactions non souhaitées ! </li></ul></ul>… achat,purchase,compra mosaïque , mosaic ,mosaico station de montagne,mountain resort,centro turístico de montaña … ARTISANAT,vitrail,orfèvrerie,mécanique,dentelle,plomberie,tapisserie,ébénisterie, mosaïque ,modélisme,tissage,porcelaine,crafts,artisanat d&apos;art,menuiserie,cristallerie,joaillerie,émaux,peinture sur soie, poterie
  • 22. Plan <ul><li>1 - Synonymes </li></ul><ul><li>2 - Traductions </li></ul><ul><li>3 - Termes spécifiques </li></ul><ul><li>4 - Corrections orthographiques </li></ul><ul><li>5 - Facettes </li></ul><ul><li>6 - Classification dynamique </li></ul><ul><li>7 - Alignements de vocabulaires </li></ul><ul><li>8 - Désambiguïsation </li></ul>
  • 23. 3 : enrichissement avec les termes spécifiques <ul><li>Pourquoi ? </li></ul><ul><ul><li>Augmenter le rappel. Permet de rechercher sur des notions génériques </li></ul></ul><ul><li>Les thesaurus GEMET et OMT définissent une hiérarchie de termes </li></ul><ul><ul><li>Loisirs &gt; loisirs de plein air &gt; randonnée &gt; randonnées cycliste </li></ul></ul><ul><ul><li>Loisirs &gt; sorties &gt; spectacle &gt; cirque </li></ul></ul><ul><li>Une recherche sur « sorties » devrait ramener les documents contenant « spectacle » ou « cirque » </li></ul><ul><ul><li>Une recherche sur « Loisirs » devrait ramener les documents contenant « randonnée » ou « spectacle » </li></ul></ul><ul><ul><li>Etc. </li></ul></ul>
  • 24. <ul><li>Comment ? </li></ul><ul><ul><li>On va là aussi se servir du mécanisme de synonymes </li></ul></ul><ul><ul><li>On va appliquer cette traduction à l’indexation, il faut donc traduire du terme spécifique vers tous ses termes génériques </li></ul></ul><ul><ul><ul><li>Si on traduisait à la recherche, on traduirait du générique vers le spécifique </li></ul></ul></ul><ul><ul><ul><li>Si « peinture » est dans le texte, on doit insérer dans l’index « loisirs culturels » et « loisirs » qui sont ses termes génériques </li></ul></ul></ul>Génération du fichier de termes spécifiques &lt; skos:Concept rdf:about =&amp;quot; http://thes.world-tourism.org#LOISIRS &amp;quot;&gt;   &lt; skos:narrower rdf:resource =&amp;quot; http://thes.world-tourism.org#LOISIRS_DE_PLEIN_AIR &amp;quot; /&gt;   &lt; skos:narrower rdf:resource =&amp;quot; http://thes.world-tourism.org#SORTIE &amp;quot; /&gt;   &lt; skos:narrower rdf:resource =&amp;quot; http://thes.world-tourism.org#LOISIRS_D&apos;INTERIEUR &amp;quot; /&gt;   &lt; skos:narrower rdf:resource =&amp;quot; http://thes.world-tourism.org#OISIVETE &amp;quot; /&gt;   &lt; skos:narrower rdf:resource =&amp;quot; http://thes.world-tourism.org#LOISIRS_CULTURELS &amp;quot; /&gt;   &lt; skos:narrower rdf:resource =&amp;quot; http://thes.world-tourism.org#JEU &amp;quot; /&gt;   &lt; skos:narrower rdf:resource =&amp;quot; http://thes.world-tourism.org#ARTISANAT &amp;quot; /&gt;   &lt; skos:prefLabel xml:lang =&amp;quot; fr &amp;quot;&gt; LOISIRS &lt;/ skos:prefLabel &gt; &lt;/ skos:Concept &gt; &lt; skos:Concept rdf:about =&amp;quot; http://thes.world-tourism.org#LOISIRS_CULTURELS &amp;quot;&gt;   &lt; skos:altLabel xml:lang =&amp;quot; fr &amp;quot;&gt; loisirs artistiques &lt;/ skos:altLabel &gt;   &lt; skos:broader rdf:resource =&amp;quot; http://thes.world-tourism.org#LOISIRS &amp;quot; /&gt;   &lt; skos:narrower rdf:resource =&amp;quot; http://thes.world-tourism.org#PEINTURE &amp;quot; /&gt;   &lt; skos:prefLabel xml:lang =&amp;quot; fr &amp;quot;&gt; LOISIRS CULTURELS &lt;/ skos:prefLabel &gt; &lt;/ skos:Concept &gt; &lt; skos:Concept rdf:about =&amp;quot; http://thes.world-tourism.org#PEINTURE &amp;quot;&gt;   &lt; skos:altLabel xml:lang =&amp;quot; fr &amp;quot;&gt; 09.03.07 &lt;/ skos:altLabel &gt;   &lt; skos:broader rdf:resource =&amp;quot; http://thes.world-tourism.org#LOISIRS_CULTURELS &amp;quot; /&gt;   &lt; skos:prefLabel xml:lang =&amp;quot; fr &amp;quot;&gt; PEINTURE &lt;/ skos:prefLabel &gt; &lt;/ skos:Concept &gt; RESEAU =&gt; TRAFIC,TRANSPORT PEINTURE =&gt; LOISIRS CULTURELS,LOISIRS FETE =&gt; MANIFESTATION CULTURELLE,MANIFESTATION TOURISTIQUE TRANSPORT FLUVIAL =&gt; MODE DE TRANSPORT,TRANSPORT
  • 25. Résultat
  • 26. Plan <ul><li>1 - Synonymes </li></ul><ul><li>2 - Traductions </li></ul><ul><li>3 - Termes spécifiques </li></ul><ul><li>4 - Corrections orthographiques </li></ul><ul><li>5 - Facettes </li></ul><ul><li>6 - Classification dynamique </li></ul><ul><li>7 - Alignements de vocabulaires </li></ul><ul><li>8 - Désambiguïsation </li></ul>
  • 27. 4 : correction orthographique <ul><li>Pourquoi ? </li></ul><ul><ul><li>Proposer à l’utilisateur un terme approchant de celui recherché </li></ul></ul><ul><ul><ul><li>« retsaurant »  « Did you mean ‘ restaurant ’ ? » </li></ul></ul></ul><ul><li>Comment ? 2 façons de faire du spellchecking : </li></ul><ul><ul><li>En utilisant l’index comme un dictionnaire </li></ul></ul><ul><ul><ul><li>Les propositions de correction matchent forcément des résultats dans l’index </li></ul></ul></ul><ul><ul><ul><ul><li>Donc presque 100% de chance de ramener des résultats, sauf si les termes corrigés sont combinés avec d’autres termes dans la requête </li></ul></ul></ul></ul><ul><ul><ul><li>Mais tout le vocabulaire métier n’est pas forcément proposé à la correction </li></ul></ul></ul><ul><ul><ul><ul><li>S’il n’est pas présent dans le contenu indexé </li></ul></ul></ul></ul><ul><ul><li>En s’appuyant sur une liste de termes contrôlés </li></ul></ul><ul><ul><ul><li>Les propositions ne ramèneront pas forcément de résultats </li></ul></ul></ul><ul><ul><ul><ul><li>Puisqu’il n’y a pas de garantie qu’un document contienne ce terme </li></ul></ul></ul></ul><ul><ul><ul><li>Mais tout le vocabulaire métier sera proposé pour contrôler </li></ul></ul></ul>
  • 28. Spellchecking à base d’une liste contrôlée <ul><li>Configuration SolR : solrconfig.xml </li></ul>&lt; config &gt; &lt; searchComponent name =&amp;quot; spellcheck &amp;quot; class =&amp;quot; solr.SpellCheckComponent &amp;quot;&gt;   &lt; str name =&amp;quot; queryAnalyzerFieldType &amp;quot;&gt; textSpell &lt;/ str &gt; &lt; lst name =&amp;quot; spellchecker &amp;quot;&gt;   &lt; str name =&amp;quot; name &amp;quot;&gt; default &lt;/ str &gt;   &lt; str name =&amp;quot; field &amp;quot;&gt; name &lt;/ str &gt;   &lt; str name =&amp;quot; spellcheckIndexDir &amp;quot;&gt; ./spellchecker &lt;/ str &gt;   &lt;/ lst &gt; &lt; lst name =&amp;quot; spellchecker &amp;quot;&gt;   &lt; str name =&amp;quot; classname &amp;quot;&gt; solr.FileBasedSpellChecker &lt;/ str &gt;   &lt; str name =&amp;quot; name &amp;quot;&gt; file &lt;/ str &gt;   &lt; str name =&amp;quot; sourceLocation &amp;quot;&gt; spellcheck.txt &lt;/ str &gt;   &lt; str name =&amp;quot; characterEncoding &amp;quot;&gt; UTF-8 &lt;/ str &gt;   &lt; str name =&amp;quot; accuracy &amp;quot;&gt; 0.8 &lt;/ str &gt;   &lt; str name =&amp;quot; spellcheckIndexDir &amp;quot;&gt; ./spellcheckerFile &lt;/ str &gt;   &lt;/ lst &gt; &lt;/ searchComponent &gt; &lt; requestHandler name =&amp;quot; standard &amp;quot; class =&amp;quot; solr.SearchHandler &amp;quot; default =&amp;quot; true &amp;quot;&gt; &lt; lst name =&amp;quot; defaults &amp;quot;&gt;   &lt; str name =&amp;quot; echoParams &amp;quot;&gt; explicit &lt;/ str &gt;   &lt; str name =&amp;quot; spellcheck.onlyMorePopular &amp;quot;&gt; false &lt;/ str &gt;   &lt; str name =&amp;quot; spellcheck.extendedResults &amp;quot;&gt; false &lt;/ str &gt;   &lt; str name =&amp;quot; spellcheck.count &amp;quot;&gt; 1 &lt;/ str &gt;   &lt;/ lst &gt; &lt; arr name =&amp;quot; last-components &amp;quot;&gt;   &lt; str &gt; spellcheck &lt;/ str &gt;   &lt;/ arr &gt; &lt;/ requestHandler &gt; &lt;/ config &gt;
  • 29. Génération du fichier spellcheck.txt <ul><li>Génération du fichier spellcheck.txt à partir du fichier SKOS de l’OMT </li></ul>&lt; skos:Concept rdf:about =&amp;quot; http://thes.world-tourism.org#VACANCES &amp;quot;&gt;   &lt; skos:altLabel xml:lang =&amp;quot; en &amp;quot;&gt; long stays &lt;/ skos:altLabel &gt;   &lt; skos:altLabel xml:lang =&amp;quot; fr &amp;quot;&gt; marché des vacances &lt;/ skos:altLabel &gt;   &lt; skos:altLabel xml:lang =&amp;quot; fr &amp;quot;&gt; genre de vacances &lt;/ skos:altLabel &gt;   &lt; skos:altLabel xml:lang =&amp;quot; fr &amp;quot;&gt; long séjour &lt;/ skos:altLabel &gt;   &lt; skos:altLabel xml:lang =&amp;quot; en &amp;quot;&gt; holiday markets &lt;/ skos:altLabel &gt;   &lt; skos:altLabel xml:lang =&amp;quot; en &amp;quot;&gt; vacations &lt;/ skos:altLabel &gt;   &lt; skos:altLabel xml:lang =&amp;quot; es &amp;quot;&gt; mercado de vacaciones &lt;/ skos:altLabel &gt;   &lt; skos:altLabel xml:lang =&amp;quot; fr &amp;quot;&gt; activité de vacances &lt;/ skos:altLabel &gt;   &lt; skos:altLabel xml:lang =&amp;quot; fr &amp;quot;&gt; type de vacances &lt;/ skos:altLabel &gt;   &lt; skos:altLabel xml:lang =&amp;quot; en &amp;quot;&gt; holiday tourism &lt;/ skos:altLabel &gt;   &lt; skos:altLabel xml:lang =&amp;quot; fr &amp;quot;&gt; congés payés &lt;/ skos:altLabel &gt;   &lt; skos:altLabel xml:lang =&amp;quot; es &amp;quot;&gt; estancia larga &lt;/ skos:altLabel &gt;   &lt; skos:altLabel xml:lang =&amp;quot; fr &amp;quot;&gt; 06.09 &lt;/ skos:altLabel &gt;   &lt; skos:broader rdf:resource =&amp;quot; http://thes.world-tourism.org#FLUX_TOURISTIQUE &amp;quot; /&gt;   &lt; skos:inScheme rdf:resource =&amp;quot; http://thes.world-tourism.org#_06_FLUX_TOURISTIQUE &amp;quot; /&gt;   &lt;!-- … --&gt;   &lt; skos:narrower rdf:resource =&amp;quot; http://thes.world-tourism.org#VACANCES_D&apos;HIVER &amp;quot; /&gt;   &lt; skos:narrower rdf:resource =&amp;quot; http://thes.world-tourism.org#VACANCES_D&apos;ETE &amp;quot; /&gt;   &lt; skos:prefLabel xml:lang =&amp;quot; en &amp;quot;&gt; HOLIDAYS &lt;/ skos:prefLabel &gt;   &lt; skos:prefLabel xml:lang =&amp;quot; fr &amp;quot;&gt; VACANCES &lt;/ skos:prefLabel &gt;   &lt; skos:prefLabel xml:lang =&amp;quot; es &amp;quot;&gt; VACACIONES &lt;/ skos:prefLabel &gt; &lt;/ skos:Concept &gt; ORGANISMO DE CREDITO 14.11.02 Activités nautiques HOLIDAYS VACANCES VACACIONES marché des vacances genre de vacances long séjour activité de vacances type de vacances congés payés 06.09 KOREA DPR …
  • 30. Résultat
  • 31. Plan <ul><li>1 - Synonymes </li></ul><ul><li>2 - Traductions </li></ul><ul><li>3 - Termes spécifiques </li></ul><ul><li>4 - Corrections orthographiques </li></ul><ul><li>5 - Facettes </li></ul><ul><li>6 - Classification dynamique </li></ul><ul><li>7 - Alignements de vocabulaires </li></ul><ul><li>8 - Désambiguïsation </li></ul>
  • 32. 5 : structurer sémantiquement le contenu <ul><li>« Smarter content = smarter index » </li></ul><ul><li>Il faut s’intéresser à la structuration sémantique du contenu afin d’améliorer la recherche </li></ul><ul><ul><li>Associer des métadonnées au contenu </li></ul></ul><ul><ul><li>Qui prennent leurs valeurs dans des référentiels non-ambigus (identification avec des URIs) </li></ul></ul><ul><li>L’association de métadonnées structurées au contenu permet la navigation par facettes </li></ul><ul><li>Cette problématique est un univers en soi et ne sera pas détaillée ici </li></ul><ul><ul><li>Utilisation d’outils de text-mining et/ou de middlewares d’intégration comme le CA-Manager de Mondeca </li></ul></ul><ul><ul><ul><li>SolR dispose de capacité d’intégration UIMA dans sa chaine d’indexation pour intégrer des outils de text-mining </li></ul></ul></ul><ul><ul><li>Structuration manuelle dans le cas du catalogue touristique </li></ul></ul>
  • 33. Catalogue structuré en RDF
  • 34. Configuration du schema d’indexation <ul><li>1 champ d’index pour chaque metadonnée </li></ul><ul><ul><li>Dans conf/schema.xml </li></ul></ul>  &lt; field name =&amp;quot; Mot_Cle_103696 &amp;quot; multiValued =&amp;quot; true &amp;quot; type =&amp;quot; string &amp;quot; indexed =&amp;quot; true &amp;quot; stored =&amp;quot; true &amp;quot; /&gt;   &lt; field name =&amp;quot; animaux_acceptes &amp;quot; multiValued =&amp;quot; false &amp;quot; type =&amp;quot; string &amp;quot; indexed =&amp;quot; true &amp;quot; stored =&amp;quot; true &amp;quot; /&gt;   &lt; field name =&amp;quot; bassin_touristique_at &amp;quot; multiValued =&amp;quot; true &amp;quot; type =&amp;quot; string &amp;quot; indexed =&amp;quot; true &amp;quot; stored =&amp;quot; true &amp;quot; /&gt;   &lt; field name =&amp;quot; bordereau_Tourinfrance_103952 &amp;quot; multiValued =&amp;quot; true &amp;quot; type =&amp;quot; string &amp;quot; indexed =&amp;quot; true &amp;quot; stored =&amp;quot; true &amp;quot; /&gt;   &lt; field name =&amp;quot; commune_at &amp;quot; multiValued =&amp;quot; true &amp;quot; type =&amp;quot; string &amp;quot; indexed =&amp;quot; true &amp;quot; stored =&amp;quot; true &amp;quot; /&gt;   &lt; field name =&amp;quot; zone_geographique_at &amp;quot; multiValued =&amp;quot; true &amp;quot; type =&amp;quot; string &amp;quot; indexed =&amp;quot; true &amp;quot; stored =&amp;quot; true &amp;quot; /&gt;   &lt; field name =&amp;quot; paiement_accepte &amp;quot; multiValued =&amp;quot; true &amp;quot; type =&amp;quot; string &amp;quot; indexed =&amp;quot; true &amp;quot; stored =&amp;quot; true &amp;quot; /&gt;   &lt; field name =&amp;quot; label_at &amp;quot; multiValued =&amp;quot; true &amp;quot; type =&amp;quot; string &amp;quot; indexed =&amp;quot; true &amp;quot; stored =&amp;quot; true &amp;quot; /&gt;   &lt; field name =&amp;quot; langue_parlee &amp;quot; multiValued =&amp;quot; true &amp;quot; type =&amp;quot; string &amp;quot; indexed =&amp;quot; true &amp;quot; stored =&amp;quot; true &amp;quot; /&gt;   &lt; field name =&amp;quot; type_h &amp;quot; multiValued =&amp;quot; true &amp;quot; type =&amp;quot; string &amp;quot; indexed =&amp;quot; true &amp;quot; stored =&amp;quot; true &amp;quot; /&gt;   &lt; field name =&amp;quot; classement &amp;quot; multiValued =&amp;quot; true &amp;quot; type =&amp;quot; string &amp;quot; indexed =&amp;quot; true &amp;quot; stored =&amp;quot; true &amp;quot; /&gt;   &lt; field name =&amp;quot; tarif_nuit_mini &amp;quot; multiValued =&amp;quot; true &amp;quot; type =&amp;quot; string &amp;quot; indexed =&amp;quot; true &amp;quot; stored =&amp;quot; true &amp;quot; /&gt;
  • 35. Résultat : facettes
  • 36. Plan <ul><li>1 - Synonymes </li></ul><ul><li>2 - Traductions </li></ul><ul><li>3 - Termes spécifiques </li></ul><ul><li>4 - Corrections orthographiques </li></ul><ul><li>5 - Facettes </li></ul><ul><li>6 - Classification dynamique </li></ul><ul><li>7 - Alignements de vocabulaires </li></ul><ul><li>8 - Désambiguïsation </li></ul>
  • 37. 7 : classification dynamique du contenu <ul><li>Pourquoi ? </li></ul><ul><ul><li>Le classement des entrées du catalogue n’est pas celui que l’on veut présenter à l’utilisateur final </li></ul></ul><ul><ul><ul><li>Vision « objective » vs. Vision « subjective » </li></ul></ul></ul><ul><ul><li>On veut pouvoir présenter un classement différent du même catalogue : </li></ul></ul><ul><ul><ul><li>À des audiences différentes </li></ul></ul></ul><ul><ul><ul><li>Sur des medias différents </li></ul></ul></ul><ul><ul><li>On veut présenter le même catalogue suivant plusieurs axes </li></ul></ul><ul><ul><li>Favoriser la réutilisation du contenu </li></ul></ul><ul><li>Un hébergement ? </li></ul><ul><ul><li>Simple </li></ul></ul><ul><ul><li>Classique </li></ul></ul><ul><ul><li>Raffiné </li></ul></ul>
  • 38. ITM-rules : création des règles
  • 39. Définition de règles : format <ul><li>Les nouvelles hiérarchies de classement sont définies en SKOS </li></ul><ul><li>A chaque entrée SKOS sont associées des règles de classification en SPARQL – générées à partir de l’écran </li></ul>&lt; skos:Concept rdf:about =&amp;quot; itm:n#_migration_taxo_106544 &amp;quot;&gt;   &lt; skos:prefLabel xml:lang =&amp;quot; fr &amp;quot;&gt; Raffiné &lt;/ skos:prefLabel &gt;   &lt; skos:definition &gt; PREFIX r: &lt;itm:n#&gt; PREFIX q: http://www.nievre-tourisme.com/onto# CONSTRUCT { ?SEARCHED_TOPIC &lt;http://purl.org/dc/terms/subject&gt; r:_migration_taxo_106544 .} WHERE { ?SEARCHED_TOPIC a q:Hebergement . ?SEARCHED_TOPIC q:classement q:class_CAT4 . } &lt;/ skos:definition &gt;   &lt; skos:definition &gt; PREFIX j: &lt;itm:n#&gt; PREFIX i: http://www.nievre-tourisme.com/onto# CONSTRUCT { ?SEARCHED_TOPIC &lt;http://purl.org/dc/terms/subject&gt; j:_migration_taxo_106544 .} WHERE { ?SEARCHED_TOPIC a i:Hebergement . ?SEARCHED_TOPIC i:classement i:class_4EP . } &lt;/ skos:definition &gt; &lt;/ skos:Concept &gt;
  • 40. Content-classifier : Execution des règles 26/10/11 Taxonomy (Classification Rules) SKOS + SPARQL Classification engine RDF Content Metadata … Classification Metadata … <ul><li>Based on RDF triplestore </li></ul><ul><li>Loads terminology and metadata </li></ul><ul><li>Infer on terminology </li></ul><ul><ul><li>OWL &amp; SKOS inference </li></ul></ul><ul><ul><li>Custom rules </li></ul></ul><ul><li>Apply SPARQL classification rules </li></ul><ul><li>optionnaly, simplifies RDF structure </li></ul>?x is a &lt;Hotel&gt; and price(?x) &lt; 50 ?x is a &lt;Camping&gt; and size(?x) &gt; 300 … Terminology SKOS + RDF Content classified with additionnal dcterms:subject and dc:subject properties
  • 41. Le catalogue classifié avec des métadonnées supplémentaires
  • 42. Champs d’index supplémentaires pour les nouvelles classifications <ul><li>Nouveaux champs d’index pour les nouvelles métadonnées </li></ul><ul><ul><li>Dans conf/schema.xml </li></ul></ul>  &lt; field name =&amp;quot; taxo_confort &amp;quot; multiValued =&amp;quot; true &amp;quot; type =&amp;quot; string &amp;quot; indexed =&amp;quot; true &amp;quot; stored =&amp;quot; true &amp;quot; /&gt;   &lt; field name =&amp;quot; taxo_generale &amp;quot; multiValued =&amp;quot; true &amp;quot; type =&amp;quot; string &amp;quot; indexed =&amp;quot; true &amp;quot; stored =&amp;quot; true &amp;quot; /&gt;
  • 43. Classification dynamique : Résultat
  • 44. Plan <ul><li>1 - Synonymes </li></ul><ul><li>2 - Traductions </li></ul><ul><li>3 - Termes spécifiques </li></ul><ul><li>4 - Corrections orthographiques </li></ul><ul><li>5 - Facettes </li></ul><ul><li>6 - Classification dynamique </li></ul><ul><li>7 - Alignements de vocabulaires </li></ul><ul><li>8 - Désambiguïsation </li></ul>
  • 45. 8 : utilisation d’alignements de référentiels <ul><li>Pourquoi ? </li></ul><ul><ul><li>Si le contenu est annoté sur un thesaurus A, et que l’utilisateur cherche avec un thesaurus B ? </li></ul></ul><ul><ul><li>Permet d’interroger des corpus annoté sur un thesaurus différent de celui de la recherche </li></ul></ul>GEMET Alignement des thesaurus OMT
  • 46. ITM-align : Création des alignements
  • 47. Format des alignements &lt; map &gt; &lt; Cell rdf:about =&amp;quot; 150046 &amp;quot;&gt; &lt; entity1 &gt;   &lt; edoal:Class rdf:about =&amp;quot; http://eurlex-directory-codes.europa.eu/0350 &amp;quot; /&gt;   &lt;/ entity1 &gt; &lt; entity2 &gt;   &lt; edoal:Class rdf:about =&amp;quot; http://eurovoc.europa.eu/2897 &amp;quot; /&gt;   &lt;/ entity2 &gt;   &lt; relation &gt; fr.inrialpes.exmo.align.impl.rel.EquivRelation &lt;/ relation &gt;   &lt; measure rdf:datatype =&amp;quot; http://www.w3.org/2001/XMLSchema#float &amp;quot;&gt; 1.0 &lt;/ measure &gt;   &lt;/ Cell &gt; &lt;/ map &gt; &lt; map &gt; &lt; Cell rdf:about =&amp;quot; 152849 &amp;quot;&gt; &lt; entity1 &gt;   &lt; edoal:Class rdf:about =&amp;quot; http://eurlex-directory-codes.europa.eu/0350 &amp;quot; /&gt;   &lt;/ entity1 &gt; &lt; entity2 &gt;   &lt; edoal:Class rdf:about =&amp;quot; http://eurovoc.europa.eu/2479 &amp;quot; /&gt;   &lt;/ entity2 &gt;   &lt; relation &gt; fr.inrialpes.exmo.align.impl.rel.EquivRelation &lt;/ relation &gt;   &lt; measure rdf:datatype =&amp;quot; http://www.w3.org/2001/XMLSchema#float &amp;quot;&gt; 1.0 &lt;/ measure &gt;   &lt;/ Cell &gt; &lt;/ map &gt; Concepts alignés Type de la relation Score Format « EDOAL » de l’INRIA : http://alignapi.gforge.inria.fr/edoal.html
  • 48. Utilisation des alignements <ul><li>Au moment de l’ indexation </li></ul><ul><li>On traduit les annotations des documents d’origine en utilisant l’alignement </li></ul><ul><ul><li>Du Thesaurus A vers le thesaurus B </li></ul></ul><ul><li>On enrichit l’index avec les concepts du thesaurus B </li></ul><ul><ul><li>L’index contient donc l’annotation sur le thesaurus A et sur le thesaurus B </li></ul></ul><ul><li>On peut ensuite rechercher sur le corpus en utilisant les concepts du thesaurus B </li></ul><ul><li>L’alignement est interprété par du code spécifique dans la chaine d’indexation, il n’y a pas de config spécifique côté SolR </li></ul><ul><ul><li>Si ce n’est un champ d’index dédié pour recevoir le résultat de la traduction </li></ul></ul>
  • 49. Alignements des référentiels : résultat Facette sur l’annotation du thesaurus de départ Facette sur les concepts traduits par l’alignement
  • 50. Plan <ul><li>1 - Synonymes </li></ul><ul><li>2 - Traductions </li></ul><ul><li>3 - Termes spécifiques </li></ul><ul><li>4 - Corrections orthographiques </li></ul><ul><li>5 - Facettes </li></ul><ul><li>6 - Classification dynamique </li></ul><ul><li>7 - Alignements de vocabulaires </li></ul><ul><li>8 - Désambiguïsation </li></ul>
  • 51. Désambiguïsation <ul><li>Pourquoi ? </li></ul><ul><ul><li>Ramener les termes de recherche d’un utilisateur à une entité contrôlée </li></ul></ul><ul><ul><ul><li>« loisirs »    http://thes.world-tourism.org#LOISIRS </li></ul></ul></ul><ul><li>Désambiguïser une entité au moment de la recherche n’a de sens que si cette entité a été désambiguïsée au moment de l’indexation </li></ul><ul><ul><li>Soit le document était explicitement catégorisé sur une entité (par son URI) </li></ul></ul><ul><ul><li>Soit l’entité a été extraite par du text-mining </li></ul></ul><ul><li>La désambiguïsation d’une entité du référentiel par le moteur ne peut se faire que si le référentiel a été lui-même indexé par le moteur </li></ul>
  • 52. Désambiguïsation : principe 1. Utilisation du référentiel à l’indexation 2. Indexation du référentiel 3. Désambiguïsation du terme vers une entité contrôlée 4. Recherche sur l’identifiant de l’entité contrôlée doc2 http://www.z.fr/e1 doc1 http://www.z.fr/e1 http://www.z.fr/e2 cupidon http://www.z.fr/e1 venus
  • 53. Désambiguïsation : Résultat
  • 54. Plan <ul><li>1 - Synonymes </li></ul><ul><li>2 - Traductions </li></ul><ul><li>3 - Termes spécifiques </li></ul><ul><li>4 - Corrections orthographiques </li></ul><ul><li>5 - Facettes </li></ul><ul><li>6 - Classification dynamique </li></ul><ul><li>7 - Alignements de vocabulaires </li></ul><ul><li>8 - Désambiguïsation </li></ul>
  • 55. Merci de votre attention ! [email_address]

×