Nous suivre Industrie Techno

La sémantique déjoue la complexité

Pour extraire les informations pertinentes dans de gros volumes de données, les outils de la sémantique sont précieux, en particulier dans le cadre des entreprises. Leurs créateurs jouent sur le paramétrage de leurs outils pour apporter rapidement et avec précision le maximum d'éléments, sans laisser dans l'ombre une donnée clé.

Auparavant réservés aux secteurs manipulant de grands fonds documentaires, les moteurs de recherche sont connus du grand public depuis les années 1990. Dès les débuts du Web, ils se sont imposés comme outils indispensables pour trouver des documents pertinents, en lien avec un besoin d'information exprimé sous forme de mots. Au -delà de cet usage grand public, ils s'avèrent un outil précieux pour les entreprises.

 

1. OBJECTIFS : Les moteurs de recherche aident à trouver l'information

 

La sémantique était au coeur des technologies de recherche, avant que les moteurs de recherche Internet ne nous habituent à la recherche exacte. Celle-ci se satisfait de correspondances au caractère près entre la requête et les documents. La sémantique travaille au contraire sur le sens. Les méthodes pour dégager cette signification peuvent être mathématiques, statistiques ou linguistiques. Elles interviennent à différents stades, pour des résultats plus ou moins visibles. Ainsi, elle est quasiment indétectable pour l'utilisateur si elle intervient dans le calcul de la pertinence. Depuis l'introduction du « knowledge graph », au contraire, elle est mise en avant par Google. Le moteur interprète la requête et affiche des informations factuelles en plus de la liste des résultats concernant les objets sémantiques identifiés. Le moteur grand public réussit ainsi à grande échelle et sur des connaissances généralistes ce qui se fait en entreprise sur des données spécifiques (Fig. 1).

L'expérience utilisateur d'un moteur de recherche d'entreprise est dorénavant assez proche de ce à quoi il a été habitué sur Internet. L'environnement est pourtant très différent. Dans nos entreprises, l'information est souvent présente dans des silos, des espaces de stockage propriétaires difficiles d'accès, éventuellement dans des systèmes de gestion de contenu (CMS). Des paliers de sécurité régissent l'accès aux documents, et leurs formats sont hétérogènes, contrairement à ceux des documents Web, dont l'encodage est standardisé. Les rapports, feuilles de calcul, présentations, et autres réponses à appels d'offres sont généralement peu interconnectés, contrairement aux documents sur le Web. Cette absence d'hyperliens empêche d'inclure dans le calcul de la pertinence un algorithme de type PageRank, qui a fait le succès de Google. En outre, des algorithmes qui s'appuient sur les spécificités du Web comme sa masse documentaire et son ouverture (toutes les données sont disponibles pour tous) sont peu adaptés au monde fermé de l'entreprise.

 

2. FONCTIONNEMENT : Une bonne indexation garantit la capacité à répondre aux requêtes

 

Le moteur de recherche donne un accès unique à toute l'information disponible dans l'entreprise sous forme textuelle. Pour ce faire, il indexe les documents pour pouvoir les rendre en réponse à une requête. Dans l'entreprise, l'information textuelle se trouve généralement dans des fichiers de formats propriétaires comme PDF, Word, PowerPoint, des bases de données ou des CMS. La première étape de l'analyse consiste donc à extraire le texte des documents, ainsi que ses éventuelles métadonnées décrivant par exemple l'auteur, les thèmes abordés ou les personnes citées. Les modules informatiques qui accèdent à une source de données pour en extraire le contenu et le transmettre au moteur pour indexation sont appelés des connecteurs. Ils identifient le niveau de sécurité des documents, pour en respecter les droits administratifs d'accès en vigueur dans l'entreprise.

Le texte de chaque document est ensuite indexé, c'est-à-dire analysé et découpé en mots stockés dans l'index. À la fin de l'indexation, cette structure de données indique pour chaque mot dans quels documents il se trouve et à quelle position au sein du document (Fig. 2). Pour limiter la taille de l'index, les mots les plus courants, peu porteurs de sens, peuvent être filtrés. On considère notamment comme des mots vides les déterminants (le, la, ce...), les auxiliaires (être, avoir), les prépositions (à, de, pour...) (Fig. 3). Un tel filtrage réalisé de façon trop brutale présente un risque : celui de ne pas retrouver certains mots grammaticalement ambigus. Ainsi, le mot « est » est vide dans « il est à Paris » et plein dans « il va à l'est de Paris ». Une autre façon de réduire la taille de l'index est d'indexer une forme normalisée pour chaque mot. La forme telle qu'elle apparaît dans le texte est alors remplacée par une forme calculée ou fournie par des dictionnaires. On peut par exemple lier les singuliers et pluriels des substantifs (cheval - chevaux), toutes les formes conjuguées d'un verbe (écris, écrit, écrivons...) ou encore des mots partageant la même racine (produire - produit - production). Ces formes normalisées peuvent intervenir dans le calcul de pertinence. Les méthodes de sélection et de normalisation des mots à indexer sont caractéristiques de chaque moteur de recherche.

