Optimiser la recherche sur son site grâce à l'intelligence artificielle
|
|
Le besoin
Comment améliorer la recherche sur mon site de vente en ligne ?
Notre société de fournitures électriques pour professionnels propose une plate-forme de vente en ligne avec un formulaire pour la recherche produits. L'indexation plein-texte des fiches produits s'appuie sur un référentiel (tableau Excel) mais il a été élaboré au fil de l'eau, et nous ne parvenons pas à le maintenir ou à l'étendre. Il n'est pas réellement structuré, et ne prend pas en compte toutes les relations qui peuvent exister entre les mots.
Ceci a un impact sur la qualité de la recherche, et donc sur nos ventes. Ainsi, par exemple aujourd'hui, lorsqu'un client cherche domino ou dominos, le moteur ne retourne pas les mêmes produits et ne propose pas non plus les synonymes (barrette de connexion ou de raccordement). L'indexation se fait sur les fiches produits générées à partir de nos bases de données produits avec notre référentiel. Or nos fournisseurs n'emploient pas toujours les mêmes termes dans leurs descriptions produits, et notre référentiel actuel ne permet pas de pallier ce problème.
Nous pensons donc qu'une organisation de ce référentiel en une ressource réellement structurée permettrait d'indexer et de traiter les requêtes utilisateurs plus finement. Nous souhaitons également mettre en place un outil de gestion de cette nouvelle classification, ergonomique et simple d'utilisation même pour des non spécialistes de la langue afin de garantir une maintenance souple et pérenne.
La solution
Lemmatisation et gestion semi-automatisée d'un thesaurus
Plusieurs problèmes émergent ici, dont deux sont directement liés au langage :
- les différentes formes d'un mot : certains mots en français changent de forme selon leur genre et leur nombre, et ici, un mot au singulier n'est pas associé à son pluriel ;
- les différents sens d'un mot : un même mot peut avoir plusieurs sens (un domino est une fourniture électrique et c'est aussi la pièce d'un jeu du même nom ainsi qu'un élément de cuisson) et différents mots peuvent désigner une même chose (barrette de connexion et domino sont synonymes), et ici, les synonymes d'un terme ne sont pas non plus mis en relation.
Le dernier problème est lié à la maintenance et à l'enrichissement du référentiel. Il s’agit ici de situations assez classiques qui peuvent aisément être résolues grâce à certains modules de TALN/NLP (Traitement Automatique de la Langue Naturelle ou Natural Language Processing).
La lemmatisation pour réduire le silence
Concernant les variations de forme, il s’agit de prendre en compte la flexion des mots, c’est-à-dire le fait que les mots changent de forme selon qu’ils sont au féminin/masculin ou singulier/pluriel pour les noms et les adjectifs, ou bien selon leur temps pour les verbes.
Or finalement, lorsqu’on cherche des dominos, on aimerait également trouver les produits qui ne comporteraient que le mot domino au singulier. C’est là qu’intervient le TAL avec la mise en place d’un module de lemmatisation, module qui ramène toutes les formes fléchies d’un mot à une seule et unique forme, dite canonique ou lemme, qui sera conservée dans l’index inversé.
Ce module doit s’appliquer à l’indexation des fiches produits ainsi que sur les requêtes des utilisateurs, garantissant une meilleure pertinence des résultats retournés. La pertinence est l’un des critères habituellement retenu pour mesurer l’efficacité d’un Système de Recherche d'Information (SRI), elle fait appel :
- au taux de précision : fondé sur le rapport entre l’ensemble des documents sélectionnés pertinents et l’ensemble des documents retournés, il peut s’interpréter comme une mesure de la qualité ;
- au taux de rappel : fondé sur le rapport entre les documents retournés pertinents et l’ensemble des documents pertinents de la base, il peut s’interpréter comme une mesure de la quantité.
Ces mesures s’opposent aux notions de silence (les résultats pertinents mais non retournés par le système) et de bruit (les résultats retournés non pertinents). Ainsi, prenons l’exemple d’une base documentaire constituée par les fiches produits, si l’on a 100 produits qui répondent à une requête et que le système n’en retourne que 30, le taux de rappel sera de 30% et le silence de 70%.
Prenons maintenant le cas où l’on récupère 100 produits en réponse à une requête, si seulement 30% de ces documents sont pertinents, le taux de précision sera quant à lui de 30% et le bruit de 70%.
La lemmatisation des documents à l’indexation et des requêtes lors de la recherche permettent donc de minimiser le silence en associant des termes comme domino et dominos ou barrette et barrettes. On peut aussi se contenter d'un module de racinisation (souvent mis en œuvre par défaut dans les moteurs de recherche) mais au risque de faire baisser la précision.
Création d'une ressource structurée et mise en place d'une gestion semi-automatisée
La réorganisation du référentiel en thésaurus permettra lui aussi d'optimiser les processus d'indexation et de recherche sur le site. En effet, dans un thesaurus, les termes sont organisés entre eux par des relations de différentes natures : hiérarchiques, associatives ou d'équivalence, ce qui permet d’établir des liens de synonymie par exemple.
À partir d’une étude du référentiel et de sa granularité, et en accord avec les experts du domaine, un(e) infolinguiste pourra déterminer les niveaux du plan de classement qui serviront de base au découpage en domaines (Fils et câbles / Génie climatique / Éclairage / etc.) et en notions associées (sous Fils, on trouvera Bornes puis Bornes de connexion par exemple).
Les notions retenues seront ensuite associées aux termes employés pour les désigner, et des relations associatives ou d’équivalence pourront être rajoutées entre ces termes comme entre domino et borne ou barrette de connexion. Les règles régissant la constitution de ce thesaurus (notions et termes à retenir ou exclure, typologie des relations, etc.) devront être explicitées et consignées dans un guide qui servira de référence pour la maintenance.
Les fiches produits pourront alors être indexées puis catégorisées automatiquement à l’aide du thesaurus, vérifiant ainsi une bonne adéquation de la nouvelle ressource avec le contenu effectif des fiches.
Enfin, un module de détection de nouveaux termes peut s’avérer utile pour mettre à jour régulièrement le thesaurus. En utilisant des techniques simplifiées d’Extraction d’Information (EI), des termes potentiellement pertinents sont extraits automatiquement et proposés comme nouveaux termes possibles à partir des évolutions du catalogue mais aussi de l'analyse des logs de requêtes, en particulier les recherches infructueuses.
On parle de gestion semi-automatisée car la décision finale reviendra toujours à l’opérateur humain. Les outils de gestion de thesaurus (ou plus généralement de terminologies) offrent aujourd’hui des interfaces très intuitives intégrant des fonctionnalités de visualisation et de mise à jour simples et ne nécessitent pas de connaissances linguistiques particulières.
Points d'attention
Une attention particulière devra être portée aux effets de bord possibles lors de la mise en place de relations entre les termes. Par exemple, si on souhaite bien établir une relation d'équivalence entre une barrette de connexion et un domino, on ne veut pas qu'il y ait de relation entre une barrette de connexion et un domino de cuisson, on ne créera donc pas de relation de synonymie entre ces derniers.