Sémantique lexicale et TALN Vecteur conceptuels et apprentissage

Preview:

DESCRIPTION

Sémantique lexicale et TALN Vecteur conceptuels et apprentissage. Mathieu Lafourcade LIRMM - France www.lirmm.fr/~lafourca. Objectifs. Analyse sémantique Désambiguïsation de Sens Indexation de Textes en RI Transfert Lexical en TA Modèle de Vecteurs Conceptuels (MVC) Réminiscences - PowerPoint PPT Presentation

Citation preview

Sémantique lexicale et TALN

Vecteur conceptuelset apprentissage

Mathieu LafourcadeLIRMM - France

www.lirmm.fr/~lafourca

Analyse sémantiqueDésambiguïsation de SensIndexation de Textes en RITransfert Lexical en TA

Modèle de Vecteurs Conceptuels (MVC)Réminiscences

Modèles vectoriels lexicaux (Salton)

Modèles conceptuels (Sowa)

Concepts (et non des termes)Ensemble E choisi a priori (petit) / par émergence (grand)

Concepts interdépendants

Propagation sur arbre d’analyse morpho-syntaxique (pas d’analyse de surface)

Objectifs

Vecteurs conceptuelsUne idée

= combinaison linéaire de concepts= un vecteur

L’espace des idées= espace vectoriel

(que l’on ne connaît pas a priori - dont on se moque a posteriori--> pas de réduction de dimension)

Un concept= une idée = un vecteur = combinaison de lui-même + voisinage

Comment choisir les concepts ?

Vecteurs conceptuelsEnsemble de k concepts

Thesaurus Larousse = 873 concepts--> Un vecteur = 873 upletThesaurus Rodget = 1047 concepts

--> Un vecteur = 1047 uplet EDR (Japon) --> 40000 concepts

Espace des sens = espace vectoriel + ensemble de

vecteurs

Vecteurs conceptuelsExemple : ‘chat’

Noyau dont l’indexation est manuelle c:mammifère, c:caresse<… mammifère … caresse …><… 0,8 … 0,8 … >

Augmentéc: mammifère, c:caresse, c:zoologie, c:amour … <… zoologie … mammifère… caresse … amour …><… 0,5 … 0,75 … 0,75 … 0,5 … >

itération --> affinage des vecteurs selon le voisinageVecteurs sans aucun zéro--> danger ! Avoir des vecteurs trop plats

Espace vectorielLes concepts

Ne sont pas indépendants

Espace des sens = Espace générateur d’un espace V de dim k’ (inconnue)= k’ <= k

Suffisant Position relative des points

V’

V

Expérience TH873 Thesaurus Larousse

H : hiérarchie des concepts — K concepts feuilles (K = 873)C0 = racine , c1, c2 , c3, c4 = feuilles

V(Ci) : <a1, …, ai, … , a873>aj = 1/ (2 ^ Dum(H, i, j)) Dum= distance ultramétrique

1/41 1/41/41/161/16 1/64 1/64

2 64

Vecteurs conceptuels TH873 Concept c4:PAIX

c4:Paix

C2:’Relation hiérarchiques’

C3:‘Relations de conflit’

C1:‘Le Monde’ , C1:‘L’Homme’ C1:‘La Société’

Vecteurs conceptuels TH873Terme ‘Paix’

c4:Paix

finance

profitéchange

Distance entre VCangulaire (ou encore dite de magnitude)

Distance Angulaire DA(x, y) = angle (x, y)0 <= DA(x, y) <=

si 0 alors colinéaire - même idéesi /2 alors rien en communsi alors DA(x, -x) avec -x (anti-idée de x)

x’

y

x

Distance entre VCangulaire (ou encore dite de magnitude)

DA(x, x) = 0

DA(x, y) = DA(y, x)

DA(x, y) + DA(y, z) DA(x, z)

DA(0, 0) = 0 and DA(x, 0) = /2 par def.

DA(x, y) = DA(x, y) avec 0

DA(x, y) = - DA(x, y) avec 0

DA(x+x, x+y) = DA(x, x+y) DA(x, y)

QuickTime™ and aTIFF (LZW) decompressorare needed to see this picture.

Conceptual vector distanceExample

DA(sparrow, sparrow) = 0

DA(sparrow, passerine) = 0.4

DA(sparrow, bird) = 0.7

DA(sparrow, train) = 1.14

DA(sparrow, insect) = 0.62

sparrow = kind of insectivorous passerine …

Distance entre VCExemple

DA(moineau, moineau) = 0

