• Aucun résultat trouvé

Des techniques gourmandes en ressources linguistiques

Chapitre 2 Analyser pour retrouver : le TAL au service de la RI

2.3 Des techniques gourmandes en ressources linguistiques

linguistiques

Certains traitements participant à l‘analyse linguistique sont gourmands en ressources linguistiques. L‘implication d‘autant de ressources est volontaire, car l‘architecte logiciel aurait pu choisir des traitements qui reposent sur moins de ressources. Les modèles choisis sont essentiellement à base de règles linguistiques, qui ont l‘avantage d‘être consultables, explicables et corrigibles en cas d‘erreur, ce qui n‘est pas toujours le cas des méthodes à base d‘apprentissage. Contrairement à ces derniers modèles, les règles sont plus flexibles car modifiables plus facilement.

Les traitements sont mis en place au fur et à mesure de l‘évolution du produit. Si la communication entre les différents traitements est assurée dès leur enchaînement logiciel, les ressources sont en général mises en place indépendamment les unes des autres. Elles ne sont donc pas forcément au même format, et peuvent contenir des informations qui se recouvrent. Ainsi, un point de recouvrement entre un lexique sémantique et morphosyntaxique peut être la combinaison <lemme-catégorie grammaticale> qu‘on trouve aussi bien dans l‘entrée sémantique <lemme-catégorie grammaticale-description sémantique> que sur les entrées des formes morphosyntaxiques <forme-lemme-catégorie grammaticale-traits grammaticaux>. Les ressources, indépendamment de leur structure physique, sont donc liées entre elles par les informations qu‘elles contiennent. Un autre exemple est donné par les grammaires, dont les règles exploitent la description morphosyntaxique des lexiques. Toute contrainte dans une

43 grammaire est ainsi profondément liée aux lexiques car elle utilise les catégories et les traits de cette description morphosyntaxique.

A cause de la complexité des traitements, mais surtout du grand nombre de langues, le nombre de ressources à gérer est très élevé. Les chiffres dans le tableau 2 donnent une idée du volume des ressources industrielles hors les corpus. Elles sont exclusivement sous format texte sauf pour les ressources de traitement, qui contiennent également quelques scripts et exécutables. Pour mieux faire sortir les chiffres, nous avons séparé les ressources servant à la validation des ressources linguistiques. Les ressources d’exploitation sont les ressources linguistiques sous forme binaire, alors que les ressources d’exploitation secondaires sont des fichiers de log et de contrôle générés pendant la compilation.

Taille en Mo Nb de fichiers Nb de dossiers Ressources linguistiques 1329,83 1830 285 Ressources de traitement 53,90 52 1 Ressources linguistiques de validation 1,84 162 154 Ressources d'exploitation 129,92 1141 42 Ressources d'exploitation secondaires 1097,36 500 29 Total 2610,11 3685 513

Tableau 2 : Volumétrie des ressources hors corpus (fév. 2009)

L‘arborescence dans laquelle nous avons centralisé les corpus regroupe 102 corpus, totalisant plus de 3 millions de fichiers soit 48 Go dans des formats HTML, XML ou sans balisage, dont 5833 fichiers (546 Mo) sont zippés. Ces chiffres n‘incluent pas les corpus achetés et stockés exclusivement sous forme de DVD.

Ces chiffres sont déjà parlants pour illustrer la masse de données à gérer qui concerne directement le produit. A ces données, il faudrait encore ajouter la documentation, les archives et les données concernant les projets de recherche pour avoir une image globale des données gérées par notre équipe à Sinequa. Néanmoins, afin de mieux interpréter ces chiffres et de comprendre pourquoi leurs grands volumes posent des problèmes de gestion, nous allons examiner ce que couvrent certaines ressources.

Nous les répétons ci-dessous dans le tableau 3 en les additionnant pour l‘ensemble des langues et en y ajoutant les lexiques de noms propres (principalement des prénoms, des noms géographiques) et spécialisés. Les noms d‘entreprise n‘ont pas été pas comptabilisés, car ils sont produits à partir d‘un fichier commun à toutes les langues. Ce tableau ne comptabilise pas non plus les informations sémantiques, ni les lexiques qui ne sont pas livrés en standard avec le produit de Sinequa.

Nombre Fichiers de lexique 134 Combinaisons lemme/cat 1 401 306 Mots-formes 10 427 876 Descriptions 16 809 812

Tableau 3 : Nombre d’informations gérées dans les lexiques morphosyntaxiques toutes langues confondues (fév. 2009)

