Qu'est-ce qu'une recherche floue ?
Une recherche floue est une technique qui utilise des algorithmes de recherche pour trouver des chaînes de caractères correspondant approximativement à des modèles. Elle est particulièrement utile pour aider les utilisateurs à trouver des pages Web sans avoir à savoir exactement ce qu'ils recherchent ou comment un mot s'écrit. Les recherches floues sont également utilisées pour les recherches en langage SQL (Structured Query Language) afin d'aider les utilisateurs de bases de données à trouver des enregistrements sans avoir à connaître l'orthographe exacte de la valeur qu'ils recherchent.
Une recherche floue est effectuée à l'aide d'un algorithme de correspondance floue, qui renvoie une liste de résultats en fonction de leur pertinence probable, même si les mots et l'orthographe des arguments de recherche ne correspondent pas exactement. Pour les recherches sur le Web, les correspondances exactes et très pertinentes apparaissent en haut de la liste. Des notes de pertinence subjectives peuvent être attribuées, généralement sous forme de pourcentages.
Comment fonctionnent les recherches floues ?
Un algorithme de correspondance floue peut fonctionner comme un correcteur orthographique et un correcteur de fautes d'orthographe. Par exemple, si un utilisateur tape « Misissippi » dans Yahoo ou Google (qui utilisent tous deux la correspondance floue), une liste de résultats s'affiche, accompagnée de la question « Voulez-vous dire Mississippi ? ». Des orthographes alternatives et des mots qui se prononcent de la même manière mais s'écrivent différemment sont proposés.
Un algorithme de correspondance floue peut compenser les erreurs de saisie courantes, ainsi que les erreurs introduites par la numérisation optique des caractères des documents imprimés. L'algorithme peut renvoyer des résultats dont le contenu contient un mot de base spécifié ainsi que des préfixes et des suffixes. Par exemple, si le mot « planète » est saisi comme mot de recherche, les résultats renvoient vers des sites contenant des mots tels que « protoplanète » ou « planétaire ». Le programme peut également trouver des synonymes et des termes connexes, fonctionnant comme un thésaurus en ligne ou un outil de référence encyclopédique.
Les algorithmes de correspondance approximative renvoient généralement des résultats non pertinents, ainsi que des résultats pertinents. Des résultats superflus sont susceptibles d'apparaître pour les termes ayant plusieurs significations, dont une seule correspond à l'intention de l'utilisateur. Si l'utilisateur n'a qu'une idée vague ou générale du sujet ou ne sait pas exactement ce qu'il recherche, le ratio entre les résultats pertinents et les résultats non pertinents a tendance à être faible. Cependant, ce ratio est encore plus faible lorsqu'un programme de correspondance exacte est utilisé dans cette situation.
La recherche approximative est beaucoup plus puissante que la recherche exacte lorsqu'elle est utilisée à des fins de recherche et d'enquête. Elle est particulièrement utile pour rechercher des termes inconnus, étrangers ou sophistiqués dont l'orthographe correcte n'est pas largement connue. La recherche approximative peut également être utilisée pour localiser des personnes à partir d'informations d'identification incomplètes ou partiellement exactes.
De nombreux moteurs de recherche permettent aux utilisateurs de demander spécifiquement une recherche floue dans la requête de recherche en utilisant un tilde (~) à la fin du mot ou du terme qu'ils souhaitent rechercher avec un certain degré de flou.
Qu'est-ce que la distance de Levenshtein ?
La proximité entre le terme recherché et la correspondance exacte est mesurée en termes de distance d'édition, une métrique qui représente le coût de conversion d'une chaîne de caractères en une autre. La méthode la plus couramment utilisée pour calculer la distance d'édition consiste à prendre le nombre minimum de modifications d'un caractère nécessaires pour convertir le terme recherché en correspondance exacte. Ce calcul donne la distance de Levenshtein, du nom du scientifique russe qui a inventé cette méthode, Vladimir Levenshtein.
Les changements suivants, portant sur un seul caractère, sont utilisés pour calculer la distance d'édition. Certains algorithmes utilisent des pondérations pour attribuer une valeur plus élevée à une ou plusieurs opérations primitives :
- Insertion : recherche flue → recherche floue
- Suppression : recheerche floue → recherche floue
- Substitution : recherche flooe → recherche floue
- Transposition : recherche fluoe → recherche floue
Quels sont les avantages et les inconvénients de la correspondance approximative ?
Si la recherche approximative peut être utile aux chercheurs qui ne connaissent pas l'orthographe exacte de ce qu'ils recherchent, elle peut également être source de frustration, car elle peut renvoyer des résultats non pertinents que l'utilisateur doit ensuite filtrer.
La correspondance approximative offre les avantages suivants :
- Les visiteurs en ligne peuvent trouver des produits ou des catégories de produits sans connaître leur orthographe exacte.
- Les touristes peuvent localiser les villes sans connaître leur orthographe exacte ou en utilisant une orthographe approximative lorsque le nom de la ville est répertorié dans une autre langue.
- Les scientifiques peuvent trouver des articles sans avoir à connaître leur titre exact.
- Les utilisateurs peuvent trouver les noms de films ou de livres sans connaître les titres exacts.
- Les utilisateurs peuvent rechercher des personnes sans connaître l'orthographe exacte de leur nom.
La correspondance floue présente également les inconvénients suivants :
- Il renvoie parfois trop de résultats, obligeant l'utilisateur à passer en revue toutes les suggestions pour trouver celle qui convient le mieux. Parfois, le résultat le plus approprié se trouve vers la fin de la liste, plusieurs pages plus bas ; et parfois, aucun des résultats n'est approprié.
- Il ne compense que les fautes de frappe ou les fautes d'orthographe et doit être complété par un algorithme sémantique afin de prendre également en compte les synonymes et la sémantique.
Quelle est la différence entre une recherche floue et une recherche avec caractères génériques ?
Une recherche approximative est soit appliquée par défaut, soit spécifiquement demandée par l'utilisateur, souvent en tapant un tilde(~) à la fin du terme recherché. La recherche approximative renvoie les correspondances dans une certaine distance d'édition en supposant que toutes les lettres du terme recherché peuvent être insérées, supprimées, remplacées ou transposées.
Une recherche avec caractères génériques ne peut être spécifiquement demandée par l'utilisateur qu'en utilisant des caractères génériques, qui sont des caractères indiquant différents types de correspondances. Le moteur de recherche considère uniquement que certaines lettres peuvent être modifiées, en supposant que toutes les autres lettres doivent correspondre exactement. Voici deux des caractères génériques les plus couramment utilisés, ainsi que leur signification :
- Un point d'interrogation (?) est utilisé pour remplacer un seul caractère. Une recherche sur f?zzy peut donner fuzzy et fizzy.
- Un astérisque (*) est utilisé pour la correspondance de plusieurs caractères. Une recherche sur fuzz* peut donner fuzzie et fuzzy.
Découvrez en quoi les moteurs de recherche spécialisés diffèrent des moteurs de recherche polyvalents, tels que Google.
