Veille et meilleures pratiques

Document de présentation technique - Le Web sémantique : une ressource à découvrir

Barrière, C. Le Web sémantique : une ressource à découvrir. Montréal, CRIM, 2013. 6 p.
[Texte complet]

Le Web pour les humains...

Nous connaissons le Web, ou plutôt nous en sommes presque au point de ne pouvoir vivre sans le Web… Cette toile (d’où son nom) bien tissée de liens entre divers sites d’information, est devenue une source de référence pour le monde entier. Des sites de nouvelles, aux sites de compagnies, aux blogues, aux sites personnels, artistiques, et autres, nous y retrouvons une masse d’information.

Un problème actuel n’est pas tant la quantité d’information que possède le Web, mais la difficulté à s’y retrouver. Plusieurs compagnies, telles que Google et Yahoo, proposent des moteurs de recherche que nous utilisons de façon journalière et qui, en fonction de mots-clés, nous mènent vers divers sites d’intérêt.

Ce Web que nous connaissons, c’est un Web qu’on peut consulter et lire en tant qu’humain; un Web multilingue où tous et chacun peuvent y lire des textes dans sa propre langue. C’est aussi un Web qu’on dit non structuré et multimédia, puisqu’il assemble du contenu audio, vidéo et texte, et dont l’organisation ne permet pas de le questionner de façon précise. Tentez de demander à un moteur de recherche quels sont les acteurs principaux d’un film que vous venez de voir! Avec de la chance, ce film aura une page Wikipédia (http://www.wikipedia.org) où vous pourrez y rechercher l’information désirée. Alternativement, des sites spécialisés, tel IMDb (http://www.imdb.com), contiennent la réponse à votre question, car ils sont alimentés par d’importantes bases de données propriétaires.

Mais, imaginez vouloir développer une application Web [a] où les cinéphiles peuvent poser toutes sortes de questions… L’information des banques de données propriétaires ne vous est pas accessible, malheureusement; d’autre part, l’information de Wikipédia est accessible, mais votre application Web ne sait pas lire ces pages puisqu’elles s’adressent à des humains… comme vous. Alors, comment fera-t-elle pour questionner Wikipédia et surtout « comprendre » l’information qui se trouve dans le texte?
 

Le Web sémantique, pour les logiciels…

Le Web sémantique vient à la rescousse de nos logiciels en besoin d’information, mais qui ne savent pas lire… Le Web sémantique est un Web de données, qui tente de structurer l’information et la rendre disponible à nos applications, par des méthodes de recherche bien définies.

Le concept du Web sémantique a été introduit en 2001 (Berners-Lee et al. 2001). Il consiste en l’ajout d’une couche de données au Web actuel. Cette couche de données devrait représenter les informations non structurées, actuellement publiées en format HTML, de façon non ambiguë, interopérable et manipulable par les logiciels. On comprend bien que le Web sémantique est un projet ambitieux. Ce n’est pas demain que nous aurons tout le contenu du Web transformé en une gigantesque base de connaissances manipulable automatiquement par les logiciels.

Quoique le Web sémantique soit devenu très volumineux et complexe, l’idée sous-jacente demeure simple, soit l’établissement d’un format d’échange d’information pour un Web de données et permettre à tous de publier ainsi des données qui pourront être interreliées. Ainsi, toute l’information est modélisée sous forme de triplets RDF (Resource Description Format) tels que défini par un standard du W3C (World Wide Web Consortium). Ce format RDF s’impose maintenant comme standard d’encodage pour le Web sémantique.

Un triplet RDF est composé d’un sujet, d’un prédicat et d’un objet (dans cet ordre). L’idée est de créer des liens entre des entités (sujet et objet) par l’intermédiaire des prédicats, qui expriment des relations. Par exemple, le triplet (Midnight_in_Paris, director, Woody_Allen) établit que le film Midnight_in_Paris (sujet) a été dirigé (prédicat) par Woody_Allen (objet).

Facile ? Oui, mais ce n’est pas si simple. Il faut en fait se conformer à quelques restrictions supplémentaires si l’on veut en faire un triplet « légal ». Ses composants (sujet, prédicat, objet) sont principalement des identificateurs de ressources, connus sous le nom de URI (Universal Resource Identifier). Ils s’apparentent aux URIs (Uniform Resource Locators), qu’on appelle plus souvent des adresses Web et avec lesquels nous sommes très familiers. Le triplet ci-haut n’est donc pas valide, il devrait plutôt être :

<http://dbpedia.org/resource/Midnight_in_Paris>
<http://dbpedia.org/ontology/director>
<http://dbpedia.org/resource/Woody_Allen>


Nous avons trois URIs, donc trois ressources uniques, qui proviennent d’un dépôt RDF, nommément le dépôt DBPedia (http://dbpedia.org). DBPedia définit le concept de Midnight_in_Paris, et le concept de Woody_Allen. Le prédicat director est aussi présent dans l’ontologie [b] de DBPedia qui définit un ensemble de prédicats possibles (producer, director, distributor, writer, etc). 

À l’aide des ressources, le Web sémantique met en place deux notions très importantes, soit (1) référer à des concepts (et non pas du texte) et (2) faire des liens entre ces concepts. En effet, chaque URI peut mener à d’autres informations, par exemple, si nous suivons l’URI de Woody_Allen, nous pouvons accéder à d’autres triplets, tels :

<http://dbpedia.org/resource/Woody_Allen >
<http://dbpedia.org/ontology/birthPlace>
<http://dbpedia.org/resource/New_York_City>


et

<http://dbpedia.org/resource/Woody_Allen >
<http://dbpedia.org/ontology/birthDate>
“1935-12-01”.


Nous voyons dans ce dernier triplet que la date de naissance n’est pas un URI, mais plutôt une étiquette (appelée literal en anglais). Dans les triplets, seuls les objets peuvent être constitués d’étiquettes et ainsi ne mener vers aucune autre information; les sujets et prédicats, quant à eux, doivent être obligatoirement des URIs. DBPedia est en fait tiré d’une des plus grandes ressources du Web, soit Wikipédia. Vous avez déjà remarqué les « infobox » dans Wikipédia. Ces « infobox » souvent mis à droite, répertorient des informations sous forme de tableau et ils deviennent alors des sources superbes d’information structurée. Une information structurée ressemble plus à une information provenant d’une base de données que de texte libre. DBPedia est ainsi construit automatiquement à partir des « infobox » et forme un des plus grands dépôts RDF du Web sémantique.
 

Qui peut publier sur le Web sémantique ?

Nous avons tous le droit de publier des ressources… et d’avoir des dépôts RDF. Il n’y a aucune restriction, sauf celle de se conformer au format d’échange RDF. Mais, le but du Web sémantique est aussi d’officialiser certaines ressources de par le fait qu’elles sont publiées par des entités renommées dans un domaine.

En effet, un des buts du Web sémantique est de définir, de façon unique, des concepts qui peuvent être réutilisés par diverses entités dans le monde. Si par exemple, le « National Library of Medicine » (NLM) est une sommité dans le domaine médical, on peut lui laisser la tâche de définir officiellement les maladies, médicaments, symptômes, etc., et ainsi favoriser la réutilisation et minimiser la redondance. Le site DailyMed (http://www4.wiwiss.fu-berlin.de/dailymed/) est un dépôt RDF sur des médicaments utilisant les informations du NLM. Un musée sera aussi le mieux placé pour parler de ses objets d’art, et certains, tel le British Museum (http://collection.britishmuseum.org), ont débuté la publication de l’information sur leurs collections.

D’autre part, le gouvernement du Canada serait l’entité la mieux placée pour publier l’information démographique sur les villes, les populations, les moyennes salariales, etc. En effet, il y a présentement une tendance vers les données ouvertes (Open Data) et l’accès à l’information. Mais, la notion de données ouvertes n’équivaut pas nécessairement à la notion de Web sémantique. Plusieurs gouvernements ont commencé à publier des données accessibles à tous, donc données ouvertes, mais ces données sont dans des fichiers (comme en format PDF). Le gouvernement britannique publie des données ouvertes en format RDF… ça, c’est un pas en avant (http://data.gov.uk ).

Le projet Linked Open Data (LOD) (Bizer, 2009) est un ensemble distribué de banques de données RDF contenant à l’heure actuelle plus 1 700 sources de données, représentant 25 milliards de triplets et couvrant divers domaines (musique, sciences, arts, médecine, etc.). Les interconnexions dans le réseau LOD sont réalisées par le biais de triplets RDF reliant deux entités (URIs) de sources distinctes. Le dépôt DBPedia, tel que nous avons vu précédemment, est devenu au fil des années un point central LOD.


Ainsi, il importe que tous et chacun désirant publier ses propres données soient au courant des données existantes, afin de créer des liens appropriés entre elles. Le nombre de ressources étant très grand, il existe des « hubs » qui fournissent des listes de ces dépôts. Par exemple, le Datahub (http://datahub.io/group/lodcloud) répertorie des centaines de dépôts de données ouvertes, dont certains sont des dépôts RDF, tandis que d’autres ne le sont pas.
 

Comment accéder au Web sémantique ?

Le Web sémantique a son propre langage d’accès qui s’appelle SPARQL. Une entité publiant un dépôt RDF fournira un « SPARQL endpoint » qui permet aux logiciels (et aux humains aussi) de questionner le dépôt par diverses requêtes. Ce langage SPARQL est très inspiré du langage SQL qui est utilisé depuis longtemps pour l’accès aux bases de données relationnelles. DBPedia possède bien sûr son « SPARQL endpoint » (http://dbpedia.org/sparql). Ainsi, pour savoir quels sont les acteurs du film Midnight_in_Paris, nous pouvons utiliser la requête SPARQL suivante :

select distinct ?X where {
<http://dbpedia.org/resource/Midnight_in_Paris>
<http://dbpedia.org/ontology/starring>
?X }


Nous reconnaissons donc un triplet, mais dans lequel l’objet a été remplacé par la variable ?X dont nous aimerions connaître les valeurs possibles. Le résultat de notre requête sera :

<http://dbpedia.org/resource/Michael_Sheen>
<http://dbpedia.org/resource/Owen_Wilson>
<http://dbpedia.org/resource/Marion_Cotillard>
<http://dbpedia.org/resource/Adrien_Brody>


Pour revenir à cette application Web pour les cinéphiles que nous avons évoquée, cette application pourra automatiquement questionner DBPedia pour obtenir l’information désirée en utilisant les requêtes SPARQL appropriées. Beaucoup plus facile que de lire des pages Wikipédia…
 

Le Web sémantique en constante évolution

Évidemment, toute innovation de cette ampleur est pleine de qualités et de défauts. Le Web sémantique n’y échappe pas. Il n’est pas parfait et ce n’est qu’un début…

Le Web sémantique ayant mis l’accent sur le format d’échange avec le développement du standard RDF, a fait de grandes avancées et permis un échange d’information structurée jusque-là inédit. Par contre, le Web sémantique fait aujourd’hui face aux mêmes problèmes que le domaine de la représentation des connaissances (sous-domaine de l’intelligence artificielle) a rencontrés dans les années 70. En effet, maintenant qu’on sait comment encoder l’information (en triplet), il faut se pencher sur ce qu’on veut vraiment encoder, soit non plus le contenant, mais plutôt le contenu.

Diverses questions persistent : Est-ce vraiment possible d’identifier de façon unique des concepts ? Comment nommer les prédicats ? Que faire avec les équivalences (deux prédicats ou objets qui veulent dire la même chose) ? Comment représenter la période de validité de l’information ? Comment établir des niveaux de certitude sur les prédicats ? Et encore... Les chercheurs se penchent sur ces diverses questions.

Malgré tout, ce qui est fascinant, c’est que le Web sémantique continue sa lancée. Il croît constamment, né d’un effort concerté de mettre à la disposition des logiciels et des humains des répertoires gigantesques d’information.
À chaque année, la communauté de recherche lance des défis à tous les programmeurs et développeurs, à travers le « Semantic Web Challenge » qui se tient en même temps que la « International Semantic Web Conference » . Les compétiteurs doivent développer des applications Web innovantes qui utilisent l’information du Web sémantique. Allons-y!
 

Références

[a] Une application Web réfère à une application qui est active sur un site Web. Les termes logiciel et application sont plus généraux que le terme application Web, car ils peuvent référer aussi aux applications « stand alone », ne fonctionnant que sur une machine, mais pouvant tout de même avoir accès aux ressources du Web.

[b] Le présent document ne couvre pas la notion d’ontologie, mais c’est une notion importante que nous
verrons dans un futur document.

Tim Berners-Lee and James Hendler and Ora Lassila. The semantic Web. Scientific American, 2001.

Christian Bizer. Linked Data - The Story So Far. International Journal on Semantic Web and Information Systems, 4(2):1–22, January 2009.