Des questions des internautes aux listes de résultats : la recherche en Langage Naturel

Le Langage Naturel est la clé au-delà du mot-clé

Des questions des internautes aux listes de résultats, notre moteur de recherche sémantique fondé sur le Langage Naturel amène à des taux de self-care tels qu’ils révolutionnent l’industrie des IA. Notre moteur de recherche sémantique est si robuste qu’il peut relier des recherches déstructurées, mal orthographiées et ambigües à des titres de FAQ structurés, spécifiques et concis. Résultat : vos clients trouvent l’information qu’ils désirent rapidement et facilement, avec un taux de succès sans précédents.

Le Traitement Automatique du Langage Naturel d’Inbenta s’élève à la hauteur du challenge

L’un des plus grands challenges du TALN, c’est de réussir à résoudre les problèmes d’ambiguïté – une des principales caractéristiques du langage naturel. Par exemple, prenez la phrase « tenir un magasin ». Le mot « tenir » se réfère souvent au fait de porter quelque chose. C’est seulement dans ce contexte particulier que son sens se rapproche de celui de « gérer ». La différence est évidente pour quelqu’un de familier avec le français, mais pas pour un ordinateur. Et même dans le cas où un ordinateur est capable d’analyser la syntaxe d’une phrase telle que « tenir un magasin », il sera toujours incapable de voir la moindre différence avec la phrase « tenir un stylo », quand bien même le sens de ces deux phrases est entièrement différent. Pour nous, c’est un jeu d’enfant.

 

Comprendre le sens qui se cache derrière les mots

Dans le cas ci-dessus, notre moteur de recherche sémantique approfondit l’analyse en examinant le sens contextuel des mots, lui permettant ainsi de choisir la meilleure signification du mot « tenir », même quand la syntaxe et le mot lui-même sont identiques.

 

Voici un parfait exemple du fonctionnement de ce processus :

Hebergeur d'image

 Imaginons que vous travaillez pour une entreprise de télécommunication et que vous êtes chargé de créer des FAQs, une base de donnée, et tous les matériaux que vous publiez sur internet afin d’aider vos clients à trouver par eux-mêmes les réponses et les documents qu’ils recherchent. Pour cet exemple particulier, vous avez la FAQ suivante, qui informe vos clients du coût d’un appel à l’étranger.

« Quel est le prix pour un appel international ? »

Rien de particulier, n’est-ce pas ? Mais voici le problème : la probabilité que vos clients fasse une recherche dans cette FAQ en utilisant exactement ces mots-clés est très mince.

À la place, ils taperont des phrases telles que : « combien ça me coue d’appeler en colombi »

Vos utilisateurs vont toujours saisir des questions qui se rapportent à leur situation particulière, et en conséquence leurs mots vont être différents des vôtres, car vous allez essayer de décrire des scénarios plus généraux.

 

D’abord, nous appliquons un algorithme sophistiqué de correction orthographique

Dans l’exemple ci-dessus, « coue » n’est pas un mot français, et donc n’appartient pas à notre vaste dictionnaire français. Il faut donc le corriger. Nous pourrions résoudre ce problème d’orthographe avec « coûte », « coude » ou encore « coupe ». Cependant, la correction la plus probable serait « coûte », puisqu’il s’agit de celle qui ferait le plus de sens dans la phrase.

 

La seconde partie de l’exemple

Hebergeur d'image

Il y a une autre faute de frappe : « Colombi ». À nouveau, des corrections possibles seraient « Colombe », « Colomb » et « Colombie », bien que la plus plausible soit bien évidemment le nom du pays d’Amérique Latine. Quand nous disons « la plus plausible », il s’agit d’une chose facile à déterminer pour des humains, mais très difficile pour un ordinateur. Chez Inbenta, notre très vaste dictionnaire français (ainsi qu’anglais, espagnol et plus de 25 autres dictionnaires) contient des informations sur la probabilité d’associations lexicales selon les spécificités de l’actuelle base de donnée, ainsi que des caractéristiques générales de la langue.

 

La solution à la faute de frappe

À partir de là, le moteur de recherche sémantique ne va plus utiliser la saisie incorrecte originale, mais trouver à la place une réponse pour cette version corrigée : « Combien ça me coûte d’appeler en Colombie ? ».

L’étape suivante est la résolution de toutes les ambiguïtés dans la phrase (dans le langage naturel, il y a toujours des ambiguïtés). Nous allons pour cela utiliser des outils variés : dictionnaires spécialisés, fonctions lexicales, grammaires locales et analyses syntaxiques. Effectuer la bonne analyse syntaxique et sémantique est crucial pour trouver des réponses pertinentes.

 

Comment fonctionne l’analyse syntaxique et sémantique

Grâce aux analyses syntaxiques, Inbenta détermine la fonction précise de chaque mot au sein de cette question particulière. Le résultat de cette analyse peut être observé ci-dessous :

