Cours sur le traitement automatique des langues La

  • Slides: 55
Download presentation
Cours sur le traitement automatique des langues La sémantique (III) Violaine Prince Université de

Cours sur le traitement automatique des langues La sémantique (III) Violaine Prince Université de Montpellier 2 LIRMM-CNRS

Éléments n Origines du modèle vectoriel u Le modèle de Salton u Applications et

Éléments n Origines du modèle vectoriel u Le modèle de Salton u Applications et limites en RI n Le modèle à famille génératrice: u. L ’hypothèse du noyau u Les vecteurs sémantiques u Les vecteurs conceptuels (introduction brève) 2

Introduction n Les modèles numériques u La limite des représentations logiques: F Vérification u

Introduction n Les modèles numériques u La limite des représentations logiques: F Vérification u Modèles de cohérence versus calcul du sens calculatoires F Logiques multi-valuées F Réseaux de neurones F Logique floue F Modèle vectoriel 3

Présentation brève n Logique multi-valuée: u Quelques valeurs (nombre fini et petit) u Tables

Présentation brève n Logique multi-valuée: u Quelques valeurs (nombre fini et petit) u Tables de définition des opérateurs n Réseaux de neurones formels u Plusieurs cellules (nombre élevé) u Fonction de couplage n Logique floue u Espace de valeurs continu u Fonction de « fitness » 4

Modèle vectoriel n Tout mot se représente par un vecteur u Composantes : éléments

Modèle vectoriel n Tout mot se représente par un vecteur u Composantes : éléments sur lesquels le mot est projeté => différemment définis u Valeurs : « poids » de la composante dans la constitution du sens du mot M V A 1 A 2 …. …. . An Où les ai sont les valeurs De la projection de V sur des composantes 5

Propriétés du modèle n Règles de composition interne u Somme de vecteurs : permet

Propriétés du modèle n Règles de composition interne u Somme de vecteurs : permet de représenter l ’union des « sens » des mots correspondants F => On peut représenter le vecteur d ’un ensemble de mots, i. e, on peut calculer le sens d ’un syntagme, d ’une phrase, d ’un texte. u Produit scalaire de vecteurs : permet de représenter 2 choses F l ’intersection des « sens » des mots correspondants 6

Propriétés (suite) n Règles de composition interne u Produit scalaire de vecteurs : F

Propriétés (suite) n Règles de composition interne u Produit scalaire de vecteurs : F Co-occurrence de termes (M 1, M 2) F => on peut calculer M 1 et M 2 (au sens logique) u Différence de vecteurs (soustraction) F La divergence sémantique entre des éléments F Peut ne pas avoir de correspondant. n Vecteur nul : 0 u Neutre pour l ’addition 7

Propriétés (suite) n Vecteur nul: u Absorbant pour le produit scalaire u Ne correspond

Propriétés (suite) n Vecteur nul: u Absorbant pour le produit scalaire u Ne correspond à rien linguistiquement. n Vecteurs négatifs: F Si V est le vecteur de M, -V n ’est PAS le vecteur de l ’antonyme de M F Les vecteurs négatifs n ’étant pas interprétables, on considère toujours la valeur absolue. n Règle de composition externe: V où est un réel: « renforcement » du poids de V. u Produit 8

Fonctions et distances n Barycentre et vecteurs moyens pondérés V 1 V 2 .

Fonctions et distances n Barycentre et vecteurs moyens pondérés V 1 V 2 . . . Vn est le vecteur barycentre des vecteurs V 1, V 2, …, Vn. u V= 1 V 1 2 V 2 . . . n. Vn où les i sont des scalaires est un vecteur moyen pondéré, chaque vecteur Vi pesant i. u => important pour calculer, par exemple, le sens d ’un groupe nominal prépositionnel : u V= F « voile de bateau » : « voile » est le gouverneur F « bateau à voile » : « bateau » est le gouverneur 9

Fonctions et distances n Distance entre deux vecteurs u Il existe plusieurs sortes de

Fonctions et distances n Distance entre deux vecteurs u Il existe plusieurs sortes de distance u Distance angulaire V 1 Angle V 2 Si 0 alors V 1 V 2, les « sens » des éléments sont très proches 10