DA(moineau, passereau) = 0.4

DA(moineau, oiseau) = 0.7

DA(moineau, train) = 1.14

DA(moineau, insecte) = 0.62

moineau = espèce de passereau insectivore …

TT

définitions du noyau (clous) - vecteurs invariants

définitions de dictionnaires - vecteurs modifiés lors des révisions

insecteK

insecteD

scarabéeD

plante.1K

plante.2K

plante.2D

plante.1D

Lexique de vecteurs conceptuels

Ensemble de (terme, vecteur) = (w, )*

Terme monosème ?Terme monodéfini

--> 1 sens (acception) --> 1 vecteur

(w, )

moineau

Lexique de vecteurs conceptuels

Construction pour les polysèmesTerme polysème ?Terme polydéfini

--> n sens (acceptions)--> n vecteurs

{(w, ), (w.1, 1) … (w.n, n) }

Ferme (NF)

• bâtiment• exploitation • fermage• élément de charpente

Danger : les sens minoritaires sont trop affaiblis

Lexique de vecteurs conceptuels Construction pour les

polysèmes

(w) = (w.i) ferme

• bâtiment (agricole)• exploitation (agricole) • fermage

• élément de charpente

Lexique de vecteurs conceptuels

Construction pour les polysèmes(w) = classification(w.i) aggregation ascendante binaire

ferme1:DA(3,4) & (3+2)

2:(ferme4)

7:(ferme2)6:(ferme1)

4:(ferme3)5: DA(6,7)& (6+7)

3: DA(4,5) & (4+5)

Portée du champ sémantique

LS(w) = LSt((w))LSt((w)) = 1 si est une feuille

