• Aucun résultat trouvé

État de l’art

1.2 Systèmes de Dialogue Homme-Machine

1.2.2 Analyse syntaxico-sémantique

1.2.2.3 Analyse sémantique

La dernière partie de l’analyse linguistique consiste à rattacher du sens aux différents éléments constituant la requête, ce qui se fait ici encore en deux temps, en donnant du sens : 1. aux mots individuellement : à la manière d’un dictionnaire, qui permet de définir un mot de manière relationnelle, par rapport aux autres mots présents dans ce même diction-naire.

2. aux mots au sein de la requête : en s’intéressant aux rôles sémantiques joués par les différents constituants de la phrase.

Sens des mots À un mot4donné peuvent correspondre plusieurs sens. Ainsi, dans l’exemple de phrase vu dans la sous-section précédente, pour au moins deux d’entre eux (“bouton” et “bleu”), il existe plusieurs significations possibles, dont quelques-unes sont présentées dans l’encadré de la figure 1.12.

bouton

1. petite pièce généralement ronde permettant de retenir ensemble les deux parties d’un vêtement ;

2. corps rond ou allongé poussant sur les arbres ou arbustes d’où naissent les feuilles et branches ;

3. petite tumeur arrondie pouvant se former sur la peau ;

4. pièce de cuivre ou de fer, ronde ou ovale, permettant de tirer à soi une porte ou à l’ouvrir ;

5. commande manuelle d’un interrupteur ; . . .

bleu

1. de la couleur du ciel dégagé en plein jour (longueur d’onde de 470 nm) ;

2. peu cuit ;

3. vivement surpris de quelque chose ; 4. complètement ivre ;

. . .

Figure 1.12 Quelques sens possibles pour les lemmes “bouton” et “bleu”

(source : Wiktionnaire – voir aussi WordNet [Fellbaum, 1998] pour d’autres sens)

Il s’agit le plus souvent d’homonymie (ou plus exactement d’homographie) si les sens n’ont pas de rapport direct entre eux, comme dans les exemples de la figure1.12. Ce peut être également de la polysémie si les mots sont sémantiquement liés, voire de la métonymie si l’usage d’un sens sert à faire référence aux autres également (par exemple “Paris” pour faire référence au gouvernement français, lieu où il siège).

4Nous considérons ici qu’un “mot” correspond en fait à un lemme, puisqu’on considère que l’étape de

Définition d’une ontologie La première étape pour attacher le sens d’un mot à celui-ci est donc de disposer d’une ontologie répertoriant les différents sens possibles. À ce titre, une des références (en anglais) reste WordNet [Fellbaum,1998], qui dans sa version actuelle (3.0) recense plus de 110 000 noms, 10 000 verbes et 20 000 adjectifs avec en moyenne 1,23 sens par nom et 2,16 sens par verbe. En langue française, il existe une ontologie similaire à WordNet, développée dans le cadre du projet EuroWordNet, qui visait à établir des ontologies similaires à WordNet dans différents langages (et de les lier au WordNet d’origine de Princeton) [Vossen,

1998].

Toutefois, dans la mesure où ces ontologies sont généralistes en visant à couvrir tous les domaines de la langue, les systèmes de dialogue utilisent le plus souvent une ontologie propre au système, qui permet d’exclure d’office un certain nombre de sens extrêmement improbables dans le contexte d’utilisation du système quand celui-ci est dédié à une tâche précise (ce qui est généralement le cas, comme on le verra dans les exemples de la section1.2.4). Ce principe de “one sense per discourse” [Gale et al. , 1992] constitue donc une simplification (puisque cela revient à couper dans l’ontologie générale de la langue pour n’en conserver qu’une partie) pourrait être interprétée comme un recours à la pragmatique, c’est-à-dire à prendre en compte le contexte dans lequel est énoncé la phrase reçue en entrée.

Choix du sens approprié dans l’ontologie Une fois que l’on dispose d’une ontologie adaptée au domaine, la seconde étape consiste à attribuer le sens aux mots ou locutions de la phrase. Si cette tâche est triviale pour les mots ou locutions qui ne correspondent qu’à une unique entrée sémantique dans le dictionnaire, il n’en est pas de même lorsque plusieurs sens sont possibles (cf. figure1.12) : on doit alors avoir recours à une méthode de désambigüisation de sens ouWord Sense Disambiguation. Le principe général de laWord Sense Disambiguation

(WSD) consiste à considérer que lorsque plusieurs sens si (avec i ∈ N \ {0, 1}) sont possibles