44 Les mots-formes représentent une grande partie de la masse de données. A nombre de lemmes constants de 76 500, les mots-formes varient d‘environ 143 000 en anglais et 406 500 en français, à 705 000 en portugais, plus d‘un million en polonais et à 7 million en finnois. Nous présentons le détail cette projection dans l‘Annexe I (tableau 34, p. 284) pour 12 langues non asiatiques15.

Parmi les ressources linguistiques, nous comptons également les grammaires. Nous avons eu l‘occasion d‘en manipuler des différents : grammaire de désambiguïsation de la requête, modèle de langage pour la désambiguïsation du texte, grammaire de décomposition des mots composés dans les langues compositionnelles, grammaires d‘extraction d‘entités nommées, etc. Il en existe pour le produit, ainsi que pour les projets de recherche.

Leur existence et leur taille varient selon les caractéristiques des langues. Deux types existent sous un formalisme propre à Sinequa : les modèles de langage et les grammaires d‘extraction d‘entités. Les autres sont écrites dans des formalismes variés. Elles sont seulement quantifiables à travers le nombre d‘entrées dans les ensembles de tests de non régression, sachant qu‘il existe au moins un exemple par règle.

Les modèles de langage sont quantifiables en comptant le nombre de règles de désambiguïsation et le nombre d‘entrées dans le lexique associé. Il en existe au moins un modèle générique par langue traitée. Des modèles de langage spécifiques peuvent également être appris, comme pour la grammaire de désambiguïsation des conversations développée dans le cadre d‘Infom@gic ST2.31. Les moyennes pour les modèles de langage des douze langues15 sur lesquelles nous avons pu travailler se chiffrent à près de 100 000 entrées lexicales et un peu plus de 400 règles.

Les grammaires d‘extraction d‘entités sont codées sous forme d‘automates. Le nombre d‘automates par langue dépend du niveau de commercialisation de la langue en question. Ainsi, dans les cinq plus grandes langues européennes16 (FR, EN, DE, IT, ES), nous avons développé ou encadré l‘extraction des entités de groupes nominaux courts et longs, et d‘entités nommées de personnes, de noms géographiques et d‘entreprises. Pour chaque langue, cela implique 9 automates dont 2 pour les groupes nominaux et 7 pour les 3 entités nommées. Pour cinq langues, le DA, NL, PL, PT, RU et le SV, seuls les groupes nominaux courts et longs ont été développés. En japonais (JA), seules les entités nommées existent, et en russe (RU) nous avons commencé le développement de la détection des noms de personnes et des entreprises.

En français, en anglais et dans une moindre mesure dans les autres langues, une panoplie d‘autres entités existe mais ces entités ne sont pas déployées en standard dans le produit, comme la détection des plaques d‘immatriculation, des numéros de téléphone ou encore des adresses. Egalement non déployés, il existe quelques grammaires en français de mise en relation d‘entités.

Le nombre de grammaires gérées activement pour le produit de Sinequa est illustré dans le tableau suivant.

15

DA, DE, EL, EN, ES, FR, IT, NL, PL, PT, RU, SV

45 Grammaires Nb automates Nb langues Total Groupes nominaux courts et longs 2 11 22 Les trois entités nommées 7 7 49

Autres 57

Total 128

Tableau 4 : Nombre de grammaires d'extraction d'entités

Dans certains projets de recherche, nous avons utilisé la même technologie pour détecter des entités spécifiques. Même si ces automates ne sont pas utilisés ou retravaillés activement par l‘équipe linguistique, ils augmentent tout de même considérablement la masse de données présente.

Dans le cadre des projets de recherche, les automates ont souvent été générés à partir d‘autres informations. Ainsi, pour le projet TSSRC, 56 automates (avec 72 lexiques) détectant des structures causales ont été générés à partir d‘informations livrées par le LDI (Université de Paris 13). Dans le projet Blogoscopie, notre équipe a généré des automates à partir d‘un lexique d‘évaluations (contenant des opinions, des sentiments, etc.) qu‘elle avait créé. Dans le projet Infom@gic ST2.31, une cartouche Temis élaborée par EDF a été traduite sous forme de cinq automates. Dans l‘ensemble de ces cas, la gestion des sources est plus importante que celle des automates, qui peuvent être régénérés assez facilement. Egalement dans ces cas, la frontière entre lexique et grammaire est très réduite. Le lexique n‘exprime pas de règles en soi, mais fournit toutes les informations interprétables par des règles minimales.