Les limites des moteurs de recherches basés sur la Racinisation

Beaucoup de moteurs de recherche implémentent différentes techniques pour surmonter certains problèmes dus à la recherche par mot-clé. L’une des techniques les plus populaires est appelé « Stemming » (ou racinisation).

Ce type de technique est utilisé par Google Search Appliance (sauf leur « mini » version pour laquelle cette option n’est pas disponible), Solr, Autonomy IDOL et d’autres solutions commerciales et open source.

Qu’est-ce que la racinisation ou Stemming ?

En linguistique, la racinisation est un processus qui consiste à réduire les mots par leur radical (appelés également stemmes, bases ou racines). L’algorithme de recherche sera donc basé sur ces racines. Ce que certains moteurs de recherche essayent de faire avec ce système de racinisation, c’est d’effectuer une recherche sur la racine des mots au lieu de faire une recherche sur les mots-clés, les mots tels quels. Par exemple:

  • Ils sont capables de reconnaître un mot quelques soient les flexions employées par les internautes dans leurs questions (« regarde », « regarder », « regardant », « regard », …).
  • Ils peuvent aussi être capables d’appliquer une sorte de distance de pénalité entre le mot correspondant et sa racine (appelé parfois son lemme « avancé »). Ainsi, si l’utilisateur tape « regardent » dans sa question et que cette question matche à la fois avec une réponse contenant « regarder » et un autre contenant « regard », l’algorithme appliquera un meilleur score au contenu avec « regarder ».

 

Racinisation : quels sont les inconvénients de l’algorithme ?

Cette sophistication de l’algorithme s’arrête là et ces exemples aussi relèvent d’une certaine faiblesse étant donné que « regard » et « regarder » ne sont pas vraiment équivalent sémantiquement même s’ils partagent la même racine.

L’autre inconvénient de cet algorithme est que les racines vont aussi matcher avec les expressions verbales contenant ces racines ce qui fait que, dans certains cas, les mots ambigus sont matchés de la même manière alors que le sens est différent. Par exemple:

  • La question « Mon grille-pain a rendu l’âme » va matcher avec « Le commerçant a oublié de me rendre la monnaie« .
  • A la question « je cherche un avocat« , la réponse « Je préfère les carottes aux avocats » matchera également. L’ambiguïté sémantique ne sera pas prise en compte dans l’algorithme de matching.

En résumé, ces types de moteur de recherche basés sur un algorithme de racinisation ne sont rien de plus que des moteurs de recherche basés sur des mots-clés avancés.

Parallèlement, les véritables moteurs de recherche en langage naturel, comme Inbenta, sont basés sur le sens. Une recherche sémantique traduit les mots en concepts (ainsi, la solution est capable de distinguer les mots qui ont plus d’un sens et de distinguer les verbes des expressions verbales).

Aussi, ces moteurs de recherche établissent des relations entre les concepts. Les véritables moteurs de recherche en langage naturel comme Inbenta, sont en effet capables de matcher pas seulement avec le concept avec toutes les différentes représentations graphiques associées à ce concept, mais aussi avec les synonymes de ce concept.

Comparaison entre racinisation et véritables moteurs de recherche en langage naturel

Appliquons maintenant les mêmes exemples au moteur Inbenta

La question de l’utilisateur « Mon grille-pain a rendu l’âme » ne matchera pas avec « Le commerçant a oublié de me rendre la monnaie » mais matchera avec une réponse plus pertinente comme « Mon appareil électroménager ne fonctionne plus » (grâce aux relations synonymiques « grille-pain / appareil électroménager » et « rendre l’âme / ne plus fonctionner »).

D’autre part, l’algorithme de racinisation et le moteur de recherche d’Inbenta vont considérablement différer dans la façon dont le scoring est appliqué.

Alors que le moteur de recherche par racinisation va assigner des scores basés sur le nombre de racines qui coïncident (en appliquant une pénalité sur la distance de correspondance), l’algorithme de scoring d’Inbenta est basé sur la distance sémantique entre les concepts et les questions.

Consultez nos derniers similaires