Les petites cases

De la polysémie de "catégorisation" en recherche d'informations

A l'occasion de la lecture de l'article d'Olivier Ertzcheid, Gabriel Gallezot et Eric Boutin sur les perspectives documentaires sur les moteurs de recherche, je suis tombé sur le mot « catégorisation », j'imagine, pour définir la fonctionnalités des « termes associés » d'Exalead. Il s'avère que ce terme est une source d'ambiguïté permanente dans le domaine de la recherche d'informations, faisant référence à plusieurs fonctionnalités et plusieurs technologies différentes. Je vous propose de faire le point afin d'y voir plus clair.

En text-mining, la catégorisation désigne le regroupement automatique de documents selon une proximité statistique et linguistique. Le système compare les mots présents dans les documents1 et/ou leurs agencements via une analyse morpho-syntaxique et une analyse des collocations, parfois avec l'aide de dictionnaires. A partir de cette comparaison, il va pouvoir organiser une collection de documents en différents groupes. C'est stricto-sensu la traduction de clustering.

Pour effectuer ces regroupements, le système peut avoir des groupes de documents pré-définis. Dans ce cas, il doit être « entraîné », c'est à dire que des documents sont intégrés au système et associés à un groupe précis. C'est le principe des systèmes d'anti-spam. Dans thunderbird, par exemple, vous avez deux catégories: spam-no spam. Au démarrage du logiciel, il intègre d'ors et déjà de règles que vous allez préciser au fur et à mesure de l'utilisation, en associant le message à une des deux catégories. Dans le même ordre d'idée, on peut aussi mettre au point un plan de classement très élaboré, comme un thésaurus, qui va servir de base au regroupement des documents. Dans ce cas, le système doit être entraîné à classer dans chacun des termes du thésaurus. On parle alors plus volontiers de classification.

Du point de vue des résultats de ces fonctionnalités, il faut être honnête, nous sommes encore très loin d'un résultat parfait. Les systèmes de text-mining assez élaborés (et assez chers aussi) atteignent des résultats à peu près satisfaisants dans le cas d'un corpus documentaire possédant un vocabulaire homogène et des documents aux structures équivalentes et d'une longueur moyenne. Évidemment, en fonction de la technologie choisie, les résultats sont plus ou moins pertinents. Ainsi, la catégorisation automatique sans entraînement et sans classification donnera des résultats forcément moins pertinents, mais constitue des solutions moins chers.

Contrairement à ce que j'ai pu penser jusqu'à peu (suis-je le seul ?), le système des « termes associés » dans Exalead est différent et ne constitue pas à proprement parler du clustering au sens text-mining. Dans le cas du regroupement automatique, l'analyse lexicale, syntaxique voire sémantique se fait sur l'ensemble du document. Dans le cas du système des « termes associés », le moteur de recherche associe automatiquement au moment de l'indexation des expressions présentes dans le document qui semblent pertinentes. Lorsqu'un utilisateur fait une requête, le moteur affiche les expressions communes aux différentes réponses affichées sur la page de résultats. En cliquant sur une de ces expressions, vous allez préciser votre recherche. Si vous observez bien, vous remarquerez que l'expression est présente telle que dans les réponses.

Exemple : la recherche sur « Web sémantique » vous renvoie différentes expressions dont Ressource description framework, en cliquant dessus, les réponses que vous obtiendrez comprendront à la fois l'expression « web sémantique » et l'expression « Ressource description Framework ».

Dans ce cas, il s'agit bien d'une association morphologique (nonobstant des éventuelles règles simples de flexion) et en aucun cas linguistique ou sémantique. Cela ne remet pas en cause la fonctionnalité en elle-même qui présente certains avantages, mais en limite la portée et permet de mieux comprendre la faible pertinence de ces termes associés, même si des progrès notables ont été faits ces derniers mois.

Par extension et dans une large acception, le mot « catégorisation » est utilisé pour désigner les interfaces à facettes permettant de naviguer et de préciser les résultats d'une recherche. En effet, chacun des critères et leurs valeurs forment des catégories. D'ailleurs, l'article cité plus haut fait référence à ces systèmes, développant l'idée qu'ils apporteraient une valeur ajoutée à la recherche de l'utilisateur.

De nombreux moteurs implémentent déjà ce genre de fonctionnalités pour les sites de e-commerce par exemple (Dell avec le moteur FAST ou les annonces jaunes avec Antidot), pour les sites touristiques (Agence de développement touristique de la Nièvre par Antidot et Mondeca) et même pour des sites d'institutions de recherche (INSERM par Antidot qui propose à la fois des expressions associées et une classification avec le thésaurus MeSH parmi les « catégories » des interfaces à facettes). On remarquera dans ce cas qu'il s'agit de moteur de recherche interne.

En effet, pour mettre au point ces interfaces à facettes, il faut que les données soient structurées et donc maîtrisées par le moteur de recherche. C'est pourquoi très peu de moteurs de recherche grand public indexant le Web proposent actuellement ce genre de fonctionnalités. Si on prend le cas d'Exalead, je voudrais bien savoir comment ils peuvent déterminer que tel ou tel site est un blog ou non. Évidemment, si on commençait à sémantiser le Web en ajoutant des métadonnées, des microformats voire du RDFa, il serait alors plus simple pour les moteurs de générer des interfaces à facettes. CQFD ;-)

Une petite note en passant

1On appelle cela calcul de la distance intertextuelle, pour plus de renseignements sur le sujet, cf. cet article complet d'Etienne Brunet dans la revue Corpus, http://corpus.revues.org/document.html?id=30

Management de l'information Causeries Moteur de recherche — 

Commentaires

Je pense que les "termes associés" sont des termes qui ont un certain pourcentage de corpus documentaires similaires. A cela peut se rajouter des pondérations basées sur les co-occurences des "termes associés" dans un même document.