Le Google Knowledge Graph a fait du chemin depuis sa première annonce au printemps dernier. Beaucoup de choses ont été écrites sur la portée de l’événement, qui entérinerait l’adhésion officielle de Google aux principes de base du Web sémantique, résumés par la formule choc things, not strings. Avec des chiffres qui se veulent impressionnants : des centaines de millions de choses et des milliards de faits (propriétés des choses et relations entre elles).
Selon une déclaration de Larry Page le mois dernier, le Knowledge Graph n’est encore qu’à 1% de ses objectifs. Au passage le patron de Google souligne que la tâche est ardue, en particulier dans ses aspects multilingues. Effectivement si l’on en croit ces offres de recrutement de contributeurs multilingues on constate qu’en matière de construction de la connaissance et de consolidation des données Google lui-même doit admettre que la puissance de ses algorithmes ne fait pas tout, et qu’arrivé au niveau de détail où le diable se niche, Humans do it better, pour reprendre le slogan un peu désuet (aujourd’hui abandonné d’ailleurs) de l’Open Directory.
Nul ne peut nier que le Knowledge Graph ajoute une vraie valeur à la recherche, avec une expérience utilisateur agréable et fluide qui permet de rebondir par exemple d’un peintre à ses oeuvres, de celles-ci aux musées où elles sont exposées etc. On navigue ainsi dans ce qui ressemble bien à un graphe de connaissances, et on y apprend beaucoup de choses. Mais de là à dire que Google a adopté et mis en œuvre les principes du Web sémantique, il y a un pas. Pour bien s’en rendre compte, comparons une description Knowledge Graph et une page de data.bnf.fr pour un tableau de Magritte, dont le sujet semble particulièrement adapté à notre propos.
Du point de vue de l’expérience utilisateur, beaucoup de similarités. Les informations de description ne sont certes pas tout à fait les mêmes, et Google gagne sans doute sur le plan de la navigation. On peut aller directement sur la page du peintre, ou rebondir sur d’autres œuvres du même. Dans la page de la BnF on peut naviguer vers la fiche du peintre, d’où on pourra repartir sur d’autres œuvres.
Mais ce sont là des différences de surface. La différence fondamentale est dans la sémantique formellement déclarée (ou pas) derrière ces pages. L’URI de la chose décrite par la fiche de la BnF est déclarée explicitement dans le code RDF qui est accessible soit par le lien en bas de la page html, soit par négociation de contenu dans le protocole http. Les données de la BnF font d’ailleurs la distinction, qui aurait sans doute plu au peintre, entre le tableau lui-même en tant qu’objet du monde réel, sa représentation comme un concept (une autorité) dans le catalogue de la BnF, et les différents formats de ces descriptions. Tout cela de façon explicite, réutilisable, en s’appuyant sur des vocabulaires ouverts à sémantique partagée (SKOS, FRBR, Dublin Core, FOAF…). Ces URI explicites sont réutilisées dans la fiche correspondante de VIAF, où on pourra rebondir vers l’entrée équivalente dans le catalogue de la Bibliothèque Nationale d’Allemagne. VIAF est un impressionnant projet coordonnant les listes d’autorité (auteurs, titres, lieux …) des plus grandes bibliothèques du monde, et les rendant disponibles pour le Web des données.
Rien de tel derrière la page Google. Ouvrez le code source de la page, et cherchez une URI qui identifie l’œuvre, ou son créateur, ou même un objet qui représente l’une ou l’autre, et réutilisable indépendamment du contexte de la requête. Rien de semblable … la navigation vers les autres "nœuds" du Knowledge Graph se fait en relançant une requête. Les identifiants des objets du Knowledge Graph, s’ils existent à n’en pas douter quelque part dans la base de données de Google, ne sont pas explicités, donc non adressables, et a fortiori non réutilisables ailleurs dans le Web de données. Au lancement du Knowledge Graph en mai dernier, Kingsley Idehen écrivait à ce sujet sur la liste Linked Open Data :
They have no option but provide an API. Anything less than that contradicts the entire endeavor.
Voir une analyse plus détaillée du même à la même époque sur Google+. Bientôt un an plus tard cette option minimale n’est toujours pas proposée par Google. Donc aujourd’hui si le Knowledge Graph a le goût et la couleur du Web sémantique, il constitue toujours de fait un vaste silo de connaissances impossible à connecter au reste du Web des données, même s’il puise largement dans ce dernier. Par exemple Freebase est citée comme source des entités du Knowledge Graph. Les objets de Freebase ont des URI publiques intégrées dans le Web des données, mais on ne les retrouve pas dans les descriptions du Knowledge Graph. Au passage remarquons que tous les types d’entités de Freebase ne sont pas traitées en Knowledge Graph, l’exemple le plus flagrant étant les entreprises, pour des raisons qu’on peut imaginer, mais c’est quand même curieux de trouver Bill Gates mais pas Microsoft, et même Larry Page mais pas Google! De même les médicaments sont absents, même sous leur forme la plus générique (aspirine, pénicilline). Même remarque pour les URI de DBpedia qui pourraient être explicitement utilisées, puisque le Knowledge Graph puise largement dans les descriptions structurées de Wikipedia.
Google aurait pourtant a priori plus à gagner qu’à perdre en interfaçant son Knowledge Graph avec le reste du Web des données, ne serait-ce que pour mettre sa pratique en cohérence avec son discours, et d’une certaine façon rendre au Web des données ce qu’il lui emprunte. Nul doute que Google dispose des moyens techniques et des ressources pour le faire, donc les raisons pour lesquelles il ne l’a pas (encore) fait restent obscures. Mais puisque 99% du travail reste à faire, espérons que cette ouverture en fasse partie, et qu’elle ne soit pas programmée dans le 1% final. Soyons patients…


Publié par bernard 