Notre solution de recherche permet d'indexer et interroger des documents dans de nombreux formats différents.
Lorsquâun utilisateur lance une recherche, plusieurs techniques sont combinĂ©es afin de prĂ©senter les rĂ©sultats les plus pertinents en fonction de la requĂȘte.
đ Calcul du Score de Pertinence
La recherche repose sur un calcul de score de pertinence (ou « score de match »).
Pour chaque document trouvĂ©, le moteur attribue un score qui reprĂ©sente dans quelle mesure ce document correspond Ă la requĂȘte de lâutilisateur.
Ce score est dĂ©terminĂ© par plusieurs facteurs, notammentâŻ:
Correspondance textuelleâŻ: Le moteur analyse dans quelles mesures les mots de la requĂȘte figurent dans le document.
La frĂ©quence des motsâŻ: Plus un mot apparaĂźt dans un document (et dans des champs importants), plus il contribue au score.
Des pondĂ©rations spĂ©cifiquesâŻ: Certains champs (comme le titre) ont un poids (ou « boost ») plus Ă©levĂ© que dâautres (comme le contenu).
đŻ Priorisation des Champs de Recherche
Pour amĂ©liorer la pertinence, notre moteur de recherche accorde plus dâimportance Ă certains champs que dâautres. ConcrĂštementâŻ:
Le Titre a un fort impact : Un mot apparaissant dans le champ « titre » peut ĂȘtre pondĂ©rĂ© jusquâĂ 10 fois plus fortement quâun mot dans le contenu.
Le Contenu et les Autres ChampsâŻ: Par exemple, les zones comme le contenu ou certains champs de mĂ©tadonnĂ©es (nom de lâauteur, adresses e-mail) ont une pondĂ©ration plus faible (par exemple, 1 ou 3) par rapport au titre.
Cela signifie que si un document possĂšde le mot recherchĂ© dans son titre, il sera considĂ©rĂ© comme plus pertinent que sâil ne le trouvait que dans le contenu.
đ Impact de la FrĂ©quence dâApparition dâun Mot
Le nombre dâoccurrences (ou la frĂ©quence) dâun mot dans un document joue Ă©galement un rĂŽle. Voici comment cela fonctionneâŻ:
Plus un mot apparaĂźt dans un document, plus cela renforce son score de pertinence pour la requĂȘte, surtout si ce mot apparaĂźt dans un champ bien pondĂ©rĂ© (comme le titre).
Moins un mot est fréquent dans le corpus complet, plus la présence de ce mot est importante (stratégie dite des "mots rares")
Les fonctions de score intĂšgrent ces occurrences pour calculer un score global qui permet ensuite de classer les documents de maniĂšre Ă mettre en avant ceux qui correspondent le mieux Ă la recherche.
đ« Gestion des Mots Vides (stopwords)
Pour Ă©viter que des mots trĂšs courants et peu porteurs de sens (par exemple, «âŻleâŻÂ», «âŻlaâŻÂ», «âŻlesâŻÂ», etc.) ne viennent fausser le calcul du score, notre systĂšme utilise des filtres de stopwords.
Ces mots sont automatiquement exclus de lâanalyse du texte afin que seuls les mots significatifs influent sur le score.
Ces mots sont également exclus des surlignages (highlights) afin que l'utilisateur puisse plus facilement se rendre compte de la pertinence des résultats.
đ§ Recherche SĂ©mantique et Traitement Linguistique
Notre solution intĂšgre plusieurs techniques de traitement du langage naturel qui permettent dâamĂ©liorer la correspondanceâŻ:
Stemming et Normalisation
GrĂące Ă des analyseurs spĂ©cialement configurĂ©s notamment pour le français et d'autres langues europĂ©ennes, les mots sont ramenĂ©s Ă leur racine. Ceci permet par exemple quâune recherche pour «âŻgĂ©nĂ©ralâŻÂ» puisse aussi trouver «âŻgĂ©nĂ©rauxâŻÂ», car les deux termes seront rĂ©duits Ă une forme commune.
Synonymes et Variations
Des filtres de synonymes sont également appliqués, ce qui aide à couvrir des variations linguistiques ou orthographiques.
Recherche par Phrase et Expression
En plus dâune recherche classique, le systĂšme utilise des requĂȘtes "phrase" pour donner un coup de pouce aux documents dans lesquels les mots recherchĂ©s apparaissent proches les uns des autres, amĂ©liorant ainsi la cohĂ©rence contextuelle.
đ Autres Facteurs (comme la Date)
En plus du contenu textuel, notre algorithme peut également prendre en compte la fraßcheur des documents.
Une fonction de décroissance (dite "gaussienne") est appliquée sur le champ de la date, ce qui signifie que les documents plus récents sont favorisés dans le classement, surtout si leur contenu est pertinent pour la recherche.
đ En RĂ©sumĂ©
Calcul du Score : Le score est un calcul combinant la correspondance des mots, leur frĂ©quence et lâimportance du champ dans lequel ils apparaissent.
Boosting des Champs : Les mots dans le titre (avec un boost élevé) sont considérés comme plus significatifs que ceux du contenu.
Impact de la Fréquence : Plus un mot apparaßt dans un document, plus celui-ci est considéré comme pertinent.
Exclusion des Mots Vides : Des mots courants (comme «âŻleâŻÂ») sont automatiquement Ă©liminĂ©s pour se concentrer sur les termes essentiels.
Traitement Linguistique : GrĂące au stemming et Ă lâutilisation de synonymes, diffĂ©rentes formes dâun mot (par exemple, «âŻgĂ©nĂ©ralâŻÂ» vs. «âŻgĂ©nĂ©rauxâŻÂ») sont traitĂ©es de maniĂšre similaire, ce qui enrichit la recherche.
FraĂźcheur des Documents : La date du document intervient Ă©galement pour offrir des rĂ©sultats Ă la fois pertinents et dâactualitĂ©.
Ce systĂšme de recherche permet donc dâafficher en premier les documents les plus susceptibles de correspondre Ă lâintention de lâutilisateur, tout en prenant en compte des nuances linguistiques et contextuelles.