Upload
nguyenque
View
239
Download
4
Embed Size (px)
Citation preview
Cours sur le traitement automatique des languesLa sémantique (III)
Violaine PrinceUniversité de Montpellier 2LIRMM-CNRS
2
Éléments Origines du modèle vectoriel
Le modèle de Salton Applications et limites en RI
Le modèle à famille génératrice: L ’hypothèse du noyau Les vecteurs sémantiques Les vecteurs conceptuels
(introduction brève)
3
Introduction Les modèles numériques
La limite des représentations logiques: Vérification de cohérence versus calcul du sens
Modèles calculatoires Logiques multi-valuées Réseaux de neurones Logique floue Modèle vectoriel
4
Présentation brève Logique multi-valuée:
Quelques valeurs (nombre fini et petit) Tables de définition des opérateurs
Réseaux de neurones formels Plusieurs cellules (nombre élevé) Fonction de couplage
Logique floue Espace de valeurs continu Fonction de « fitness »
5
Modèle vectoriel Tout mot se représente par un vecteur
Composantes : éléments sur lesquels le mot est projeté => différemment définis
Valeurs : « poids » de la composante dans la constitution du sens du mot
M V
A1A2….
…..An
Où les ai sont les valeursDe la projection de V sur descomposantes
6
Propriétés du modèle Règles de composition interne
Somme de vecteurs : permet de représenter l ’union des « sens » des mots correspondants
=> 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.
Produit scalaire de vecteurs : permet de représenter 2 choses
l ’intersection des « sens » des mots correspondants
7
Propriétés (suite) Règles de composition interne
Produit scalaire de vecteurs : Co-occurrence de termes (M1, M2) => on peut calculer M1 et M2 (au sens logique)
Différence de vecteurs (soustraction) La divergence sémantique entre des éléments Peut ne pas avoir de correspondant.
Vecteur nul : 0 Neutre pour l ’addition
8
Propriétés (suite) Vecteur nul:
Absorbant pour le produit scalaire Ne correspond à rien linguistiquement.
Vecteurs négatifs: Si V est le vecteur de M, -V n ’est PAS le vecteur de
l ’antonyme de M Les vecteurs négatifs n ’étant pas interprétables, on considère
toujours la valeur absolue. Règle de composition externe:
Produit V où est un réel: « renforcement » du poids de V.
9
Fonctions et distances Barycentre et vecteurs moyens pondérés
V= V1 V2 ... Vn est le vecteur barycentre des vecteurs V1, V2,…, Vn.
V=1V1 2V2 ... nVn où les i sont des scalaires est un vecteur moyen pondéré, chaque vecteur Vi pesant i.
=> important pour calculer, par exemple, le sens d ’un groupe nominal prépositionnel :
« voile de bateau » : « voile » est le gouverneur « bateau à voile » : « bateau » est le gouverneur
10
Fonctions et distances Distance entre deux vecteurs
Il existe plusieurs sortes de distance Distance angulaire
V1
V2Angle
Si 0 alors V1 V2, les « sens » des éléments sont très proches
11
Angles de vecteursV1
V2
Vecteurs orthogonaux:« sens » totalement divergents
V1V2 Les vecteurs étant toujours
Interprétés dans le quartPositif de l ’espace, c ’est
- (V1,V2) qui est considéré.
On prend toujours l ’angle modulo (0, /2)
12
Norme et « similarité » Vecteurs barycentres ou vecteurs moyens
pondérés normés: Valeurs des projections sur les composantes
comprises entre 0 et 1. Somme normée : V=V1V2 / ai=(ai1+ai2)/ V
Similarité (Salton): Sim(A,B)=cos(A,B) = A . B/ A x B
13
Origine du modèle vectoriel
Modèle de Salton (1968) Informatique documentaire
Comment classer des documents (indexation) Comment retrouver des documents
(recherche d ’information) En fonction des mots qu ’ils contiennent
Fréquence d ’occurrence
14
Importance des mots Hypothèse de Salton :
La fréquence d ’apparition d ’un terme en langage naturel est liée à son pouvoir de représentation du contenu de ce texte.
Indexation automatique : Analyse lexicale des documents et extraction
des termes significatifs de leur contenu (1) Pondération des termes pour déterminer leur
degré de représentativité (2).
15
Extraction des termes représentatifs
Méthode Lemmatiser le texte Récupérer les lemmes -> lexies de dictionnaires Eliminer les lexies dont la catégorie est
fonctionnelle : prépositions, conjonction, déterminants, pronoms, etc.
Sur le reste: essentiellement les noms communs, les adjectifs, les verbes et les adverbes.
16
Extraction des termes représentatifs
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).
Enlever les mots ordinaires et athématiques (mots d ’usage courant).
Par complémentarité, les termes significatifs sont conservés et représentent le document: BASE DU DOCUMENT
17
Pondération des termes
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 : Wki = (log(tfki) + 1)/ (k=1
N(log(tfki) +1)) N est le nombre total de documents considérés. Quand il s ’agit d ’un document unique le poids
est de 1.
18
Le modèle vectoriel de Salton
Une base d ’indexation B extraite comme indiqué précédemmentUne 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: On peut représenter chacun des termes
de B par un vecteur B forme la base d ’un espace vectoriel.
19
Le modèle vectoriel de Salton B, base de termes = {t1B, t2B, …, tnB} A chaque tiB on associe un vecteur ViB de
dimension n, tel que ViB = (0 0……1……..0) La ième composante du vecteur vaut 1, et 0 sinon.
{V1B, V2B, …,VnB} engendre un espace vectoriel B. Le système {V1B, V2B, …,VnB} est libre, c ’est donc une base.
20
Le modèle vectoriel de Salton 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 = (dj1, dj2,…,djn) où chacun des éléments correspond au poids du terme tiB de la base B (et donc le poids de la composante vectorielle ViB dans B). Ce poids est calculé selon la formule précédente (en fonction de la fréquence d ’occurrence du terme tiB dans Dj).
21
Le modèle vectoriel de Salton De la même manière on considère que Q est
représenté dans l ’espace B par un vecteur : Q= (q1,q2,…qn) où qi est le poids du terme tiB
(de la base) dans la requête Q. 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).
22
Particularités du modèle vectoriel de Salton
Une base par « collection de documents » La dimension peut varier Les composantes peuvent varier Base vraie
Représentation d ’un document par un vecteur unique Les poids des termes varient en fonction de l ’état
de la collection de documents => à recalculer entièrement pour tout nouveau document
23
Particularités du modèle vectoriel de Salton
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.
24
Modèle de Salton en langage naturel
Représentations de la sémantique du langage naturel : La non représentation de tous les termes de la
langue est un problème. => Une base avec les 70000 mots d ’un
dictionnaire ? Sinon que choisit-on comme base ?
Le nombre de productions en langue (discours) est infini : N ->. Comment calcule t-on les poids ? De plus, il est inaccessible.
25
Modèle de Salton en langage naturel
Représentations de la sémantique du langage naturel : La pertinence par co-occurrence de termes n ’est
pas le problème de la sémantique:proximité thématique entre tiB et t(i+1)B? .
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.
26
Modèle de Salton en langage naturel
La syntaxe et la sémantique en langage naturel ne sont pas indépendantes. La voile du bateau et le bateau à voile donnent la
même requête Q={voile, bateau}= {bateau, voile} Les fonctions syntaxiques analytiques donnent
des informations importantes sur le rôle sémantique (casuel) des portions de textes.
Un sujet et un complément de manière n ’ont pas le même poids dans un texte.
27
En conclusion sur le modèle de Salton
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.
28
Le modèle à famille génératrice
Démarche: Il faut trouver une famille de termes en nombre
relativement faible telle que : Elle puisse servir de base d ’index à tous les
autres termes de la langue On représente ces termes sous forme de
vecteurs (booléens) La famille de ces vecteurs est génératrice et
engendre un espace vectoriel L pour la langue.
29
Le modèle à famille génératrice
Hypothèse du noyau: Certains termes sont à la fois termes, concepts et
concepts générateurs.Ils ont une capacité élevée à engendrer les autres.
Linguistique : les universaux Sciences sociales : hypothèse anthropologique
sur la nature des universaux.
30
Le noyau lexicologique:l ’initiative Roget
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. Exemple : le terme « vie » s ’indexe sur le
concept « existence », sur le concept « durée » , sur le concept « animé » et est aussi un concept.
31
L ’initiative Roget Autres exemples:
Le terme « papillon » n ’est pas un concept de la hiérarchie.Il est indexé sur « animal », « insecte », « beauté », « légèreté ».
Indexer un terme par rapport à un concept signifie considérer que le concept participe au sens de ce terme. .
32
L ’initiative Roget 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.
.
33
Le thésaurus Larousse 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.
.
34
Les vecteurs sémantiques 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:
.
35
Les vecteurs sémantiques
Ci = (c1i, c2i,…, c873i) 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 ».
.
36
Les vecteurs sémantiques 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: Fl serait une vraie base de F Dimension de F <873.
On ne sait pas trouver Fl !!!.
37
Les vecteurs sémantiques 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= (1, 2,…,873) avec i= 1 si Ci indexe t, et i= 0 sinon. Puis ce vecteur est normé..
38
Les vecteurs sémantiques Grâce aux lois de composition interne et
externe, on peut calculer les vecteurs de segments (comprenant plusieurs termes). En tenant compte des marqueurs
syntaxiques Et des rôles syntaxiques et sémantiques
dans la phrase.
.
39
Exemple • Sur un groupe nominal prépositionnel N1
[prep] N2. Le moulin à vent. Analyse syntaxique :
GPREP
SN PREPSN
N àDET N
Le moulin vent
40
Calcul d ’un vecteur de groupe
La structure syntaxique donne: Un rôle de gouverneur pour « moulin » => poids
de moulin = 2. La structure (det, N,« à », N) indique un rôle de
complément circonstanciel pour le deuxième élément. => poids de « vent » = 0, 5.
On calcule le vecteur du groupe par: V(groupe(moulin à vent)) = 2V(moulin)0,5 V
(vent) puis V(groupe (moulin à vent)) est normé.
41
Calcul d ’un vecteur de phrase
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.
42
PH
GN GV
PRP
Je
SV GA
V
manger
GN A
SN
SN
DET N
un pomme
vert
V() = 2V(pomme)0,5V(vert)
V() = V(soi)V()= V(manger)
V(PH) = 8 V() 10 V() 6 V()
43
Segments d ’ordre supérieur
Le vecteur d ’un ensemble de phrases (paragraphe, texte) est le barycentre des vecteurs de phrases. Si T= {PH1, PH2, …, PHn} Alors T = V(PH1) V(PH2) … V(PHn)
De la même manière, si D est un ensemble de textes : D= {T1, T2, …, Tm} alors D = T1 T2 … Tm.
44
Effets de macro-structuration
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 sous-texte 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.
45
Les vecteurs conceptuels
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.
46
Les vecteurs conceptuels
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.
47
Les vecteurs conceptuels
Exemple :Transmuter :
(def 1) action de transformer un matériau en un autre.
Transformer est plus important que « action » alors que la forme « N1 prep V(inf) » a tendance à favoriser N1 par rapport à tout autre élément après la préposition.
48
Les vecteurs conceptuels
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 elle-même modulée: au lieu d ’avoir les vecteurs Ci définis comme précédemment,
Ci = Ci (init) +jajCj où les ai représentent des poids issus de la distance ultramétrique dans l ’arborescence.
49
Divergences Remarques :
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.
Le vecteur du terme t=« vie » est distingué du vecteur du concept (c4: vie)
Alors qu ’ils le sont dans le modèle des vecteurs sémantiques.
50
Divergences 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.
51
Divergences En revanche, les vecteurs de MVS, bien
que plus pauvres, sont beaucoup plus discriminants Les vecteurs calculés par « apprentissage »
sur des sources textes sont très denses. Ils sont aussi moins bruités
La qualité des sources d ’apprentissage peut entraîner une surabondance d ’information.
52
La qualification par l ’application
En réalité, tout dépend de ce à quoi on veut appliquer ces modèles En catégorisation pure, MVS est
probablement plus sûr (précision) mais peu prolixe(silence, faible rappel)
En découverte thématique, explication MVC est plus riche (bruit mais très bon rappel).
53
les avantages des modèles vectoriels de la sémantique 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. La sémantique y est cohérente: chaque fois qu ’un
texte est analysable, alors on peut lui trouver un sens.
On peut inventer de nouveaux mots, il suffit d ’être capable de les indexer ou d ’en donner des définitions.
54
En conclusion 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.
55
En conclusion Les problèmes que l ’on se pose sont:
L ’espace L apparaît comme étant de densité très hétérogène. Pourquoi ?
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-t-elle pas des fois un maillage « trop faible » ?
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?