pour un mot m dans une phrase, le sens correct s peut être déterminé en regardant le contexte dans lequel il occurre, c’est-à-dire les mots qui l’entourent [Ide & Véronis,1998].

Si l’on dispose d’un corpus de taille significative de phrases étiquetées (manuellement) avec l’ontologie de sens choisie, il est possible d’extraire pour chaque sens d’un mot m :

− les mots cooccurrents les plus fréquents au sein du corpus ;

− un N-grammeformé d’une fenêtre de (N-1)/2 mots pris avant et après m.

Il suffit alors d’appliquer un algorithme d’apprentissage supervisé, par un exemple un classifieur bayesien naïf. Dans la mesure où l’annotation manuelle entière du corpus (ou d’une part suffisamment significative de celui-ci pour que les méthodes d’apprentissage soient efficaces) est parfois difficile, d’autres méthodes consistent à utiliser comme sources complémentaires la

glose fournie par les dictionnaires [Lesk,1986]. Ainsi, chaque sens de WordNet est associé à

une glose du type de celles données en exemple dans la figure1.12.

Il est également possible d’augmenter le nombre de phrases de référence disponibles en étendant ce procédé aux sens identifiés comme proches dans l’ontologie, par exemple les sens liés par une

relation d’hyponymie (“bleu clair” relié à “bleu”), d’hyperonymie (“couleur” relié à “bleu”) ou de méronymie (“le bouton” relié à “la fenêtre de l’application”). Ces informations peuvent être directement disponibles au sein du dictionnaire utilisé (c’est le cas de WordNet), ou déterminées par une analyse au sein du corpus, en partant du principe que les mots mj qui cooccurrent souvent avec les mêmes mots que ceux trouvés dans le voisinage de m lorsqu’il a le sens si ont très certainement un sens sj,k lié à celui de si.

Sens des phrases La seconde manière de donner du sens à la phrase est de considérer l’organisation des constituants entre eux, non pas en termes de rôles grammaticaux comme lors de l’analyse syntaxique, mais en termes de rôles sémantiques. En effet, d’après les travaux de Fillmore [1982] sur les Grammaires de Construction, le sens d’une phrase est plus que la somme des sens des éléments qui la constitue : les constructions grammaticales complexes sont donc également des formes ayant un sens, au même titre que les mots.

Encore une fois, il faut donc disposer de deux éléments : une ressource définissant la liste des structures sémantiques définissant les relations possibles entre les différents constituants d’une phrase, et un mécanisme permettant d’établir la liaison entre les éléments individuels d’une phrase donnée et les structures sémantiques les englobant.

Structures sémantiques Pour être traitable par le système, la représentation du sens de la phrase doit être structurée. Elle peut se faire selon différents formalismes, et parmi les plus courants, on peut mentionner :

− les diagrammes conceptuels [Schank & Abelson,1977] : essentiellement étudiés dans les années 1970 et 1980 ;

− la logique du premier ordre : qui est en formalisme éprouvé et permet donc de raisonner symboliquement sur les phrases ;

− les “cadres” (ouframes, selon le terme consacré parMinsky [1974] en intelligence arti-ficielle) : dont le principe se base sur la représentation de stéréotypes de situations où certains éléments sont typiquement attendus pour la décrire. Ils permettent de repré-senter toute expression logique pouvant être exprimée dans le cadre de la logique du premier ordre.

− les réseaux sémantiques : qui sont équivalents, en termes de capacité de représenta-tion, aux frames, mais permettent une meilleure visualisation des dépendances entre les constituants.

Un exemple de représentation de la même phrase selon ces trois derniers formalismes est donné sur la figure1.13.

Lesframespeuvent être définies a priori de manière totalement arbitraire, puisque c’est la

réaction qu’elles déclenchent qui compte vraiment. Toutefois, pour formaliser leur définition, on fait généralement appel à la logique de descriptionDonini et al. [1996];Baader et al. [2007], qui permet de représenter la base de connaissances du système, et distingue en particulier :

∃a, e Cliquer(a) ∧ cliqueur(a, locuteur) ∧ clique(a, e) ∧ Controle(e) ∧ type(e, bouton) ∧ couleur(e, bleu)

Cliquer cliqueur cliqué locuteur Controle type couleur bleu bouton Cliquer Controle

cliqueur : locuteur type : bouton

cliqué : entité couleur : bleu

Figure 1.13 La phrase “Je clique le bouton bleu” selon trois représentations

sémantiques différentes : logique du premier ordre, réseaux sémantiques, frames.

− les catégories et concepts du domaine, formant une ontologie appelée la terminologie du domaine, et représentés par une T-Box.

