Web 3.0 : Le web sémantique

De jordan.chapuis@imdeo.com dans Technique

29 août 2017

Le World Wide Web, inventé en 1989 par un certain Tim Berners-Lee,  a connu un succès phénoménal. Si bien qu’en un peu moins de 30 ans, plus de 3,81 milliards de personnes dans le monde l’utilisent et le Web s’est enrichi au fil des années d’une quantité colossale d’informations. Chaque jour un nombre incalculable de pages Web viennent se greffer à cette masse informe qu’est le Web. Difficile donc pour un être humain, normalement constitué, de s’y retrouver dans cette jungle !

Heureusement, des solutions existent pour retrouver de l’information pertinente dans tout ce contenu. Aujourd’hui les moteurs de recherche, grâce à leurs crawlers, sont capables de parcourir récursivement les liens de milliards de pages Web et d’indexer leur contenu dans de gigantesques bases de données. Ainsi un utilisateur effectuant une recherche obtiendra une liste de résultats classée dans un ordre de pertinence correspondant à des critères spécifiques au moteur de recherche tels que la fréquence des mots-clés, l’indice de densité, etc.

Seulement voilà, ces moteurs de recherche se basent sur une étude uniquement syntaxique du contenu des pages Web, car un ordinateur est aujourd’hui incapable de capter le sens des textes qu’il parcourt. Une fois sa recherche effectuée, l’utilisateur, grâce à son cerveau humain, doit alors faire un nouveau tri et retrouver le contenu réellement pertinent. Pour donner un exemple plutôt simple, si je demande au moteur de recherche de YAHOO “quelle est la date de naissance de Victor Hugo”, voici le résultat :

 

Recherche Yahoo

 

Nous obtenons une liste de résultats, somme toute pertinente, mais il nous faut ensuite parcourir les différents liens pour trouver notre information. Dans ce cas le temps de recherche nécessaire pour l’utilisateur se trouve assez faible, mais supposons que nous voulions effectuer la recherche suivante : “Je souhaite partir en vacances deux semaines en Corse, j’ai un budget de 3000 euros. Nous avons un enfant de 4 ans.”. Aujourd’hui, répondre à une telle question va exiger des heures de tri dans des listes distinctes d’hôtels et de location de voitures.

 

La solution : le Web Sémantique !

Le Web Sémantique est un concept visant à permettre aux machines de comprendre la signification de l’information sur le Web. Le but est ainsi de mettre en place, en plus du réseau des hyperliens entre les pages Web classiques, un réseau de liens entre données structurées. Les machines accèdent plus intelligemment aux différentes sources de données contenues sur le Web et peuvent effectuer des traitements plus précis pour les utilisateurs. Le terme a été inventé par Tim Berners-Lee, directeur du W3C, qui supervise l’élaboration des propositions de standards du Web sémantique.

 

Mais alors, comment mettre en place le Web Sémantique et quelles sont les technologies qui gravitent autours ? Petit tour d’horizon :

 

Ressource Description Framework (RDF)

Créé en 1999, RDF est un format d’échange de données sur le Web et est le langage de base du Web sémantique. RDF adopte un modèle de graphe dont l’objectif est de décrire des ressources sur Internet (Entreprises, Livres, Articles, etc…).

On définit une donnée RDF par trois caractéristiques :

– son sujet : l’adresse de la ressource ciblée

– son prédicat : la propriété affectée à la ressource ciblée

– l’objet : la valeur liée à la propriété de la ressource ciblée

 

Voici un petit exemple schématique d’un triplet RDF :

 

Triplet RDF

 

Si vous avez suivi jusque-là, vous pouvez constater que ce langage va nous permettre de décrire de manière très précise une entité, que ce soit une personne, un livre, une image, un concept, etc.  Cependant, afin que les connaissances soient un minimum structurées, il va falloir définir quelques règles.

 

Les ontologies

En informatique, une ontologie représente un ensemble structuré des termes et concepts représentant le sens d’un champ d’informations. Les ontologies ont pour but de représenter le monde qui nous entoure de manière à ce qu’il soit compréhensible par une machine et de pouvoir ensuite faire de la déduction dessus.

De manière très raccourcie, une ontologie définit ce qu’on appelle des classes et les différentes relations qui peuvent les relier entre elles. Une ontologie simple décrivant le monde de l’écriture pourrait par exemple comprendre les classes auteur, œuvre, roman, pièce de théâtre et définir des relations telles que “écrite par” :

Ontologie

 

Afin de créer ces ontologies il existe des langages particuliers. Parmi eux, nous avons par exemple OWL (Web Ontology Language ) qui est un langage de représentation des connaissances construit sur RDF. C’est un moyen permettant de construire des ontologies pour le Web Sémantique. OWL apporte une meilleure intégration et une inférence plus facile des ontologies. Ce langage permet de regrouper des classes d’axiomes grâce à des propriétés telles que “rdfs:subClassOf” permettant de définir l’inclusion d’une classe dans un autre (chat -> félin -> animal). Ainsi, il devient plus facile de faire de la déduction automatique. D’autres propriétés, telles que “owl:sameAs”, permettent d’établir des relations d’équivalences entre des classes OWL (laptop, ordinateur portable, etc..).

 

