Je parcours votre contenu pour vous aider à trouver rapidement les réponses à vos questions.
La recherche basée sur l'IA : le prochain moteur de croissance du e-commerce
La recherche sur site est sur le point de connaître une révolution. Les nouvelles solutions basées sur l'IA sont devenues si performantes qu'on pourrait se demander si les moteurs de recherche peuvent lire dans nos pensées. Ces moteurs sont capables de décrypter des requêtes complexes, d'identifier les résultats pertinents, de combiner des critères personnalisés et de classer les résultats de manière optimale afin de maximiser les clics, les conversions et la satisfaction client.
Une recherche plus intelligente peut également générer des retours sur investissement exceptionnels. En moyenne, 40 % des acheteurs en ligne utilisent la barre de recherche du site – ce pourcentage pouvant varier selon le secteur d'activité e-commerce. Les visiteurs tolèrent mal les sites lents, et le positionnement des premiers résultats est fortement biaisé. Les acheteurs qui ne trouvent pas rapidement ce qu'ils cherchent quittent immédiatement le site. La recherche par IA comprend mieux l'intention de l'utilisateur, ce qui permet de rendre le contenu plus facilement accessible.
De nombreuses entreprises revendiquaient depuis des années des capacités en IA, mais ce n'est que maintenant qu'une véritable IA de bout en bout est possible. Ceci est rendu possible grâce à une nouvelle technologie appelée hachage neuronal, qui permet à la recherche de s'adapter à tous les cas d'utilisation sans les coûts élevés et les lourdeurs de production habituellement associés au déploiement de fonctionnalités et de plateformes centrées sur l'IA.
À titre d'exemple, ChatGPT coûte des milliers de dollars par mois à faire fonctionner, et pourtant son temps de réponse et son niveau de fonctionnalités seraient inacceptables dans le contexte de la recherche et de la découverte.
Des études montrent que même un délai de 100 millisecondes a des répercussions importantes sur l'expérience utilisateur et les taux de conversion ; une recherche rapide est donc essentielle.
Le hachage neuronal était l'ingrédient manquant qui permettait aux entreprises de commercialiser la recherche par IA à grande échelle sans que cela ne coûte trop cher.
Alors que la recherche par IA peut soutenir de nombreuses industries et cas d'utilisation — de la recherche d'entreprise aux sites web gouvernementaux — cet ebook se concentrera exclusivement sur l'e-commerce. Sean Mullaney, CTO d'Algolia, et d'autres experts d'Algolia y expliqueront l'origine de ces capacités, le fonctionnement de la recherche par IA et ce que cela signifie pour les détaillants.
La recherche par mots-clés existe depuis longtemps et fonctionne un peu comme l'index d'un livre. Un moteur de recherche par mots-clés crée un index de tous les mots présents dans tous les documents et fournit des résultats basés sur des algorithmes de correspondance simples.
Pour améliorer la pertinence et le classement des résultats de recherche, les moteurs de recherche ont introduit des statistiques lexicales, telles que TF-IDF et BM25 . La recherche statistique compare la fréquence inverse d'un mot dans un document (IDF) à sa fréquence d'apparition (TF) afin de déterminer son importance. Par exemple, les mots vides comme « le », « et », « ou » sont très fréquents, tandis que des mots comme « brosse à dents » ou « eau » sont moins fréquents, c'est-à-dire plus rares. La fréquence d'apparition d'un terme peut servir d'indicateur de l'importance ou de la pertinence du document.
Les statistiques basées sur la fréquence étaient très rudimentaires et reposaient sur des correspondances exactes. Les algorithmes de recherche par mots-clés développés avec les API Lucene s'appuient encore aujourd'hui sur ces formules statistiques dans de nombreuses applications : leur mise en œuvre est extrêmement simple et rapide. Cependant, pour améliorer la précision, les clients doivent créer des bibliothèques de synonymes, ajouter des règles, utiliser des métadonnées ou des mots-clés supplémentaires, ou recourir à d'autres solutions de contournement.
Le classement statistique était utile, mais insuffisant ; trop de cas d’utilisation impliquaient que les mots ne correspondaient pas précisément à la requête. Par exemple, le singulier et le pluriel, les conjugaisons verbales (présent, passé, participe présent, etc.), les langues agglutinantes ou composées, et ainsi de suite. Ceci a conduit au développement des fonctions de traitement automatique du langage naturel (TALN) pour gérer la complexité des langues. Parmi ces processus, on peut citer :
Tiges
La racinisation est le processus de conversion des mots en leurs formes de base par suppression des préfixes et des suffixes. Cela réduit la consommation de ressources et améliore les performances de calcul. Par exemple, « change » et « changing » sont réduits à la forme de base « chang ».
Lemmatisation
Tout comme la racinisation, la lemmatisation ramène les mots à leur forme de base (ou racine). Elle procède en tenant compte du contexte et de la structure morphologique de chaque mot. Par exemple, « changed » devient « change » et « is » devient « be ». Il est important de noter que la racinisation et la lemmatisation servent toutes deux à réduire les mots à leur forme originale ; la plupart des projets utilisent donc l’une ou l’autre.
Segmentation des mots
En anglais et dans de nombreuses langues latines, l'espace entre les mots constitue une bonne approximation d'un séparateur de mots, bien que ce concept ait ses limites en raison de la variabilité des constructions lexicales. Par exemple, de nombreux noms composés anglais s'écrivent de différentes manières (ice box = ice-box = icebox). Cependant, cet espace est absent de tous les systèmes d'écriture et, sans lui, la segmentation des mots devient complexe. Parmi les langues ne possédant pas de processus de segmentation trivial, on peut citer le chinois et le japonais, où les phrases sont délimitées mais pas les mots ; le thaï et le lao, où les syntagmes et les phrases sont délimités mais pas les mots ; et le vietnamien, où les syllabes sont délimitées mais pas les mots.
Étiquetage vocal
L'étiquetage morphosyntaxique, aussi appelé étiquetage grammatical, est une méthode de classification des mots en noms, verbes, adjectifs, etc., permettant un traitement plus précis des requêtes. Il analyse les relations entre les mots d'une phrase afin d' améliorer la précision en identifiant plus clairement le sens de celle-ci.
Extraction d'entités
L'extraction d'entités est une autre technique de traitement automatique du langage naturel (TALN) devenue particulièrement importante pour la recherche vocale. Comme son nom l'indique, l'extraction d'entités permet d'identifier les différents éléments d'une requête (personnes, lieux, dates, fréquences, quantités, etc.) afin d'aider une machine à « comprendre » les informations qu'elle contient. L'extraction d'entités est une excellente solution pour pallier les limitations de la simple recherche par mots-clés, mais, à l'instar des ontologies et des graphes de connaissances présentés ci-dessous, elle ne fonctionne que sur des domaines et des requêtes spécifiques.
Une autre méthode pour mieux comprendre la sémantique d'une requête consiste à utiliser des ontologies et des graphes de connaissances. Les graphes de connaissances représentent les relations entre différents éléments : concepts, objets, événements. Une ontologie définit chaque élément et ses propriétés.
Cette approche sémantique visait à représenter différents concepts et leurs liens. Google, par exemple, utilisait un graphe de connaissances pour non seulement faire correspondre les mots de la requête, mais aussi rechercher les entités décrites par celle-ci. C'était un moyen de contourner les limites de la recherche par mots-clés.
Cependant, en pratique, une approche par graphe de connaissances et ontologie est très difficile à mettre à l'échelle ou à adapter à différents domaines, et ces domaines deviennent rapidement obsolètes – équipes sportives, dirigeants mondiaux, ou même attributs de produits. Le graphe de connaissances et l'ontologie conçus pour un domaine ne seront pas facilement transposables à un autre. Si des solutions très robustes peuvent être développées pour un domaine donné, elles peuvent s'avérer totalement inadaptées à un autre domaine nécessitant une expertise différente. Seules quelques grandes entreprises, dont Google, ont réussi à développer un graphe de connaissances automatiquement. La plupart des autres entreprises ont dû le construire manuellement.
La saisie semi-automatique est un outil de recherche sémantique très utile qui permet aux utilisateurs de trouver plus rapidement les résultats qu'ils recherchent. L'exemple le plus connu est celui de Google, qui a lancé cette fonctionnalité fin 2004 .
La saisie semi-automatique est une fonctionnalité qui anticipe les termes de recherche pour aider les utilisateurs à formuler leur requête. Elle propose également des suggestions contextuelles, aide à éviter les fautes de frappe et filtre le contenu en fonction de la localisation ou des préférences de l'utilisateur. Ces suggestions sont générées par une série d'algorithmes qui s'appuient sur de multiples modèles et algorithmes d'apprentissage automatique et de traitement automatique du langage naturel pour trouver des correspondances. Le processus commence par l'identification, la mise en correspondance et la prédiction du résultat de la requête de recherche inachevée.
Pour que la saisie automatique fonctionne efficacement, un moteur de recherche doit disposer d'une grande quantité de données sur l'ensemble des sessions et, de plus, il doit être capable d'anticiper les termes de recherche de chaque utilisateur en fonction de son comportement, de ses recherches précédentes, de sa géolocalisation et d'autres attributs.
La saisie semi-automatique prédictive est désormais devenue une fonctionnalité attendue de tout moteur de recherche moderne et compétitif.
Les premiers modèles de probabilité de mots-clés, comme BM25, établissaient la pertinence en se basant sur la fréquence des termes, comme indiqué précédemment. Le classement par IA a franchi une étape importante en intégrant les retours des utilisateurs pour affiner l'identification de la pertinence. L'apprentissage par renforcement en est un exemple. Son principe est simple : utiliser les retours d'information pour renforcer les résultats positifs. Au lieu d'apporter des modifications importantes et peu fréquentes, l'apprentissage par renforcement effectue des modifications incrémentales et fréquentes.
Cette approche présente de nombreux avantages, comme l'amélioration continue des résultats et la découverte plus rapide d'autres résultats potentiels. De plus, les résultats peu concluants disparaissent rapidement grâce à l'expérimentation continue.
À l'instar de la saisie semi-automatique, l'apprentissage par renforcement nécessite une grande quantité de données pour fournir des résultats pertinents ; il s'avère peu efficace sans un historique de performances conséquent. De plus, bien qu'excellent pour le classement des résultats de recherche, il ne permet pas d'identifier les enregistrements. Il s'appuie toujours sur les mots-clés et les ressources linguistiques pour trouver les enregistrements correspondants.
C'est là que les vecteurs entrent en jeu.
La représentation vectorielle du texte est très ancienne . Ses fondements théoriques remontent aux années 1950, et plusieurs avancées majeures ont marqué les décennies suivantes. On a également assisté à d'importantes innovations depuis 2013 : de nouveaux modèles basés sur des réseaux de neurones exploitant de vastes ensembles d'entraînement (notamment BERT en 2018, développé par Google) sont devenus la norme dans le secteur.
En termes simples, il s'agit d'une méthode pour trouver des objets apparentés présentant des caractéristiques similaires. La mise en correspondance est réalisée par des modèles d'apprentissage automatique qui détectent les relations sémantiques entre les objets d'un index. Les vecteurs peuvent avoir des milliers de dimensions, mais pour simplifier, on peut les visualiser à l'aide d'un diagramme tridimensionnel (ci-dessus). La recherche vectorielle permet d'établir des liens entre les mots, et les vecteurs similaires sont regroupés. Des mots comme « roi », « reine » et « royauté » seront regroupés, de même que des mots comme « courir », « trotter » et « galoper ».
Presque tous les objets peuvent être intégrés et vectorisés : textes, images, vidéos, musique, etc. Les premiers modèles vectoriels utilisaient les mots comme dimensions ; chaque mot différent constituait une dimension et sa valeur correspondait à son nombre d’occurrences, une approche trop simpliste. L’avènement de l’analyse sémantique latente (LSA) et de l’indexation sémantique latente (LSI) a changé la donne. Ces modèles analysent la relation entre les documents et les termes qu’ils contiennent en réduisant le nombre de dimensions.
Aujourd'hui, les nouveaux modèles d'IA, alimentés par des moteurs vectoriels, sont capables de récupérer rapidement les informations dans un espace de grande dimension.
Cela a tout changé. Les nouvelles solutions vectorielles peuvent désormais associer les concepts de « neige », « froid » et « ski ». Cette avancée a rendu obsolètes certaines des technologies mentionnées précédemment, telles que l’extraction d’entités, les ontologies, les graphes de connaissances, etc.
En ligne, les consommateurs s'attendent à des résultats de recherche instantanés ( Amazon et Google ont tous deux mené des études sur les conséquences négatives d'un délai de seulement 100 millisecondes sur le comportement des consommateurs). Il est possible d'accélérer et d'étendre la diffusion vectorielle, mais c'est coûteux et sa vitesse ne sera jamais comparable à celle de la recherche par mots-clés.
Les vecteurs n'offrent pas la même pertinence que la recherche par mots clés pour certaines requêtes. La recherche par mots clés reste plus performante que les vecteurs pour les requêtes composées d'un seul mot et les requêtes de correspondance exacte avec une marque. Les vecteurs sont généralement plus efficaces pour les requêtes comportant plusieurs mots, les recherches conceptuelles, les questions et autres types de requêtes plus complexes.
Par exemple, si vous effectuez une recherche sur « Adidas » dans un moteur de recherche par mots clés, vous ne verrez par défaut que la marque Adidas. Un moteur vectoriel, quant à lui, afficherait par défaut toutes les marques de chaussures pour la requête « Adidas » (par exemple, Nike, Puma, Adidas, etc.), car elles appartiennent toutes au même domaine conceptuel. La recherche par mots clés offre néanmoins des résultats plus pertinents, plus explicites et plus personnalisables.
La recherche hybride est une nouvelle méthode permettant de combiner un moteur de recherche par mots-clés en texte intégral et un moteur de recherche vectorielle au sein d'une seule API.
L'exécution simultanée de moteurs de recherche par mots-clés et vectoriels pour une même requête présente une complexité considérable. Certaines entreprises ont opté pour une approche séquentielle afin de contourner cette complexité : elles effectuent une recherche par mots-clés, puis, si un certain seuil de pertinence n'est pas atteint, une recherche vectorielle. Cette méthode comporte toutefois de nombreux inconvénients : vitesse, précision et capacité limitée d'entraînement pour chaque modèle.
La véritable recherche hybride est différente. En combinant la recherche par mots clés en texte intégral et la recherche vectorielle en une seule requête, les utilisateurs obtiennent plus rapidement des résultats précis. Bien entendu, pour que la recherche vectorielle soit aussi rapide que la recherche par mots clés, le moteur de recherche doit être capable d'évoluer en termes de performances sans engendrer de coûts excessifs. Or, la plupart des moteurs vectoriels actuels ne le permettent pas.
C’est pourquoi le hachage neuronal , une nouvelle technologie qui compresse les vecteurs à 1/10 de leur taille, offre une voie d’avenir viable.
Nous aborderons le fonctionnement du hachage au chapitre 3, mais nous avons déjà constaté des résultats incroyables :
Après cette brève introduction, nous allons maintenant vous fournir des informations plus détaillées sur chaque étape de la recherche par IA : compréhension de la requête, récupération et classement.
Un moteur de recherche doit « traiter » le langage saisi dans la barre de recherche avant de pouvoir exécuter une requête. Ce processus peut se limiter à comparer la requête telle qu'elle est écrite au contenu de l'index. Cependant, la recherche par mots-clés classique est plus complexe, car elle implique la segmentation et la normalisation de la requête en éléments plus petits : les mots et les mots-clés.
Ce processus peut être simple (lorsque les mots sont séparés par des espaces) ou plus complexe (comme les langues asiatiques, qui n'utilisent pas d'espaces, la machine doit donc reconnaître les mots).
Une fois la requête décomposée en éléments plus petits, le moteur de recherche peut corriger les fautes d'orthographe et les erreurs de frappe, appliquer des synonymes, réduire les mots à leurs racines, gérer plusieurs langues, et bien plus encore – autant d'éléments qui permettent à l'utilisateur de saisir une requête plus « naturelle ».
En moyenne, les internautes utilisent des mots-clés ou des expressions courtes pour décrire les articles qu'ils recherchent. Autrement dit, ils emploient des mots-clés, et non des phrases complètes ou des questions. (Cependant, cette tendance évolue grâce à la technologie vocale et au succès des questions-réponses de Google.)
Ce type de recherche par mots-clés, dans ses versions simples comme dans ses versions plus avancées, existe depuis les débuts de la recherche. Plus la recherche est naturelle, plus les techniques sont sophistiquées. Les moteurs de recherche doivent structurer les requêtes entrantes avant de pouvoir les indexer. Cette technologie de prétraitement relève du traitement automatique du langage naturel (TALN), terme générique désignant toute technologie permettant aux ordinateurs de comprendre le langage humain, qu'il soit écrit ou parlé.
Le traitement automatique du langage naturel (TALN) transforme un texte en éléments plus facilement exploitables par les ordinateurs. Parmi les tâches courantes du TALN figurent la suppression des mots vides, la segmentation des mots et la décomposition des mots composés. Le TALN permet également d'identifier les catégories grammaticales, c'est-à-dire les entités importantes au sein d'un texte.
Chez Algolia, nous avons beaucoup écrit sur le traitement du langage naturel (NLP). Nous avons défini le NLP, comparé le NLP au NLU et décrit certaines applications populaires du NLP/NLU. De plus, nos ingénieurs ont expliqué comment notre moteur traite le langage et gère la recherche multilingue. Dans cet article, nous allons voir comment le NLP influence la recherche par mots-clés, qui est un élément essentiel de notre solution de recherche par IA. Celle-ci comprend également des intégrations vectorielles et un hachage basés sur l'IA/ML. Pour comprendre le lien entre les mots-clés et le NLP, il est important de commencer par approfondir la recherche par mots-clés.
Dans sa forme la plus simple, un moteur de recherche par mots-clés compare le texte d'une requête au texte de chaque enregistrement de son index. Chaque enregistrement correspondant (à la requête exacte ou similaire) est renvoyé par le moteur de recherche. La correspondance, comme son nom l'indique, peut être simple ou avancée.
Nous utilisons des mots-clés pour décrire les vêtements, les films, les jouets, les voitures et autres objets. La plupart des moteurs de recherche par mots-clés s'appuient sur des données structurées, où les objets indexés sont clairement décrits par des mots uniques ou des expressions simples.
Par exemple, une fleur peut être structurée à l'aide d'étiquettes, ou « clés », pour former des paires clé-valeur. Les valeurs (une grande fleur rouge d'été à quatre pétales) peuvent être associées à leurs clés (taille, couleur, saison, type d'objet et nombre de pétales). La fleur peut également être vendue au prix de « 4,99 ».
Nous pouvons représenter cette structure de clés et de valeurs comme suit :
{
"name": "Meadow Beauty",
"size": "large",
"color":"red",
"season": “summer”,
"type of object": "flower",
"number of petals": "4",
"price": "4.99",
"description": "Coming from the Rhexia family,the Meadow Beauty is a wildflower.”
}
La recherche peut sembler à la fois simple et complexe. Rechercher sur Google est simple, et les résultats sont généralement pertinents (même si cela peut être remis en question ces dernières années, Google ayant mis en avant de nombreux résultats sponsorisés). Bien qu'il ne s'agisse pas d'une solution de recherche à proprement parler, ChatGPT a rendu cette expérience encore plus agréable. Cependant, quiconque a déjà mis en œuvre un système de recherche sait que la recherche d'informations est un sujet extrêmement complexe.
On peut mesurer la qualité des résultats de recherche grâce à la précision et au rappel . La précision correspond au pourcentage de documents pertinents extraits, tandis que le rappel correspond au pourcentage de documents pertinents extraits. Ces deux indicateurs permettent d'évaluer la pertinence des résultats de recherche.