Lors de l'indexation, le moteur peut enrichir les données d'origine grâce à une analyse plus avancée, dans le but d'étendre ses fonctionnalités, son efficacité et son ergonomie. Par exemple via le repérage automatique des noms de personnes. En entreprise, tout n'est pas écrit. Les employés sont les premières sources d'information mais leurs expertises ne sont pas forcément répertoriées. Ce traitement aide ainsi à identifier un expert sur un sujet donné, en associant les noms des employés aux sujets traités dans les mêmes documents. Ajouter ce type de traitement allonge les temps d'indexation, mais préserve les performances au requêtage du moteur. Un moteur peut donc être jugé sur sa capacité à ajouter des traitements intelligents tout en optimisant les temps d'indexation.

L'utilisateur interroge le moteur de recherche en mettant dans la case de recherche un ensemble de mots envoyés au moteur. Sa requête est interprétée et appariée à l'index, pour aboutir à une liste ordonnée de documents.

L'interprétation de la requête est délicate. Il faut appliquer les mêmes traitements qu'à l'indexation, sous peine d'introduire une asymétrie entre analyse de la requête et analyse des documents. Chaque moteur fournit aux utilisateurs un set d'opérateurs syntaxiques permettant de mettre des contraintes supplémentaires, comme l'obligation de la présence ou l'absence d'un mot ou d'une suite de mots. Le requêtage booléen permet l'utilisation des opérateurs AND, OR et NOT, mais constitue un mode de recherche peu intuitif. Pour cette raison, les moteurs maximisent plutôt la présence des mots de la requête dans les documents, quitte à ne pas avoir tous les mots cherchés dans tous les documents résultants.

À l'appariement de la requête avec l'index, certains mots sont considérés comme plus importants que d'autres. Les calculs statistiques les plus connus pour faire cette discrimination sont le Term Frequency (TF) et le Inversed Document Frequency (IDF). Les deux sont combinés et connus sous le nom TF-IDF. Le TF représente le nombre d'occurrences d'un mot dans un document donné : plus le nombre d'occurrences du mot de la requête dans un document est élevé, plus ce document est pertinent. Pour le calculer, on compte le nombre d'occurrences "o" d'un mot "t" dans le document "d".

 

tf(t,d) = o(t,d)

 

Il est bien sûr possible de normaliser cette valeur, par exemple en la divisant par le nombre de mots du document. L'IDF intervient pour discriminer les mots importants des autres : plus le mot a d'occurrences dans l'ensemble des documents, moins il est important, et inversement. Les mots de la requête qui sont d'un usage courant ont alors peu de poids, contrairement à ceux qui sont moins courants. Pour calculer l'IDF, on prend le logarithme du nombre total de documents D, divisé par le nombre de documents "d" contenant le mot "t".

 

En combinant ces deux formules, on obtient un score de pertinence pour chaque document pour une requête donnée. Ce score se calcule en additionnant les scores TF-IDF pour tous les mots de la requête présents dans au moins un document, divisé par la somme des scores TF-IDF des mots de la requête.

 

De cette façon, on ordonne la liste des documents répondant à une requête par leur score de pertinence. Ceci n'est évidemment qu'un exemple classique de calcul de pertinence. Comme il s'agit d'un différenciateur important, la formule exacte fait en général partie des secrets de fabrication.

En réponse à une requête, le moteur renvoie à l'interface une liste de résultats avec des documents ordonnés selon un score de pertinence descendant. Les documents les plus pertinents se trouvent donc en tête de liste.

 

3. PERTINENCE : La précision et le rappel caractérisent la performance

 