LSt((w)) = (LS(1) + LS(2))/(2-sin2(D((w)))sinon

(w) = t((w))t((w)) = (w) si est une feuille

t((w)) = LS(1)t(1) + LS(2)t(2)

sinon

1:D(3,4), (3+2)

2:4

7:26:1

4:3 5:D(6,7), (6+7)

3:D(4,5), (4+5)

Permet de gérer les définitions multiples (redondantes)

(w) =

1:D(3,4) & (3+2)

2:(ferme4)

7:(ferme2)6:(ferme1)

4:(ferme3)5:D(6,7)& (6+7)

3:D(4,5) & (4+5)

Descente récursive sur t(w) comme arbre de décisionDA(’, i)

Arrêt sur une feuilleArrêt sur un nœud interne

Pondération / Sélection

Stats sur les vecteursNorm ()

[0 , 1] * C (215=32768)

Intensity ()Norme / C Généralement = 1 (sauf pour les fonctions

syntaxiques)

Écart type (ET)ET2 = variancevariance = 1/n * (xi - moy)2

Stats sur les vecteursCoefficient de variation (CV)

CV = ET / moyPas d’unité - indépendant de la normeForce conceptuelle (pour les concepts sous l’horizon)

si A Hyperonyme B CV(A) > CV(B)(on a pas )

vector « jus de fruit » (N)--> Moy = 527, ET = 973 CV = 1.88

vector « boisson » (N)--> Moy = 443, ET = 1014 CV = 2.28

Pour les concepts au-dessus de l’horizon,si A Hyperonyme B CV(A) < CV(B) (on a pas )

Opérations sur les vecteurs

SommeV = X Y vi = xi + yi

Element neutre : 0 X 0 = X

Généralisation à n termes : V = Vi

Normalisation de la somme : vi /|V|* c

Sorte de moyenne - barycentre - centroïde

Opérations sur les vecteurs

Produit terme à terme normé(pttn)V = X Y vi = xi * yi

Element neutre : 1 X 1 = X

Généralisation à n termes V = Vi

Intersection

Opérations sur les vecteursAmplification

V = X ^ n vi = signe(vi) * |vi|^ n V = V ^ 1/2 et n V = V ^ 1/n

V V = V ^ 2 si vi 0

Normalisation du ptt à n termes

V = n Vi

Opérations sur les vecteursContextualisation : somme + ppt (non normée)

(A, B) = A(AB)

Utilisée pour le calcul (simple) de vecteurs requête en RI

(A, A) = A(AA) = AAA(A, 0) = A(A0) = A0A(A, 1) = A(A1) = AAA

Ex : (frégate, frégate) bof ! (frégate, oiseau) ah oui !

Opérations sur les vecteurs

SoustractionV = X Y vi = xi yi

Soustraction pointéeV = X Y vi = max (xi yi, 0)

ComplémentaireV = C(X) vi = (1 xic) * c

Opérations ensemblistes

Autres distancesDistance d’intensité

Intensité (norme) du ptt non normé

0 ( (X Y)) 1 si |x| = |y| = 1

DI(X, Y) = acos(( X Y))

DI(X, X) = 0 et DI(X, 0) = /2

DI(moineau, moineau) = 0 (DA = 0)

DI(moineau, passereau) = 0.25 (DA = 0.4)

DI(moineau, oiseau) = 0.58 (DA = 0.7)

DI(moineau, train) = 0.89 (DA = 1.14)

DI(moineau, insecte) = 0.50 (DA = 0.62)

Autres distancesDistance de profil et généralisation

Profil Dp : Comparaison de la forme des vecteurs(sans tenir compte de la magnitude)

Généralisation DG : magnitude + profil

V V ’

Dp(V,V ’) = 0

DG(X,Y) = DA(X,Y) + ( -1)DP(X,Y)

Fonction Lexicale vectorielleSynonymie relative

SynR(A, B, C) — C est l’axe de projection

Rappel : (A, B) = A(AB)

SynR(A, B, C) = DA((A, C) , (B, C))

DA(charbon,nuit) = 0.9

SynR(charbon, nuit, couleur) = 0.4

SynR(charbon, nuit, noir) = 0.35

Synonymie relative

SynR(A, B, C) = SynR(B, A, C)

SynR(A, A, C) = DA(A(AC), A(AC)) = 0

SynR(A, B, 0) = DA(A, B)

SynR(A, B, 1) = DA(A, B)

SynR(A, 0, C) = /2

SynR(A, B, A) = DA(A(AA), B(BA))

= DA(A, B(BA))

68

Analyse « sémantique »Propagation de vecteurs sur l’arbre

(d’analyse morpho-syntaxique — Application SYGMART — J. Chauché)

Les rapidement

P

GV

GVA

GNP

termites

attaquent

les fermes

GN

GN

du toit

Les termites attaquent les fermes du toit rapidement

Les rapidement

P

GV

GVA

GNPattaquent

fermes

termites

les

GN

toit

GN

duExploitation agricole

bâtimentÉlément de charpente

(d’une) maisonTerme d ’anatomieau-dessus

agressercommencer

critiquer

Analyse sémantique

Initialisationles vecteurs sont attachés aux cerises puis propagés aux termes

Les rapidement

P

GV

GVA

GNP

termites

attaquent

les fermes

GN

GN

du toit

1

2

3

4

5

Analyse sémantique

1 1 1

1 1 11 1

poids

1

Propagation vers le haut (montée)(Ni ) = (Ni 1) … (Ni k)

Les rapidement

P

GV

GVA

GNP

termites

attaquent

les fermes

GN

GN

du toit

Analyse sémantique

Descente = contextualisation faible(Ni j) = (Ni j, Ni ) = (Ni j) ((Ni j) (Ni))

Les rapidement

P

GV

GVA

GNP

termites

attaquent

les fermes

GN

GN

du toit

1’

2’ 3’

4’

5’

Analyse sémantique

0.1 0.8 0.1

0.5 0.3 0.20.2 0.1 0.7

Contextualisation forte

Pondération/sélection de sens

Les rapidement

P

GV

GVA

GNP

termites

attaquent les ferme

s

GN

GN

du toitexploitation

bâtiment élément de charpente

d ’une maisonanatomieau-dessus

commencer attaquer

critiquer

Analyse sémantique

Schémas syntaxiques

S: NP(ART,N) (NP) = V(N)

S: NP1(NP2,N) (NP1) = (NP1) (N) 0<<1

(bateau à voile) = (bateau) 1/2 (voile)

(voile de bateau) = (voile) 1/2 (bateau)

Où est la tête (gouverneur) ?

Iteration et convergence

convergence ? (ou nb de cycles max)

Local D(i, i+1) pour racine

Global D(i, i+1) pour tout

Global : Meilleurs résultats mais coûteux et converge rarement (oscillations)

Local : Bons résultats et rapide

SYGMART Analyse morphosyntaxique(Sygmart)

Définitions Dico à usage humain(multisources)

Base de Vecteurs Conceptuels

Construction et affinage de la base de VC

Construction et affinage de la base de VC

Noyau manuel (nécessaire pour l’amorçage)

Analyses de définitions (dico, encyclo, etc. en ligne et hors ligne)

Boucle infinie --> apprentissage permanent

Supervision --> ajustements manuels(nouvelles def, plus précises, moins ambiguës, etc.)

itérations

synonymes

Mots inconnus des définitions

noyau

charançon : n (un) petit insecte qui détruit les grains .

NP

ART

un

ANP

ADJ N

petit insecte

REL

VPPR

V

détruit .

GN

grains

PUNCT

PH

qui

V1 V2= V2,1 V2.2 V3 V4

VPH

V=V1 2V2

V=VREL (VREL ,VPH )

GOV NART

les

charançon : n (un) petit insecte qui détruit le grain .

NP

ART

un

ANP

ADJ N

petit insecte

REL

VPPR

V

détruit .

GN

grains

PUNCT

PH

qui

V1 V2= V2,1 V2.2 V3 V4 = 0

VPH

V=V1 2V2

V=VREL (VREL ,VPH )

GOV NART

les

Analyse partielle

Mot inconnu

V4 = 0

Mot inconnu

V4 = 0

Mot inconnuOn tire le vecteur au hasard

On révisera au moment de l’apprentissage de ce mot

ÉmergenceExpérience EMER873

Pas de thésaurus - pas de noyauOn fixe juste la dimension de E (la taille des vecteurs)

Amplification pour éviter une convergence globale vers le vecteur 1(effet bouillie)

TT

Espace T

Maille fixe - densité lexicale variable

EE

Espace E

Maille variable - densité lexicale plus ou moins

constante

Points de test 1/2

EE

Écart type de la densité lexicale (test 1) ET(DL(E)) < ET(DL(T))

Les n vecteurs booléens (dans TH873 et EMER873 on a n = 873)

Points de test 2/2

EE

Écart type de la densité lexicale (test 2) ET(DL(E)) < ET(DL(T))

Les p premiers termes en fréquence d’usage (dans TH873 et EMER873 on a p = 1000)

Construction de taxonomiesFonctions lexicales

Hyperonymes/hyponymes (is-a)Holonymes/méronymes (part-of)Synonymes - Antonymes (agents à apprentissage D. Schwab)

Cause/effet ???

CombinaisonExtractions lexicales (classique)

Vecteurs conceptuels (pour la sélection des acceptions des termes)

Jouer à la fois : au niveau des termes - du sens - des relations

Problématique de fond : distinguer des sens par affinage successifs

Émeraude/pierre précieuse Émeraude/béryl

béryl

Pierre précieuse

Gemme/pierre précieuse Gemme/bourgeon Gemme/résine

Plus proche vecteur

Émeraude/gemme

v v

vv v

v

Émeraude/pierre précieuse Émeraude/béryl

béryl

Pierre précieuse

Gemme/pierre précieuse Gemme/bourgeon Gemme/résine

Émeraude/gemme

v v

vv v

v

Émeraude/pierre précieuse Émeraude/béryl

béryl

Pierre précieuse

Gemme/pierre précieuse Gemme/bourgeon Gemme/résine

0.81

0.9

0.70.85

Émeraude/béryl

béryl

Pierre précieuse

Gemme/pierre précieuse

0.81

0.9

0.85

Émeraude/vert Émeraude/couleur

Émeraude/vert

Vert/couleur des signaux

Couleur/matièreCouleur/sensation

Vert/couleur

Voiture/wagon

wagon

Moyen de transport

véhicule/Moyen de transport véhicule/vecteur

automobile

Voiture/automobile

Cheval/moyen de transport

Cheval/mammifère

mammifère

Cheval/viande

Viande/nourriture

aliment

nourriture

artefact

Cheval/unité de puissance

animal

hypo

hypohypo

Comparaisonentre les deux approches

Thésaurus

- discrimination- utilisation des ressources

+ évaluation par inspection ou par voisinage

Émergence

+ discrimination+ utilisation des ressources- évaluation par voisinage uniquement

++ pas besoin de thésaurus? Reconstitution du (d’un) thésaurus ? au moins partiellement

Concepts pertinents Concepts utiles

Il faut coupler l’analyse par définitions et l’analyse par corpus

Analyses intentionnelle (def), extentionnelle (ex), distributionelle (corpus)

ConclusionEmergence

Vecteurs (fort rappel)Taxonomies (forte précision)

Apprentissage permanentDifférent d’un entraînementMulti-sources

Termes - Lexies - AcceptionsAmas de lexies + nommage + réinjectionBouclages (cf Ch. Lecerf sur la Double boucle)

Expérience en cours avec une dim = 5000

Fin1. extremité2. mort3. but…

Recommended