− les individus et leurs attributs propres, qui sont représentés dans une A-Box.

Ainsi, pour donner du sens à l’exemple de phrase de la figure 1.13, il faut supposer que l’on dispose d’un certain nombre de connaissances du domaine :

− Cliquer est une relation qui lie deux éléments : un cliqueur (sujet) et un cliqué (objet) − Un Contrôle est un élément qui a deux paramètres : un type et une couleur

− Un “locuteur” peut être un “cliqueur” − Un Contrôle peut être “cliqué”

− Un “bouton” est un “type” − Le “bleu” est une couleur

L’utilisation la plus répandue à ce jour d’une utilisation à large échelle de la logique de description est celle réalisée dans le cadre du Web sémantique avec le langageWeb Ontology

Language (OWL)[McGuinness & van Harmelen,2003].

L’application de la logique de description pour la représentation de la sémantique a donné lieu à différentes initiatives, les deux plus notables étant la Proposition Bank (ou Prop-Bank) [Kingsbury & Palmer,2002] et FrameNet [Baker et al. ,1998].

PropBank est le plus grand corpus dont les phrases ont vu leurs constituants annotés en fonction de leurs rôles sémantiques, en s’appuyant uniquement sur la structure des verbes

employés. Ce corpus se base sur les phrases figurant dans le corpus TreeBank Marcus et al.

[1994], qui était à l’origine annoté de manière syntaxique uniquement. Dans un tel contexte, notre phrase d’exemple pourrait y être annotée comme suit :

[Arg0 Je] clique [Arg1 le bouton bleu]

FrameNet, pour sa part, se concentre davantage sur la définition de frames décrivant des situations, et qui ne sont donc pas uniquement centrées sur le verbe. Un exemple est donné dans la figure1.14pour modéliser le fait de quitter un lieu.

Un Self_mover quitte un emplacement d’Origine initial. Le Chemin que le Self_mover suit, et le But_poursuivi peuvent aussi être mentionnés. Bien souvent, lorsque cette frame est évoquée, cela implique que le Self_mover est mécontent de l’emplacement d’Origine.

Figure 1.14 Glose de la frame de FrameNet

Comme on le voit dans cet exemple, FrameNet s’attache également à définir des implica-tions logiques possibles qui pourraient autoriser un système de dialogue les exploitant d’avoir des réactions de haut niveau (ici, en déduire que l’action qui amène à quitter l’application suppose un mécontentement de l’utilisateur lorsqu’il énonce cette requête).

Bien que potentiellement adaptables, PropBank et FrameNet sont en langue anglaise. En français, les trois ressources les plus proches librement disponibles sont, le LExique des

Formes Fléchies du Français (LEFFF)[Clement et al. ,2004], les tables du LADL fondées sur

les travaux deGross [1975] et Volem [Fernandez et al. ,2002]. Aucune de ces ressources n’est toutefois pleinement satisfaisante dans notre contexte : le LEFFF, pose potentiellement des problèmes d’exactitude5. Les tables du LADL qui regroupent des verbes ayant des construc-tions similaires sont clairement plus orientées syntaxe que sémantique (même si les deux ne sont pas décorellés), comme le montre l’extrait donné sur la figure 1.15. Enfin, Volem a mal-heureusement une couverture relativement faible (seulement 1 700 verbes pour la langue prise dans son ensemble) et n’a pas de description accessible des schémas syntaxiques utilisés (cf. figure1.16).

Figure 1.15 Extrait des tables du LADL, issu de [Gardent et al.,2006]

5“accuracy” dans l’opposition “precision vs accuracy” : degré de conformité entre la valeur mesurée et sa

valeur réelle – ici, la validité d’une frame produite semi-automatiquement par rapport à celle qui pourrait idéalement décrire la sémantique de la requête.

Figure 1.16 Représentation du verbe “acheter” dans Volem, issu de [Bossard,

2007]

Étiquetage de rôles sémantiques Cette dernière étape de l’analyse sémantique consiste à avoir recours à l’ontologie du domaine et/ou aux frames pour les appliquer à la phrase en cours d’analyse : c’est donc l’équivalent de ce qu’est la WSD pour les mots. Ici également, les algorithmes d’apprentissage supervisé permettent de choisir la frame la plus susceptible de correspondre à la phrase en tentant d’appliquer chacune d’elles. Pour trouver les entités correspondantes aux arguments des frames, on peut exploiter toutes les informa-tions fournies par les précédentes étapes de l’analyse :lemme,naturegrammaticale de l’entité, genre, nombre, sens, etc.