En fait, il peut y avoir un yin-yang entre précision et rappel ; améliorer la précision (exactitude) peut avoir un impact sur le rappel, et améliorer le rappel (exhaustivité) peut nuire à la précision.
L'objectif ultime est d'améliorer les deux, et c'est précisément ce que peut faire la récupération par IA.
La récupération était la dernière pièce du puzzle de la recherche par IA, et c'était aussi la plus difficile pour plusieurs raisons :
Dans ce chapitre, j'expliquerai comment nous avons entrepris de relever ce dernier défi pour la recherche d'informations par l'IA. Dans de prochains articles, j'aborderai plus en détail les autres composantes de la pyramide de recherche.
La recherche d'informations nécessite des technologies permettant de déterminer la pertinence d'une requête. Pendant des années, elle s'est appuyée sur les moteurs de recherche par mots-clés. La situation évolue. Avec l'introduction de la recherche vectorielle, qui va au-delà de la recherche par mots-clés, les concepts peuvent être appréhendés.
La recherche vectorielle est une technologie d'apprentissage automatique utilisée pour la recherche par IA. Les vecteurs sont un moyen de représenter mathématiquement les mots. Ils sont représentés graphiquement et regroupés dans plusieurs dimensions (également appelées espace n-dimensionnel). La recherche vectorielle compare la similarité de plusieurs objets à une requête de recherche ou à un sujet via leur représentation vectorielle. Afin de trouver des correspondances similaires, la requête (ou le sujet) est convertie en vecteurs à l'aide du même modèle que celui utilisé pour convertir des objets (c'est-à-dire des données ou du contenu) en vecteurs. Les vecteurs similaires les uns aux autres sont renvoyés par la base de données, ce qui permet de trouver les correspondances les plus proches et d'obtenir des résultats précis, tout en éliminant les résultats non pertinents que la technologie de recherche traditionnelle aurait pu renvoyer.
Des techniques telles que HNSW (Hierarchical Navigable Small World) , IVF (Inverted File) ou PQ (Product Quantization, une technique permettant de réduire le nombre de dimensions d'un vecteur) sont parmi les méthodes ANN (Approximate Nearest Neighbor) les plus populaires pour trouver des similarités entre vecteurs.
Chaque technique vise à améliorer une propriété de performance particulière, comme la réduction de la mémoire avec PQ ou des temps de recherche rapides et précis avec HNSW et IVF. Il est courant de combiner plusieurs composants pour produire un index « composite » afin d'obtenir des performances optimales pour un cas d'utilisation donné.
Il peut y avoir des milliers de dimensions. La proximité et l'angle entre chaque vecteur aident le moteur de recherche à déterminer la similarité entre les termes et leur signification. Tapez « expresso avec buse vapeur » et un moteur de recherche vectorielle cherchera des similarités pour vous proposer des machines à expresso avec buse vapeur. En revanche, si vous tapez un seul mot, comme « Delonghi » (une marque de machines à expresso), un moteur de recherche vectorielle est tout aussi susceptible de vous proposer d'autres marques et d'autres machines : Nespresso, Keurig, KitchenAid, etc. C'est parce que les vecteurs ne comprennent que le concept de « Delonghi ».

Contrairement aux moteurs vectoriels plus récents, les moteurs de recherche par mots-clés traditionnels sont rapides et précis. Ainsi, une recherche pour « Delonghi Magnifica » donnera exactement ce résultat. Cependant, ces moteurs peuvent rencontrer des difficultés lorsque la requête ne correspond pas au contenu de leur index. Pour pallier ce problème, les entreprises peuvent ajouter des règles, des synonymes, un balisage de mots-clés ou d'autres solutions de contournement, mais il est impossible de couvrir tous les cas de figure.
Par exemple, vous pourriez définir une règle stipulant qu'une requête contenant les mots clés « café ou expresso », « machine » et « lait » signifie la même chose que « machine à expresso avec buse vapeur ». Le problème est qu'il sera impossible de couvrir tous les cas particuliers pour chaque requête de longue traîne. Prenons un autre exemple : une recherche du mot « Java ». Java est utilisé comme synonyme de café et d'expresso, mais en l'absence de synonyme ou de règle dans le moteur de recherche, la requête échouera.
Concevoir et construire un index vectoriel performant et évolutif est une tâche complexe et coûteuse. De même, développer un moteur de recherche par mots-clés efficace pour les requêtes de longue traîne est tout aussi ardu. Prises séparément, les technologies de recherche vectorielle et par mots-clés sont performantes. Combinées, elles sont exceptionnelles.
On appelle cela la recherche hybride , et elle fonctionne bien pour les correspondances exactes, les requêtes courtes ambiguës et les requêtes de longue traîne.
Il suffit donc d'assembler quelques vecteurs et technologies de mots-clés, et le tour est joué ! Moteur de recherche hybride résolu ! Si seulement c'était aussi simple… Comme vous pouvez l'imaginer, il y a quelques défis à relever…
Le principal défi réside dans la gestion de la mise à l'échelle et des coûts de la recherche vectorielle. Les vecteurs sont essentiellement des nombres à virgule flottante, et les ordinateurs peinent énormément à les manipuler. C'est pourquoi des ordinateurs spécialisés, comme les GPU, sont utilisés pour l'IA et le traitement vectoriel. Outre le besoin de bases de données spécialisées pour exécuter la recherche vectorielle, il est indispensable de disposer de ressources de développement dédiées à temps plein pour assurer la gestion continue de la production.
Avec les modèles d'IA, il est essentiel que les données qui alimentent ces modèles restent à jour, pertinentes et optimisées.
Pour les entreprises de e-commerce et les grandes entreprises où les données sont constamment mises à jour et où la rapidité est essentielle, la recherche par IA est trop gourmande en ressources de calcul pour être exécutée en production.
Certaines entreprises ont tenté de contourner le problème en n'exécutant une requête d'IA que si la requête par mots-clés échoue. Cette approche permet de minimiser les coûts de traitement, mais n'offre pas les meilleurs résultats aux clients.
Le hachage sensible à la localité (LSH) est une technique algorithmique bien connue qui répartit les éléments d'entrée similaires dans les mêmes « compartiments » avec une forte probabilité. Généralement, le choix des « compartiments » implique des compromis : un niveau de similarité plus ou moins élevé.
Grâce à notre technique de hachage neuronal, nous avons éliminé tout compromis. Ainsi, nous pouvons compresser, ou hacher, des vecteurs avec des réseaux de neurones (d'où le nom de hachage neuronal) jusqu'à un dixième de leur taille normale , tout en conservant jusqu'à 99 % de l'information.
Ces données peuvent être stockées et gérées sur du matériel et des bases de données standard. En effet, nous pouvons traiter les vecteurs hachés, ou vecteurs binaires, jusqu'à 500 fois plus rapidement que la similarité vectorielle standard , ce qui permet une diffusion aussi rapide qu'une recherche par mots-clés. Et nous pouvons le faire sur des processeurs classiques.
Voici un exemple de requête longue traîne pour « poêle antiadhésive sans téflon » exécutée sur un moteur de recherche utilisant uniquement les mots clés, comparée à un moteur de recherche combinant hachage et mots clés.
Plusieurs points importants peuvent être tirés des captures d'écran précédentes :
Notez également que « frypan » s'écrit en un seul mot au lieu de deux — on aurait pu écrire « fry pan », « frying pan » ou « skillet » — mais le moteur de recherche ne s'en formalise pas. Ceci met en lumière une autre caractéristique importante de la recherche par IA : elle réduit considérablement le travail manuel nécessaire à l'amélioration de la pertinence des résultats.
L'époque où il fallait rédiger des dictionnaires de synonymes pour les termes courants ou des règles pour certains types de requêtes est révolue. Cela ouvre également des perspectives entièrement nouvelles, comme la recherche par questions-réponses.
La recherche ne se limite bien sûr pas à la récupération. Dans notre pyramide de recherche par IA de bout en bout, la récupération (hachage neuronal) se situe au milieu. À chaque extrémité de la pyramide IA se trouvent la compréhension des requêtes et le classement. Dans de prochains articles, j'aborderai ces deux autres fonctionnalités.
Le hachage neuronal représente une avancée majeure dans la mise en production de la recherche par IA pour une grande variété de cas d'utilisation. Associé au traitement des requêtes et au reclassement alimentés par l'IA, il promet de libérer tout le potentiel de la recherche par IA sur site. Nous sommes ravis de lancer prochainement ces nouvelles fonctionnalités IA de bout en bout ! Inscrivez-vous dès aujourd'hui pour être parmi les premiers à essayer la toute nouvelle plateforme Algolia NeuralSearch dès qu'elle sera disponible.
Le classement par IA fait référence à divers algorithmes d'apprentissage automatique utilisés pour optimiser l'ordre des résultats de recherche.
Pour toute requête de recherche, de nombreux résultats pertinents peuvent être obtenus. C'est là qu'intervient le classement des résultats de recherche.
De plus en plus, le classement est assuré par l'intelligence artificielle (IA), qui comprend une variété d'algorithmes d'apprentissage automatique.
Dans cet article, je décrirai différentes approches du classement par IA et aborderai brièvement certains des défis liés à l'obtention de meilleurs résultats.
Pour améliorer le classement dans les résultats de recherche, il est indispensable de pouvoir le mesurer. La précision et le rappel sont deux indicateurs simples de pertinence.
Ces indicateurs sont utiles pour évaluer la qualité des résultats. Idéalement, le rappel et la précision devraient tous deux atteindre 100 %, mais en pratique, c'est très difficile. De plus, la pertinence peut être subjective !
Prenons l'exemple d'un achat de téléviseur : vous recherchez « grand téléviseur » sur le site de votre vendeur préféré. Vous obtenez 119 résultats. Parmi eux, certains sont pertinents, d'autres non (comme les supports et meubles TV ci-dessous). C'est ce qu'on appelle la précision. De nombreux autres produits pertinents présents sur le site n'ont pas été inclus dans les résultats. On appelle cela le rappel .
Pour une meilleure précision et une meilleure mémorisation, vous pouvez affiner votre requête. Par exemple, recherchez « téléviseurs de plus de 40 pouces ». Cette fois (voir ci-dessous), vous obtenez 262 résultats ! Il semble y avoir plus de téléviseurs parmi ces nouveaux résultats, mais seuls certains correspondent au critère de recherche de plus de 40 pouces.
En réalité, il peut exister un équilibre entre précision et rappel ; améliorer l'une peut avoir un effet néfaste sur l'autre.
Il peut exister de nombreuses chaînes de télévision pertinentes. Cependant, le meilleur résultat est celui qui suscite le plus d'intérêt chez les clients, ce qui se mesure par le nombre de clics, d'achats, d'évaluations, le taux de retour le plus bas, etc. Les résultats les mieux classés génèrent le plus d'engagement ; à l'inverse, si les utilisateurs ne trouvent pas facilement les meilleurs résultats, ils risquent de quitter votre site ou de trouver d'autres moyens d'obtenir des réponses à leurs questions, comme ouvrir un ticket d'assistance.
La précision et le rappel nous permettent de mieux appréhender le concept de classement par IA. Lorsqu'une requête est effectuée, les moteurs de recherche doivent déterminer la pertinence des résultats, puis les classer par ordre décroissant de pertinence.
Traditionnellement, diverses méthodes statistiques étaient utilisées pour classer les résultats en fonction de la fréquence des termes dans un ensemble de documents. Les moteurs de recherche par mots clés recherchent les mots de la requête et leurs synonymes, puis un algorithme permet de classer ces résultats du plus pertinent au moins pertinent. Ces méthodes sont très efficaces et rapides, mais nécessitent de nombreuses heuristiques supplémentaires. Parmi les fonctionnalités ajoutées pour améliorer les modèles de classement purement statistiques, on peut citer :
Ces « signaux » peuvent créer un cercle vertueux de rétroaction positive. Comme je le démontrerai, un engagement accru permet de réévaluer les résultats, ce qui, à son tour, peut générer encore plus d'engagement.