Hebergeur d'imageLes prochaines analyses de la phrase dépendront de nombreux facteurs tels que le dictionnaire spécialisé, les règles de résolution des ambiguïtés, le contexte, etc. Par exemple, le mot « appel » peut avoir différentes significations sans rapport avec les appels téléphoniques, comme l’action de héler quelqu’un, la demande du rejugement d’une affaire en seconde instance, le fait de s’assurer que tous les élèves d’une classe soient présents, etc. Mais dans le contexte de l’industrie des télécommunications, « appel » renvoie sans ambiguïtés au fait de passer un appel téléphonique.

Ensuite, nous performons une analyse sémantique pour déterminer l’importance relative de chaque mot dans la phrase. Les internautes ajoutent souvent beaucoup d’informations dans leurs saisies qui ne sont pas essentielles pour trouver une réponse pertinente. Les mots superflus dans les recherches des utilisateurs, qualifiés dans l’industrie de « bruit », peuvent fréquemment conduire à des résultats inadaptés, mais notre système est capable de déterminer quels sont les mots porteurs de sens qu’il nous faut prendre en compte.

 

En se basant sur notre actuelle base de données et notre algorithme sémantique-statistique unique, nous attribuerions ce poids sémantique particulier à chacun des termes de la question :

Hebergeur d'image

Comme vous pouvez le voir, tous les termes de la saisie n’ont pas la même importance. Dans ce cas particulier, « coût » et « Colombie » contiennent presque 70 % de l’ensemble du « poids sémantique » de la saisie. Nous sommes alors proches d’avoir une réponse pertinente à cette question.

 

Le rôle des dictionnaires spécialisés et des fonctions lexicales

Inbenta possède un très vaste dictionnaire qui contient des centaines de milliers de termes et de nombreuses sortes de relations sémantiques nommées « fonctions lexicales ». Ces fonctions lexicales peuvent couvrir des relations simples entre les mots, comme les synonymes, ainsi que des relations plus complexes qui dépendent du contexte dans lequel le terme apparaît.

Grâce au dictionnaire spécialisé et aux fonctions lexicales, nous sommes capables de reconnaître les phrases ayant la même signification malgré l’usage de mots différents pour exprimer cette signification. Avec cet « algorithme de signification » ultime, nous pouvons déterminer la proximité ou la distance de ces phrases les unes par rapport aux autres en terme de sens.

 

Un exemple de deux fonctions lexicales

Le terme « international » est lié à celui de « nation », et ainsi aux noms de toutes les différentes nations. Cela nous informe que « Colombie » et « international » sont liés.

Hebergeur d'image

En outre, cette utilisateur spécifique a demandé quelque chose en rapport au « coût », ce qui est souvent la façon dont les utilisateurs perçoivent ce qu’ils payent pour un service. Toutefois, l’auteur de cette FAQ l’a écrit en utilisant le terme « prix », ce qui est presque le même concept, mais de la perspective de celui qui est payé et non de celui qui paye. Ainsi, « coût » et « prix » sont liés.
Hebergeur d'image

En appliquant ces deux fonctions lexicales, nous savons que la requête de l’utilisateur est liée au concept de « prix » et d’« international », même si ces termes ne sont jamais mentionnés dans la question.

L’amélioration constante des fonctions lexicales renforce les IA

Nos fonctions lexicales s’enrichissent chaque jour grâce au travail des Linguistes Informaticiens d’Inbenta, qui continuent de développer l’extension des relations sémantiques et la complexité de ces fonctions lexicales. Dans ce cas particulier, notre « algorithme de similarité », breveté, combiné à notre vaste lexique, nous permet de déterminer que la requête de l’utilisateur et cette FAQ particulière ont un « Score de Similarité » de précisément 57,49 %. Si aucune autre FAQ n’a un meilleur Score de Similarité, celle avec le titre « Quel est le prix pour un appel international ? » sera celle qui apparaîtra en premier sur la page de résultats. Il est essentiel de faire remarquer que l’auteur de la FAQ n’a fait qu’écrire « Quel est le prix pour un appel international ? » ; il n’a pas eut à saisir des reformulations alternatives, ajouter des tags, éditer les fichiers index de synonymes ou examiner de fastidieuses alternatives de vocabulaires.

Ce à quoi tout cela concourt, c’est que vous pouvez nous laisser faire le gros du travail, car nous croyons que les créateurs et éditeurs de bases de données ne devraient avoir besoin de se focaliser que sur le contenu lui-même et non sur la façon dont ce contenu sera trouvé. Ce qui donne à votre gestionnaire des connaissances plus de temps pour écrire un contenu de meilleure qualité.

 

La Recherche en Langage Naturel d’Inbenta est la réponse

Même quand les milliers de FAQs sont en train d’être fouillées et que des milliers d’internautes sont en train de poser différentes questions à l’exact même moment, notre technologie de recherche répond à l’appel. Dans l’exemple utilisé, notre moteur de recherche n’a prit que 0.0033376097679138 secondes pour trouver la bonne réponse à la question parmi une base de plus de 2500 FAQs. Comptez sur Inbenta pour des recherches sémantiques avec un temps de réponse incroyable.