Angles de vecteurs Vecteurs orthogonaux: « sens » totalement divergents V 1 V 2

Angles de vecteurs Vecteurs orthogonaux: « sens » totalement divergents V 1 V 2 V 1 V 2 Les vecteurs étant toujours Interprétés dans le quart Positif de l ’espace, c ’est - (V 1, V 2) qui est considéré. On prend toujours l ’angle modulo (0, /2) 11

Norme et « similarité » n Vecteurs barycentres ou vecteurs moyens pondérés normés: u

Norme et « similarité » n Vecteurs barycentres ou vecteurs moyens pondérés normés: u Valeurs des projections sur les composantes comprises entre 0 et 1. u Somme normée : V=V 1 V 2 / ai=(ai 1+ai 2)/ V n Similarité (Salton): u Sim(A, B)=cos(A, B) = A. B/ A x B 12

Origine du modèle vectoriel Modèle de Salton (1968) n Informatique documentaire u Comment classer

Origine du modèle vectoriel Modèle de Salton (1968) n Informatique documentaire u Comment classer des documents (indexation) u Comment retrouver des documents (recherche d ’information) u En fonction des mots qu ’ils contiennent Fréquence d ’occurrence 13

Importance des mots n Hypothèse de Salton : u La fréquence d ’apparition d

Importance des mots n Hypothèse de Salton : u La fréquence d ’apparition d ’un terme en langage naturel est liée à son pouvoir de représentation du contenu de ce texte. n Indexation automatique : u Analyse lexicale des documents et extraction des termes significatifs de leur contenu (1) u Pondération des termes pour déterminer leur degré de représentativité (2). 14

Extraction des termes représentatifs n Méthode u Lemmatiser le texte u Récupérer les lemmes

Extraction des termes représentatifs n Méthode u Lemmatiser le texte u Récupérer les lemmes -> lexies de dictionnaires u Eliminer les lexies dont la catégorie est fonctionnelle : prépositions, conjonction, déterminants, pronoms, etc. u Sur le reste: essentiellement les noms communs, les adjectifs, les verbes et les adverbes. 15

Extraction des termes représentatifs u Séparer • Catégories « nobles » : noms et

Extraction des termes représentatifs u Séparer • Catégories « nobles » : noms et verbes • Catégories auxiliaires : adjectifs et adverbes => retriés (épithète, attributs, adverbes de temps et de lieu). u Enlever les mots ordinaires et athématiques (mots d ’usage courant). u Par complémentarité, les termes significatifs sont conservés et représentent le document: BASE DU DOCUMENT 16

Pondération des termes n n Dans la base d ’un document Dk, on calcule

Pondération des termes n n Dans la base d ’un document Dk, on calcule la fréquence d ’occurrence tfki d ’un terme ti. La pondération fournie par Salton (1990)pour désigner l ’importance discriminatoire et sémantique de ce terme est la suivante : (log(tfki) + 1)/ ( k=1 N(log(tfki) +1)) u N est le nombre total de documents considérés. u Quand il s ’agit d ’un document unique le poids est de 1. u Wki = 17

Le modèle vectoriel de Salton n n Une base d ’indexation B extraite comme

Le modèle vectoriel de Salton n n Une base d ’indexation B extraite comme indiqué précédemment Une requête Q: Q est un ensemble de termes tqi (dans laquelle on a fait le même traitement que sur B) Salton pose l ’hypothèse que: u On peut représenter chacun des termes de B par un vecteur u B forme la base d ’un espace vectoriel. 18

