Ce billet de blog présente une introduction aux graphes de connaissances et à leurs applications potentielles dans le monde des affaires. Nous y soulignons les avantages de l'utilisation des graphes de connaissances pour la gestion et l'analyse des données, et nous donnons des exemples de la manière dont ils peuvent être appliqués dans divers secteurs.
Définition : Un graphe de connaissances décrit les entités et les relations entre elles.
Par exemple, nous avons créé un graphe de connaissances de tous les films américains liés à leurs acteurs et producteurs sur la base de wikipedia. Voici une petite partie de ce graphe avec un zoom sur le film "Le principe des dominos" :
Un tel graphe est un moyen naturel de représenter des informations liées. Surtout si on le compare à une base de données relationnelle classique avec des tables qui se réfèrent à des tables qui se réfèrent à des tables qui se réfèrent à des tables qui - ok vous avez compris.
Un graphe de connaissances n'est pas seulement un moyen naturel de stocker des informations liées. Une autre différence fondamentale avec les bases de données relationnelles est qu'un graphe de connaissances considère le lien entre les points de données comme aussi important que le point de données lui-même. Laissez-vous emporter par cette idée, car elle est très puissante.
Vous savez donc maintenant qu'un graphe de connaissances n'est en fait qu'un moyen de structurer l'information.
Le lecteur critique se demande maintenant : "Et alors ? Pourquoi nous soucierions-nous de structurer nos informations ?" Permettez-moi de convaincre humblement les critiques de la puissance des graphes de connaissances à l'aide de trois exemples de cas d'utilisation.
Si vous souhaitez approfondir le "comment" derrière les cas d'utilisation, restez à l'écoute de notre prochain article de blog sur les graphes de connaissances et l'apprentissage automatique.
Disons que nous avons des milliards de données de transactions financières. La plupart des transactions sont des transactions légitimes entre des utilisateurs légitimes, mais certaines de ces transactions sont entre les utilisateurs frauduleux qui ont mis des SPFO dans notre eau potable. Nous savons également si certaines de ces personnes sont frauduleuses ou légitimes.
Un graphe de connaissances se concentre sur les liens entre les points de données. Et il se trouve que nos données de transaction sont exactement cela : des liens entre des points de données. Nous avons donc placé les données de transaction dans un graphe de connaissances où chaque personne a des liens avec les personnes avec lesquelles elle a effectué une transaction.
Ensuite, nous pouvons former un modèle d'apprentissage automatique qui apprend à classer chaque personne dans nos données comme étant un utilisateur frauduleux ou légitime :
Si vous faites des achats sur Internet, vous rencontrerez des phrases telles que "Vous pourriez également être intéressé par" ou "Les clients qui ont acheté le shampooing X ont également acheté le bébé Y" ou simplement "Recommandé pour vous". Ce sont des systèmes de recommandation.
Un système de recommandation ne liste pas les éléments que vous avez recherchés, mais d'autres éléments qui pourraient également vous plaire. En d'autres termes, le système doit savoir ce que vous voulez avant que vous ne le sachiez vous-même. Créer une maman artificielle est un problème difficile. Et c'est là que le graphe de connaissances entre en scène.
En poursuivant l'exemple du commerce électronique, nous pouvons placer tous les clients dans un graphe de connaissances et les relier aux articles qu'ils ont achetés dans le passé. Maintenant, nous essayons de prédire les liens manquants dans le graphe de connaissances. Dans ce contexte, chaque lien manquant est une recommandation que vous pouvez faire à quelqu'un !
Il est également important de réaliser que les systèmes de recommandation peuvent recommander n'importe quoi et pas seulement des shampooings. Ils peuvent vous recommander des offres d'emploi, des séries Netflix, ou même votre prochaine maison. Le ciel n'est même pas la limite.
On parle de recherche sémantique lorsque les moteurs de recherche essaient de comprendre réellement votre requête au lieu de se contenter d'obtenir des résultats qui correspondent littéralement à votre requête.
Il existe deux approches parallèles pour construire un moteur de recherche sémantique. La première utilise l'apprentissage automatique pour comprendre le langage lui-même. Par exemple, si vous recherchez "cute little pig", le modèle d'apprentissage automatique comprendra que vous êtes également intéressé par les résultats pour "piglet", car ils ont la même signification.
La deuxième approche de la recherche sémantique consiste à exploiter un graphe de connaissances pour comprendre une requête.
Dans la capture d'écran ci-dessous, lorsque je recherche "porcelet", Google propose des concepts connexes tels que "winnie the pooh", "cute" et "disney".
Le graphe de connaissances de Google fait ces suggestions parce qu'il sait que Porcinet est aussi l'un des meilleurs amis de Winnie. (Certes, je n'ai pas accès au code source de Google Search, donc si quelqu'un le sait, n'hésitez pas à me corriger ici).
Un autre excellent exemple est la façon dont les ingénieurs d'Uber Eats utilisent également les graphes de connaissances pour la recherche sémantique. Vous pouvez lire leur article de blog ici.
Vous pouvez utiliser les graphes de connaissances pour :
Et bien d'autres choses encore qui n'ont pas trouvé leur place dans ce cours intensif de 3 minutes, mais que nous couvrirons dans notre prochain billet de blog sur les graphes de connaissance.