L'évaluation de la pertinence d'un moteur de recherche se fait classiquement par le calcul de la précision et du rappel (Fig. 4). La précision est la mesure indiquant la performance du moteur à renvoyer des documents pertinents et seulement ceux-là. Ils correspondent une recherche donnée. Cette mesure se calcule en divisant le nombre de documents pertinents renvoyés par le nombre total de documents renvoyés. Le rappel mesure la performance du moteur à renvoyer l'ensemble complet des documents pertinents. Elle est obtenue en divisant le nombre de documents pertinents renvoyés par le nombre de documents pertinents dans l'ensemble des documents indexés. Son calcul implique donc une connaissance approfondie de l'ensemble des documents, car il faut connaître a priori pour chaque requête les documents correspondants. Pour cette raison, elle est coûteuse à mettre en oeuvre sur de grands ensembles de documents. Ces deux mesures donnent deux visions différentes qui se complètent et peuvent être combinées dans la F-Mesure, moyenne harmonique de la précision et du rappel.

 

Le meilleur moteur maximise à la fois la précision et le rappel. Or les deux mesures sont inversement corrélées : le rappel est moins bon quand on améliore la précision, et la précision baisse si on perfectionne le rappel. Les paramétrages du moteur privilégient l'un ou l'autre, selon l'utilisation.

La précision moyenne AP (Average Precision) est une mesure répandue qui inclut, en plus du rappel et de la précision, l'ordonnancement des résultats. La position de chaque document renvoyé étant prise en compte, elle permet de vérifier que le moteur rend ses documents pertinents en début de liste, c'est-à-dire à l'endroit où l'utilisateur les attend. À chaque document pertinent trouvé à une position "i" de la liste de résultats, un score de précision est calculé sur l'ensemble "Di", qui inclut les documents de la liste des résultats jusqu'à la position "i". La précision moyenne pour une requête "q" se calcule en divisant la somme des scores de précision ainsi calculés par le nombre de documents pertinents "j" dans la liste de documents renvoyés à la même position.

 

La MAP (Mean Average Precision), indicateur de la performance globale du système, est la moyenne sur plusieurs requêtes des scores de précision moyens. Ces mesures classiques ne sont pas parfaites, et la littérature scientifique décrit bon nombre d'autres mesures et des variations qui peuvent entrer en compte dans l'évaluation de la pertinence d'un moteur de recherche.

Deux notions assez intuitives sont calculées à partir des mesures de précision et de rappel. Le bruit, qui mesure le nombre de documents non pertinents que le moteur renvoie à l'utilisateur en réponse à une requête, se calcule par la soustraction : 1 - précision. Le silence, qui mesure le nombre de documents que le moteur aurait dû renvoyer à l'utilisateur mais ne l'a pas fait, se calcule par la soustraction : 1 - rappel (Fig. 4 et 5).

La pertinence est donc au centre de l'évaluation de la qualité d'un moteur de recherche. Sa perception étant subjective, des panels d'utilisateurs sont sollicités. Outre la pertinence, la comparaison de plusieurs outils prend en compte le temps passé par un utilisateur à retrouver l'information.

 

4. INNOVATION : Une décennie d'amélioration des technologies

 

Les campagnes d'évaluation Trec (Text REtrieval Conference), mises en place par le Nist (National Institute of Standards and Technology) aux États-Unis depuis les années 1990, ont permis d'augmenter année après année la performance des moteurs de recherche en termes de précision et de rappel. Néanmoins, après une période de forte progression, un palier a été atteint pour la pertinence. Les chercheurs et industriels se sont alors concentrés sur d'autres innovations, pour réduire le temps consacré à la recherche d'information en aidant l'utilisateur à interagir avec le moteur. L'effort cognitif de formulation des requêtes restant important, les systèmes mettent en oeuvre des stratégies pour guider les utilisateurs. Par exemple, via des suggestions en temps réel pendant la saisie, proposant des mots ou des suites de mots qui se trouvent effectivement dans l'index. Ou encore en corrigeant les mots en cas d'erreur de frappe, par correction phonétique ou en calculant la différence avec des mots dans l'index.

Une autre fonctionnalité devenue quasiment un standard est l'utilisation de « facettes », ou nuages de mots clés (Fig. 6), qui se trouvent dans l'interface à côté de la liste des résultats. Les mots-clés sont extraits des documents obtenus en réponse à la requête. Ils permettent d'affiner la liste des résultats en un clic. Les méthodes de remplissage des facettes dépendent de chaque moteur. Elles vont de la simple détection d'une liste de mots à la découverte dynamique d'expressions importantes.