Le modèle vectoriel de Salton n B, base de termes = {t 1 B,

Le modèle vectoriel de Salton n B, base de termes = {t 1 B, t 2 B, …, tn. B} A chaque ti. B on associe un vecteur Vi. B de dimension n, tel que Vi. B = (0 0…… 1……. . 0) La ième composante du vecteur vaut 1, et 0 sinon. {V 1 B, V 2 B, …, Vn. B} engendre un espace vectoriel B. Le système {V 1 B, V 2 B, …, Vn. B} est libre, c ’est donc une base. 19

Le modèle vectoriel de Salton n n Soit Dj un document sur lequel on

Le modèle vectoriel de Salton n n Soit Dj un document sur lequel on veut faire une requête Q. Dans l ’espace B, Dj est représenté par un vecteur Dj = (dj 1, dj 2, …, djn) où chacun des éléments correspond au poids du terme ti. B de la base B (et donc le poids de la composante vectorielle Vi. B dans B). Ce poids est calculé selon la formule précédente (en fonction de la fréquence d ’occurrence du terme ti. B dans Dj). 20

Le modèle vectoriel de Salton n De la même manière on considère que Q

Le modèle vectoriel de Salton n De la même manière on considère que Q est représenté dans l ’espace B par un vecteur : u Q= (q 1, q 2, …qn) où qi est le poids du terme ti. B (de la base) dans la requête Q. n L ’appariement de la requête et du document se fait par le calcul de la similarité entre les vecteurs Q et Dj qui est donnée par la formule du cosinus (produit scalaire des vecteurs normalisés). 21

Particularités du modèle vectoriel de Salton n Une base par « collection de documents

Particularités du modèle vectoriel de Salton n Une base par « collection de documents » u La dimension peut varier u Les composantes peuvent varier u Base vraie n Représentation d ’un document par un vecteur unique u Les poids des termes varient en fonction de l ’état de la collection de documents => à recalculer entièrement pour tout nouveau document 22

Particularités du modèle vectoriel de Salton n Les termes qui ne sont pas dans

Particularités du modèle vectoriel de Salton n Les termes qui ne sont pas dans la base ne sont pas représentés Les mesures permettent de constater la pertinence d ’un document par rapport à une requête et donc il s ’agit d ’une mesure de pertinence pas d ’une mesure de proximité thématique. Le modèle de Salton a une base vectorielle booléenne sur le critère : présent/absent. 23

Modèle de Salton en langage naturel n Représentations de la sémantique du langage naturel

Modèle de Salton en langage naturel n Représentations de la sémantique du langage naturel : u La non représentation de tous les termes de la langue est un problème. => Une base avec les 70000 mots d ’un dictionnaire ? F Sinon que choisit-on comme base ? F u Le nombre de productions en langue (discours) est infini : N ->. Comment calcule t-on les poids ? De plus, il est inaccessible. 24

Modèle de Salton en langage naturel n Représentations de la sémantique du langage naturel

Modèle de Salton en langage naturel n Représentations de la sémantique du langage naturel : u La pertinence par co-occurrence de termes n ’est pas le problème de la sémantique: proximité thématique entre ti. B et t(i+1)B? . u Une requête est appariée avec un document contenant les mêmes termes qu ’elle. Comment l ’apparier avec un document comprenant des termes synonymes ? => fonctions lexicales. 25

Modèle de Salton en langage naturel n La syntaxe et la sémantique en langage

Modèle de Salton en langage naturel n La syntaxe et la sémantique en langage naturel ne sont pas indépendantes. u La voile du bateau et le bateau à voile donnent la même requête Q={voile, bateau}= {bateau, voile} u Les fonctions syntaxiques analytiques donnent des informations importantes sur le rôle sémantique (casuel) des portions de textes. F Un sujet et un complément de manière n ’ont pas le même poids dans un texte. 26

En conclusion sur le modèle de Salton n Hors recherche d ’information Le modèle

En conclusion sur le modèle de Salton n Hors recherche d ’information Le modèle de Salton est impropre à la représentation de la sémantique du langage naturel, de manière générale. Mais le modèle algébrique vectoriel peut être conservé moyennant de pallier les défauts observés. 27

Le modèle à famille génératrice n Démarche: u Il faut trouver une famille de

Le modèle à famille génératrice n Démarche: u Il faut trouver une famille de termes en nombre relativement faible telle que : u Elle puisse servir de base d ’index à tous les autres termes de la langue u On représente ces termes sous forme de vecteurs (booléens) u La famille de ces vecteurs est génératrice et engendre un espace vectoriel L pour la langue. 28

Le modèle à famille génératrice n Hypothèse du noyau: u Certains termes sont à

Le modèle à famille génératrice n Hypothèse du noyau: u Certains termes sont à la fois termes, concepts et concepts générateurs. Ils ont une capacité élevée à engendrer les autres. n n Linguistique : les universaux Sciences sociales : hypothèse anthropologique sur la nature des universaux. 29

Le noyau lexicologique: l ’initiative Roget n n n En lexicologie: au XIXème siècle,

Le noyau lexicologique: l ’initiative Roget n n n En lexicologie: au XIXème siècle, une initiative a été prise à Oxford de proposer un thésaurus de la langue anglaise. (P. Roget) On propose une hiérarchie de concepts. On indexe tous les mots par rapport à cette hiérarchie. u Exemple : le terme « vie » s ’indexe sur le concept « existence » , sur le concept « durée » , sur le concept « animé » et est aussi un concept. 30

L ’initiative Roget n Autres exemples: u Le terme « papillon » n ’est

L ’initiative Roget n Autres exemples: u Le terme « papillon » n ’est pas un concept de la hiérarchie. Il est indexé sur « animal » , « insecte » , « beauté » , « légèreté » . n Indexer un terme par rapport à un concept signifie considérer que le concept participe au sens de ce terme. . 31

L ’initiative Roget n n Les concepts étant eux aussi des termes ils s

L ’initiative Roget n n Les concepts étant eux aussi des termes ils s ’indexent les uns par rapport aux autres. Dans le thésaurus Roget, la hiérarchie présentée comprend environ 1000 concepts, hiérarchisés en 6 niveaux, du plus général au plus particulier. . 32

Le thésaurus Larousse n n 100 ans plus tard, les lexicologues produisant le dictionnaire

Le thésaurus Larousse n n 100 ans plus tard, les lexicologues produisant le dictionnaire Larousse ont cherché à dupliquer l ’initiative Roget pour le Français. Ils ont produit une hiérarchie à 873 concepts en 4 niveaux, et ont indexé tous les mots — hors emprunts, noms d ’unités ou noms spécifiques— présents dans le. dictionnaire Larousse. 33

Les vecteurs sémantiques n n n En 1990 Chauché propose une utilisation du thésaurus

Les vecteurs sémantiques n n n En 1990 Chauché propose une utilisation du thésaurus Larousse dans un modèle vectoriel de représentation de la sémantique. Les vecteurs de la hiérarchie (les 873) sont la famille génératrice G d ’un espace vectoriel F pour le Français. Chaque. vecteur Ci de G représente le concept Ci de la hiérarchie et s ’écrit de la manière suivante: 34

Les vecteurs sémantiques n n Ci = (c 1 i, c 2 i, …,

Les vecteurs sémantiques n n Ci = (c 1 i, c 2 i, …, c 873 i) où cji = 1 si le concept Ci s ’indexe sur le concept Cj de la hiérarchie, et il vaut 0 sinon. En particulier Cii = 1. Exemple : on mettra des 1 pour le concept de « vie » sur les composantes suivantes : le vecteur de « existence » , le vecteur de « durée. » , le vecteur de « animé » et le vecteur de « vie » . 35

Les vecteurs sémantiques n n On norme ensuite Ci pour que cij = 1

Les vecteurs sémantiques n n On norme ensuite Ci pour que cij = 1 Remarque : la famille G n ’est pas libre puisque les concepts s ’indexent les uns par rapport aux autres. G n ’est pas une base à proprement parler. S ’il existe une famille libre Fl telle que Fl soit génératrice de F alors: u Fl serait une vraie base de F. u Dimension de F <873. n On ne sait pas trouver Fl !!! 36

Les vecteurs sémantiques n n On fait l ’hypothèse que L est un espace

Les vecteurs sémantiques n n On fait l ’hypothèse que L est un espace vectoriel dans lequel on peut définir une distance euclidienne. Les lois de composition interne et externe sont définies (voir début). Tout terme t de la langue se projette sur G et se voit calculer son vecteur T= (t 1, t 2, …, t 873) avec ti= 1 si Ci indexe t, . et ti= 0 sinon. Puis ce vecteur est normé. 37

Les vecteurs sémantiques n Grâce aux lois de composition interne et externe, on peut

Les vecteurs sémantiques n Grâce aux lois de composition interne et externe, on peut calculer les vecteurs de segments (comprenant plusieurs termes). u En tenant compte des marqueurs syntaxiques u Et des rôles syntaxiques et sémantiques dans la phrase. . 38

Exemple • Sur un groupe nominal prépositionnel N 1 [prep] N 2. u Le

Exemple • Sur un groupe nominal prépositionnel N 1 [prep] N 2. u Le moulin à vent. u Analyse syntaxique : GPREP DET Le SN PREP N à moulin SN N vent 39

Calcul d ’un vecteur de groupe n La structure syntaxique donne: u Un rôle

Calcul d ’un vecteur de groupe n La structure syntaxique donne: u Un rôle de gouverneur pour « moulin » => poids de moulin = 2. u La structure (det, N, « à » , N) indique un rôle de complément circonstanciel pour le deuxième élément. => poids de « vent » = 0, 5. u On calcule le vecteur du groupe par: u V(groupe(moulin à vent)) = 2 V(moulin) 0, 5 V (vent) puis V(groupe (moulin à vent)) est normé. 40

Calcul d ’un vecteur de phrase n n On commence par calculer le vecteur

Calcul d ’un vecteur de phrase n n On commence par calculer le vecteur de chaque groupe, puis on calcule le vecteur moyen pondéré de la phrase en fonction de l ’importance des rôles syntaxiques. Exemple : Je mange une pomme verte. 41

V(PH) = 8 V(g) 10 V(b) 6 V( ) PH GN GV SV SN

V(PH) = 8 V(g) 10 V(b) 6 V( ) PH GN GV SV SN PRP g V(g) = V(soi) Je GA b manger V(b)= V(manger) A GN V SN vert DET N un pomme V( ) = 2 V(pomme) 0, 5 V(vert) 42

Segments d ’ordre supérieur n Le vecteur d ’un ensemble de phrases (paragraphe, texte)

Segments d ’ordre supérieur n Le vecteur d ’un ensemble de phrases (paragraphe, texte) est le barycentre des vecteurs de phrases. u Si T= {PH 1, PH 2, …, PHn} u Alors T = V(PH 1) V(PH 2) … V(PHn) n De la même manière, si D est un ensemble de textes : {T 1, T 2, …, Tm} alors D = T 1 T 2 … Tm. u D= 43

Effets de macrostructuration n n On peut, dans un texte, ou dans un ensemble

Effets de macrostructuration n n On peut, dans un texte, ou dans un ensemble de textes, tenir compte d ’un effet « d ’accroche » sémantique (ou non) d ’un sous-ensemble par rapport à un autre en substituant au vecteur barycentre un vecteur moyen pondéré. Exemple: l ’introduction d ’un article est un soustexte pour lequel on peut estimer que son vecteur « pèse plus » que celui d ’un sous-texte quelconque du corps de l ’article. => catégorisation d ’un genre donné de documents. 44

Les vecteurs conceptuels n n n Variante du cas précédent. Proposé par M. Lafourcade.

Les vecteurs conceptuels n n n Variante du cas précédent. Proposé par M. Lafourcade. Divergence : au lieu d ’avoir un vecteur booléen issu seulement du thésaurus, on modifie tout vecteur de terme t (et de concept) par le vecteur de texte T où T est l ’ensemble des définitions de t. 45

Les vecteurs conceptuels n n n Soit t(init) le vecteur d ’un terme t

Les vecteurs conceptuels n n n Soit t(init) le vecteur d ’un terme t défini précédemment. Dans des dictionnaires en ligne, t a un certain nombre de définitions. Ces définitions forment un texte. Soit T le texte des définitions de t. Le vecteur T est calculé à partir de l ’analyse syntaxique de T et comme un vecteur moyen pondéré, où les pondérations tiennent compte des rôles dans une définition. 46

Les vecteurs conceptuels n Exemple : Transmuter : (def 1) action de transformer un

Les vecteurs conceptuels n Exemple : Transmuter : (def 1) action de transformer un matériau en un autre. n Transformer est plus important que « action » alors que la forme « N 1 prep V(inf) » a tendance à favoriser N 1 par rapport à tout autre élément après la préposition. 47

Les vecteurs conceptuels n n t : = t +T (fonction « générique »

Les vecteurs conceptuels n n t : = t +T (fonction « générique » ). A la première occurrence, t vaut t(init), vecteur initial. Puis à chaque fois que les textes de définition sont modifiés, le vecteur t se modifie. Par ailleurs, la hiérarchie du thésaurus est ellemême modulée: au lieu d ’avoir les vecteurs Ci définis comme précédemment, Ci = Ci (init) + jaj. Cj où les ai représentent des poids issus de la distance ultramétrique dans l ’arborescence. 48

Divergences n Remarques : u Le vecteur de terme et le vecteur de concept,

Divergences n Remarques : u Le vecteur de terme et le vecteur de concept, pour un même mot qui se décline dans les deux, ne sont pas confondus dans le modèle des vecteurs conceptuels. F Le vecteur du terme t= « vie » est distingué du vecteur du concept (c 4: vie) u Alors qu ’ils le sont dans le modèle des vecteurs sémantiques. 49

Divergences n n Les vecteurs de terme sont en évolution permanente dans le MVC

Divergences n n Les vecteurs de terme sont en évolution permanente dans le MVC et sont statique dans le MVS. De nouveaux termes peuvent être représentés par calcul de définition dans le MVC, alors que ce n ’est pas le cas dans le MVS. 50

Divergences n En revanche, les vecteurs de MVS, bien que plus pauvres, sont beaucoup

Divergences n En revanche, les vecteurs de MVS, bien que plus pauvres, sont beaucoup plus discriminants u Les vecteurs calculés par « apprentissage » sur des sources textes sont très denses. n Ils sont aussi moins bruités u La qualité des sources d ’apprentissage peut entraîner une surabondance d ’information. 51

La qualification par l ’application n En réalité, tout dépend de ce à quoi

La qualification par l ’application n En réalité, tout dépend de ce à quoi on veut appliquer ces modèles u En catégorisation pure, MVS est probablement plus sûr (précision) mais peu prolixe(silence, faible rappel) u En découverte thématique, explication MVC est plus riche (bruit mais très bon rappel). 52

les avantages des modèles vectoriels de la sémantique n L ’espace L est beaucoup

les avantages des modèles vectoriels de la sémantique n L ’espace L est beaucoup plus grand que l ’ensemble des mots connus, ce qui fait que l ’on peut y trouver des vecteurs de segments de toutes tailles. u La sémantique y est cohérente: chaque fois qu ’un texte est analysable, alors on peut lui trouver un sens. u On peut inventer de nouveaux mots, il suffit d ’être capable de les indexer ou d ’en donner des définitions. 53

En conclusion n Les modèles vectoriels expriment l ’aspect relationnel de la sémantique: chaque

En conclusion n Les modèles vectoriels expriment l ’aspect relationnel de la sémantique: chaque mot est défini par d ’autres et se relie à d ’autres. C ’est le contraire d ’un aspect « essentiel » : ce n ’est pas ce qu ’est un « mot en soi » (définition ontologique). Le vecteur ne capture que la relation, pas l ’essence(monde), et le calcul du sens se fait par des fonctions sur des relations évaluées. 54

En conclusion n Les problèmes que l ’on se pose sont: u. L ’espace

En conclusion n Les problèmes que l ’on se pose sont: u. L ’espace L apparaît comme étant de densité très hétérogène. Pourquoi ? u Que se passe-t-il sur les très petites distances entre les vecteurs ? Comment discriminer plus finement ? => la base de 873 ne représente-telle pas des fois un maillage « trop faible » ? u La hiérarchie du thésaurus Larousse est donnée et c ’est sur elle que s ’appuie le reste. Peut-on la retrouver comme un résultat de calcul ? Sinon, peut-on calculer une base ? Et comment? 55