Un exemple d’ontologie : FOAF

FOAF (Friend Of A Friend) est un projet dont le but est de créer un réseau de documents Web compréhensibles par des machines décrivant des individus et les relations qu’ils entretiennent entre eux. Sans nécessiter d’annuaire centralisé, FOAF permet de lier les personnes entre elles, comme si tout était décrit dans une base de données unique. Le principe est simple : chaque personne est identifiée par un fichier FOAF qui peut être placé n’importe où sur le Web et qui contient des informations la décrivant. FOAF est la première initiative visant à standardiser la représentation des personnes et de leurs relations.

 

Exemple de profil FOAF :

<https://victorhugo.com/profile.ttl#me>

        a foaf:Person ;

        foaf:birthday “26.02″ ;

        foaf:name “Victor Hugo” ;

        foaf:family_name “Hugo” ;

        foaf:firstName “Victor” ;

        foaf:gender “male” ;

        foaf:img <http://victorhugo.com/photos/photo.png> ;

        foaf:knows <https://adele-foucher.com/profile.ttl#me>.

 

Dans cet exemple, on remarque que :

– https:// victorhugo.com/profile.ttl#me : la personne est définie par une URI.

– a foaf:Person : la personne est définie comme un foaf:person contenant les propriétés suivantes :

  • foaf:birthday : date d’anniversaire
  • foaf:name : nom complet
  • foaf:family_name : nom de famille
  • foaf:gender : sexe
  • foaf:img : image choisie pour le profil
  • foaf:knows : relations avec d’autres personnes (ici, on connaît la personne décrite par l’URI https://adele-foucher.com/profile.ttl#me).

 

Bien sûr, ceci est un exemple simple et FOAF nous permet d’aller bien plus loin dans la description d’une personne.

 

Autour du Web Sémantique gravite une très grande quantité de technologies qu’il serait difficile de présenter dans un seul article, mais voici un schéma résumant les différentes couches et langages du Web Sémantique :

 

Source : Berners-Lee, 2001

Source : Berners-Lee, 2001

 

Grâce à ces technologies, les machines vont être capables de comprendre des questions comme celle posée précédemment. Certains moteurs de recherche ont même déjà commencé à intégrer le Web Sémantique dans leurs résultats, c’est le cas notamment de Google :

Recherche Google

 

 

Derrière ce résultat, se cache la puissance du Web Sémantique. Le but est aujourd’hui d’élargir ces concepts à l’ensemble du Web et d’avoir pour des recherches comme celle de la planification de mes vacances, des résultats d’une précision aussi grande.

 

Diverses applications du Web Sémantique :

Les technologies du Web Sémantique sont actuellement utilisées dans différents domaines d’applications. Dans les réseaux sociaux où le Web Sémantique permet d’associer plusieurs données entre elles (ex : pour une photo : la date, le lieu, les personnes, l’auteur, etc.) afin d’accroître les possibilités de recherche et connecter les membres entre eux. Pour le classement bibliographique/documentaire, par exemple la Bibliothèque nationale de France  se penche sur les techniques du Web Sémantique dans le but d’effectuer des recherches simultanées à travers plusieurs collections numériques (en différentes langues). Le Web Sémantique est également présent en entreprise afin de collecter et analyser de grands volumes de données. Dans l’industrie et la recherche, notamment dans les domaines de pointe (industrie aéronautique et spatiale, recherche médicale) via la création d’ontologies destinées à agréger des données de conception et de production situées dans différents systèmes d’informations. Également dans le E-commerce afin de décrire de manière structurée les produits, les prix, et les informations relatives à l’entreprise, il permet notamment aux moteurs de recherche de mieux exploiter ces données essentielles pour les restituer dans leur contexte de recherche.

 

Web Sémantique et optimisation du référencement

Aujourd’hui les moteurs de recherche misent de plus en plus sur la publication de résultats du Web Sémantique dans ses résultats de recherches. Dès à présent il est possible d’intégrer du Web Sémantique dans vos pages Web. Plusieurs options existent pour le balisage sémantique (schema.org, microformats, RDFa, GoodRelations, etc.). Le balisage de vos pages permet aux moteurs de recherche de mieux comprendre les informations contenues sur vos pages Web et de fournir des résultats de recherche plus riches afin de rendre plus facile pour les utilisateurs la recherche d’informations pertinentes sur le Web.

Voici un petit exemple de bout de code HTML contenant le titre d’un article et le nom de son créateur avant et après ajout de balisage sémantique avec RDFa :

Avant :

<h1>Titre de l'article</h1>

<h2>Auteur de l’article</h2>

Après :

<div xmlns:dc="http://purl.org/dc/elements/1.1/">

   <h1 property="dc:title">Titre de l'article</h1>

   <h2 property="dc:creator">Auteur de l’article</h2>

</div>

Dans les années à venir, un site sans données structurées sera un site dont il sera difficile d’exploiter les données et donc moins intéressant. Il est donc important de ne pas rater le coche et de se pencher dès à présent sur ces technologies du futur pour ne pas se retrouver dépassé !

Commentaire

6 − = cinq

iMDEO recrute !

REJOIGNEZ-NOUS

A la recherche de nouveaux talents (développeurs web et mobile, chefs de projet,...)

Voir les annonces