Le « text mining », l'enrichissement automatique du contenu textuel (Fig. 7), est l'un des développements en traitements automatiques des langues adopté avec succès en recherche d'information, dont il a durablement changé le visage. Il sert à remplir les « facettes », à fournir des métadonnées et à faciliter la lecture par la mise en couleurs des entités détectées. Il reconnaît typiquement des noms de personne (Fig. 8), des noms d'entreprise, des noms géographiques, ainsi que toute suite de caractères formulée en expressions régulières comme les mesures, les numéros de téléphone ou les plaques d'immatriculation. La même technologie sert aussi à faire de l'analyse du sentiment, à transformer le texte en graphiques, ou encore à remplir des interfaces décisionnelles.

 

5. PERSPECTIVES : L'avenir commence aujourd'hui

 

Les moteurs de recherche ont été créés pour traiter de grands volumes de données. Les « big data » ne leur font pas peur, au contraire. Pour traiter ces grands volumes de données, la plupart des moteurs ont introduit ces dernières années une architecture en grille, avec séparation des tâches d'indexation, d'interrogation et de contrôle sur des modules dédiés communicants.

Autre développement prometteur pour les moteurs de recherche : l'extension de la mémoire vive des ordinateurs. Si elle se poursuit au rythme actuel, les moteurs pourraient connaître une révolution. L'accès à ce type de mémoire étant bien plus rapide que l'accès au disque dur, exploité aujourd'hui pour nombre de fonctions, architecture et algorithmes actuels seraient alors remis en cause. Les index pourraient ainsi se trouver tout entiers dans la mémoire Ram des serveurs, posant de nouveaux défis comme la rapidité de chargement en mémoire de grandes quantités de données en cas de problème matériel.

L'avenir passe aussi par la multiplication des formats traités. Par l'intermédiaire d'un module de transcription automatique, les moteurs de recherche savent déjà indexer du son, comme par exemple un flux téléphonique d'un call center (Fig. 9), une interview radio ou une émission de télévision. Des analyses automatiques de photos et de vidéos sont capables de fournir des descriptifs par métadonnées pour une indexation structurée.

 

6. MARCHÉ : Les grands acteurs de l'informatique se lancent dans la course

 

Ces dernières années plusieurs acquisitions d'éditeurs de moteurs de recherche ont défrayé la chronique. La société norvégienne Fast a été rachetée par Microsoft, Autonomy par HP, Endeca par Oracle, Vivisimo par IBM, et Exalead par Dassault Systèmes. Les grands acteurs de l'informatique se dotent ainsi de ces technologies de recherche devenues indispensables pour enrichir les fonctionnalités de leurs propres solutions et étendre leur offre logicielle. D'autres acteurs plus agiles et innovants les remplacent, parmi lesquels on compte quelques éditeurs français comme Sinequa, aujourd'hui en expansion européenne, et PolySpot, dont l'offre est bâtie sur les logiciels open-source Lucene et Solr.

Reste que c'est au pied du mur que l'on peut juger des capacités d'un produit. La meilleure façon de choisir votre moteur de recherche est donc de comparer différentes solutions en invitant plusieurs éditeurs à faire un Poc (proof-of-concept) sur vos propres données et avec vos principaux utilisateurs. Rien de mieux que les conditions réelles pour tester un logiciel aussi important !

CE QU'IL FAUT RETENIR

- Un moteur de recherche donne accès aux informations de tout type et de tout volume de l'entreprise, dans le respect des paliers de sécurité. Il peut déduire de nouvelles informations à partir de ce qui est indexé et les transformer en nouvelles métadonnées. - Les outils de navigation et la sémantique facilitent la recherche d'information. - La pertinence est le facteur clé pour mesurer l'efficacité d'un moteur

vous lisez un article d'Industries & Technologies N°0952

Découvrir les articles de ce numéro Consultez les archives 2013 d'Industries & Technologies

Bienvenue !

Vous êtes désormais inscrits. Vous recevrez prochainement notre newsletter hebdomadaire Industrie & Technologies

Nous vous recommandons

La commande gestuelle s’intègre dans les technologies de réalité virtuelle et augmentée Qualcomm

La commande gestuelle s’intègre dans les technologies de réalité virtuelle et augmentée Qualcomm

La brique logicielle Clay AIR offrant la reconnaissance gestuelle à n’importe quelle caméra embarquée est[…]

 Un transformateur plus compact pour les smart grids

 Un transformateur plus compact pour les smart grids

Ce robot performe dans le jeu d’adresse Jenga

Ce robot performe dans le jeu d’adresse Jenga

Avec Pando, l'Isae-Supaero muscle sa puissance de calcul

Avec Pando, l'Isae-Supaero muscle sa puissance de calcul

Plus d'articles