tal: traitement automatique de la langue apprentissage d...
TRANSCRIPT
BOW Modèles proba. Sémantique LSA Usages
TAL: traitement automatique de la langueApprentissage d’une sémantique
Vincent GuigueUPMC - LIP6
Vincent Guigue Analyse sémantique 1/42
BOW Modèles proba. Sémantique LSA Usages
Traitements pour la classification de textes
Les données textuelles sont difficiles à gérer :
1 Les corpus sont volumineux, le vocabulaire est grand :
- il faut des algorithmes rapides,- les données ne sont pas toujours stockables en mémoire.
2 La structure des phrases est difficile à gérer.3 Les mots peuvent prendre plusieurs formes (pluriels...)4 Machine learning + données en grande dimension =
problèmes
Vincent Guigue Analyse sémantique 2/42
BOW Modèles proba. Sémantique LSA Usages
Traitements pour la classification de textes
Les données textuelles sont difficiles à gérer :
1 Les corpus sont volumineux, le vocabulaire est grand :
- il faut des algorithmes rapides,- les données ne sont pas toujours stockables en mémoire.
Perceptron, SVM (en version rapide), Naive Bayes...Boosting, Bagging... Algorithmes distribués
2 La structure des phrases est difficile à gérer.On supprime la structure...
3 Les mots peuvent prendre plusieurs formes (pluriels...)Plusieurs approches possibles... (cf plus loin)
4 Machine learning + données en grande dimension =problèmesOn cherche des heuristiques pour supprimer les motsinutiles.
Vincent Guigue Analyse sémantique 2/42
BOW Modèles proba. Sémantique LSA Usages
Sacs de mots
Structure des phrases = coût important de traitement⇒ Elimination !
Document = comptage des différents mots qui le composent :
Représentation bag of words
Soit V le vocabulaire et d un document : d ∈ N|V |
NB : d est (presque toujours) un vecteur sparse, c’est à direcomposé essentiellement de 0.
Vincent Guigue Analyse sémantique 3/42
BOW Modèles proba. Sémantique LSA Usages
Sur un exemple (crédit Sergio Jimenez)
Vincent Guigue Analyse sémantique 4/42
BOW Modèles proba. Sémantique LSA Usages
Codage de l’information (sac de mots)
Document exemple :◦ le bonheur est dans le pré
◦ la mélodie du bonheur
Dictionnaire : le, la, du, bonheur, melodie, est, dans, pre
◦ Présence◦ Comptage◦ Fréquence◦ tf-idf (cf cours sur la classification de documents)
Vincent Guigue Analyse sémantique 5/42
BOW Modèles proba. Sémantique LSA Usages
Codage de l’information (sac de mots)
Document exemple :◦ le bonheur est dans le pré
◦ la mélodie du bonheur
Dictionnaire : le, la, du, bonheur, melodie, est, dans, pre
◦ Présence
le la du bonheur melodie est dans predoc1 1 0 0 1 0 1 1 1doc2 0 1 1 1 1 0 0 0
◦ Comptage◦ Fréquence◦ tf-idf (cf cours sur la classification de documents)
Vincent Guigue Analyse sémantique 5/42
BOW Modèles proba. Sémantique LSA Usages
Codage de l’information (sac de mots)
Document exemple :◦ le bonheur est dans le pré
◦ la mélodie du bonheur
Dictionnaire : le, la, du, bonheur, melodie, est, dans, pre
◦ Présence◦ Comptage
le la du bonheur melodie est dans predoc1 2 0 0 1 0 1 1 1doc2 0 1 1 1 1 0 0 0
◦ Fréquence◦ tf-idf (cf cours sur la classification de documents)
Vincent Guigue Analyse sémantique 5/42
BOW Modèles proba. Sémantique LSA Usages
Codage de l’information (sac de mots)
Document exemple :◦ le bonheur est dans le pré
◦ la mélodie du bonheur
Dictionnaire : le, la, du, bonheur, melodie, est, dans, pre
◦ Présence◦ Comptage◦ Fréquence
le la du bonheur melodie est dans predoc1 0.33 0 0 0.17 0 0.17 0.17 0.17doc2 0 0.25 0.25 0.25 0.25 0 0 0
Somme à 1 pour chaque document, importances des motspondérées par la longueur du document◦ tf-idf (cf cours sur la classification de documents)
Vincent Guigue Analyse sémantique 5/42
BOW Modèles proba. Sémantique LSA Usages
Aspects d’implémentation
◦ Combien de mots distincts dans un corpus de 10000 revues defilms (en anglais) ?
Exemple :Story of a man who has unnatural feelings for a pig. Starts out with a opening scene that is a terrificexample of absurd comedy. A formal orchestra audience is turned into an insane, violent mob by thecrazy chantings of it’s singers. Unfortunately it stays absurd the WHOLE time with no general narrativeeventually making it just too off putting. Even those from the era should be turned off. The crypticdialogue would make Shakespeare seem easy to a third grader. On a technical level it’s better than youmight think with some good cinematography by future great Vilmos Zsigmond. Future stars SallyKirkland and Frederic Forrest can be seen briefly.
◦ 104077 ... Quelle taille pour stocker ce corpus ?◦ 104 × 105 = 109 = 4Go... Contre 100Mo de données brutes
sur le disque. Comment mieux gérer cela ?◦ Codage sparse de l’information (seules les entrées non nulles
sont codées). Quelle structure de données ?◦ Table de hash
Vincent Guigue Analyse sémantique 6/42
BOW Modèles proba. Sémantique LSA Usages
Aspects d’implémentation
◦ Combien de mots distincts dans un corpus de 10000 revues defilms (en anglais) ?
Exemple :Story of a man who has unnatural feelings for a pig. Starts out with a opening scene that is a terrificexample of absurd comedy. A formal orchestra audience is turned into an insane, violent mob by thecrazy chantings of it’s singers. Unfortunately it stays absurd the WHOLE time with no general narrativeeventually making it just too off putting. Even those from the era should be turned off. The crypticdialogue would make Shakespeare seem easy to a third grader. On a technical level it’s better than youmight think with some good cinematography by future great Vilmos Zsigmond. Future stars SallyKirkland and Frederic Forrest can be seen briefly.
◦ 104077 ... Quelle taille pour stocker ce corpus ?
◦ 104 × 105 = 109 = 4Go... Contre 100Mo de données brutessur le disque. Comment mieux gérer cela ?◦ Codage sparse de l’information (seules les entrées non nulles
sont codées). Quelle structure de données ?◦ Table de hash
Vincent Guigue Analyse sémantique 6/42
BOW Modèles proba. Sémantique LSA Usages
Aspects d’implémentation
◦ Combien de mots distincts dans un corpus de 10000 revues defilms (en anglais) ?
Exemple :Story of a man who has unnatural feelings for a pig. Starts out with a opening scene that is a terrificexample of absurd comedy. A formal orchestra audience is turned into an insane, violent mob by thecrazy chantings of it’s singers. Unfortunately it stays absurd the WHOLE time with no general narrativeeventually making it just too off putting. Even those from the era should be turned off. The crypticdialogue would make Shakespeare seem easy to a third grader. On a technical level it’s better than youmight think with some good cinematography by future great Vilmos Zsigmond. Future stars SallyKirkland and Frederic Forrest can be seen briefly.
◦ 104077 ... Quelle taille pour stocker ce corpus ?◦ 104 × 105 = 109 = 4Go... Contre 100Mo de données brutes
sur le disque. Comment mieux gérer cela ?
◦ Codage sparse de l’information (seules les entrées non nullessont codées). Quelle structure de données ?◦ Table de hash
Vincent Guigue Analyse sémantique 6/42
BOW Modèles proba. Sémantique LSA Usages
Aspects d’implémentation
◦ Combien de mots distincts dans un corpus de 10000 revues defilms (en anglais) ?
Exemple :Story of a man who has unnatural feelings for a pig. Starts out with a opening scene that is a terrificexample of absurd comedy. A formal orchestra audience is turned into an insane, violent mob by thecrazy chantings of it’s singers. Unfortunately it stays absurd the WHOLE time with no general narrativeeventually making it just too off putting. Even those from the era should be turned off. The crypticdialogue would make Shakespeare seem easy to a third grader. On a technical level it’s better than youmight think with some good cinematography by future great Vilmos Zsigmond. Future stars SallyKirkland and Frederic Forrest can be seen briefly.
◦ 104077 ... Quelle taille pour stocker ce corpus ?◦ 104 × 105 = 109 = 4Go... Contre 100Mo de données brutes
sur le disque. Comment mieux gérer cela ?◦ Codage sparse de l’information (seules les entrées non nulles
sont codées). Quelle structure de données ?
◦ Table de hash
Vincent Guigue Analyse sémantique 6/42
BOW Modèles proba. Sémantique LSA Usages
Aspects d’implémentation
◦ Combien de mots distincts dans un corpus de 10000 revues defilms (en anglais) ?
Exemple :Story of a man who has unnatural feelings for a pig. Starts out with a opening scene that is a terrificexample of absurd comedy. A formal orchestra audience is turned into an insane, violent mob by thecrazy chantings of it’s singers. Unfortunately it stays absurd the WHOLE time with no general narrativeeventually making it just too off putting. Even those from the era should be turned off. The crypticdialogue would make Shakespeare seem easy to a third grader. On a technical level it’s better than youmight think with some good cinematography by future great Vilmos Zsigmond. Future stars SallyKirkland and Frederic Forrest can be seen briefly.
◦ 104077 ... Quelle taille pour stocker ce corpus ?◦ 104 × 105 = 109 = 4Go... Contre 100Mo de données brutes
sur le disque. Comment mieux gérer cela ?◦ Codage sparse de l’information (seules les entrées non nulles
sont codées). Quelle structure de données ?◦ Table de hash
Vincent Guigue Analyse sémantique 6/42
BOW Modèles proba. Sémantique LSA Usages
Implémentation (2)
◦ Table de hash...⇒ aucun opérateur !
◦ Chercher des implémentation de table pour le codage dematrices = sparse matrix◦ Plusieurs options
- codage par ligne, par colonne, en liste chainée...
◦ Et faire le lien avec les bibliothèque riches :- en python les matrices sparses fonctionnent plutôt bien avecnumpy
Vincent Guigue Analyse sémantique 7/42
BOW Modèles proba. Sémantique LSA Usages
Implémentation (2)
◦ Table de hash...⇒ aucun opérateur !
◦ Chercher des implémentation de table pour le codage dematrices = sparse matrix
◦ Plusieurs options- codage par ligne, par colonne, en liste chainée...
◦ Et faire le lien avec les bibliothèque riches :- en python les matrices sparses fonctionnent plutôt bien avecnumpy
Vincent Guigue Analyse sémantique 7/42
BOW Modèles proba. Sémantique LSA Usages
Implémentation (2)
◦ Table de hash...⇒ aucun opérateur !
◦ Chercher des implémentation de table pour le codage dematrices = sparse matrix◦ Plusieurs options
- codage par ligne, par colonne, en liste chainée...
◦ Et faire le lien avec les bibliothèque riches :- en python les matrices sparses fonctionnent plutôt bien avecnumpy
Vincent Guigue Analyse sémantique 7/42
BOW Modèles proba. Sémantique LSA Usages
Implémentation (2)
◦ Table de hash...⇒ aucun opérateur !
◦ Chercher des implémentation de table pour le codage dematrices = sparse matrix◦ Plusieurs options
- codage par ligne, par colonne, en liste chainée...
◦ Et faire le lien avec les bibliothèque riches :- en python les matrices sparses fonctionnent plutôt bien avecnumpy
Vincent Guigue Analyse sémantique 7/42
BOW Modèles proba. Sémantique LSA Usages
Evolution du vocabulaire
◦ En général, on considère qu’il y a une loi logarithmique entre lenombre de documents et le nombre de mots.◦ Sur l’exemple des revues de films :
0 5000 10000 15000 20000 250000
50000
100000
150000
200000
◦ Il y a également une règle sur les fréquences d’apparition desmots :
Vincent Guigue Analyse sémantique 8/42
BOW Modèles proba. Sémantique LSA Usages
Evolution du vocabulaire
◦ En général, on considère qu’il y a une loi logarithmique entre lenombre de documents et le nombre de mots.◦ Sur l’exemple des revues de films :◦ Il y a également une règle sur les fréquences d’apparition des
mots :
0 50 100 150 200 250 300nb occurences
0
2
4
6
8
10
12
log n
b m
ots
Vincent Guigue Analyse sémantique 8/42
BOW Modèles proba. Sémantique LSA Usages
Extensions
◦ Modèle de N-grams : codage des groupes de mots- very good- not good- sont des entrées du dictionnaire... dont la taille explose !
◦ Lemmatisation/racinisation- 1 seule entrée pour les mots de même racine
Vincent Guigue Analyse sémantique 9/42
BOW Modèles proba. Sémantique LSA Usages
Aspects industriels
1 Récupération/importation d’un corpus- Lecture de format XML- Template NLTK...
2 Optimisation d’un modèle.- Campagne d’expérience (d’abord grossière - codage, choixmodèle...-, puis fine - régularisation...)
- Assez long... Mais essentielle- Le savoir-faire est ici
3 Evaluation des performances (souvent en même temps que laphase d’optimisation)
- Usage de la validation croisée4 Apprentissage + packaging du modèle final
- Définition des formats IO- Mode de fonctionnement : API, service web...- Documentation
Vincent Guigue Analyse sémantique 10/42
BOW Modèles proba. Sémantique LSA Usages
Evaluation de vos TP
◦ Montrer que vous êtes capables de réaliser une campagned’expériences :
- Courbes de performances- Analyse de ces courbes
◦ Montrer que vous êtes capable de valoriser un modèle◦ Concrètement :
- Mise au propre de votre code- Intégration des expériences dans une boucle (ou plusieurs)- Analyse qualitative du modèle final (tri des poids)- OPT : construction de nuages de mots...
Vincent Guigue Analyse sémantique 11/42
BOW Modèles proba. Sémantique LSA Usages
1 BOW
2 Modèles proba.
3 Sémantique
4 LSA
5 Usages
Vincent Guigue Analyse sémantique 12/42
BOW Modèles proba. Sémantique LSA Usages
Caractériser des distributions...
Motivations = résumer des informations complexes
Distribution de lettres/mots/n-grammes de mots = ...◦ caractériser une langue,◦ caractériser un auteur,◦ caractériser une thématique,◦ caractériser une opinion,◦ caractériser des sentiments,◦ ...
⇒ Comprendre/visualiser les objets que l’on manipule pourmieux les traiter
Vincent Guigue Analyse sémantique 13/42
BOW Modèles proba. Sémantique LSA Usages
... Mais quelles distributions ?
◦ langue : distribution brute de lettres ?◦ style : distribution des fins de mots, des espaces, des articles,
des POS-tag ?◦ thème : mots-clés, champs lexicaux ?◦ ...
(1) chaque application requiert des traitements spécifiques(2) la représentation est souvent paramétrique
Vincent Guigue Analyse sémantique 14/42
BOW Modèles proba. Sémantique LSA Usages
Extraire une distribution de lettres
◦ Processus :1 Trouver une source... www.gutenberg.org2 Les trois mousquetaires, Arsène Lupin,...3 Comptage + normalisation
◦ Résultat :◦ Discussion :
Vincent Guigue Analyse sémantique 15/42
BOW Modèles proba. Sémantique LSA Usages
Extraire une distribution de lettres◦ Processus :
1 Trouver une source... www.gutenberg.org2 Les trois mousquetaires, Arsène Lupin,...3 Comptage + normalisation
◦ Résultat :
a b c d e f g h i j k l m n o p q r s t u v w x y z0.00
0.02
0.04
0.06
0.08
0.10
0.12
0.14
0.16
0.18
pro
ba
◦ Discussion :Vincent Guigue Analyse sémantique 15/42
BOW Modèles proba. Sémantique LSA Usages
Extraire une distribution de lettres◦ Processus :
1 Trouver une source... www.gutenberg.org2 Les trois mousquetaires, Arsène Lupin,...3 Comptage + normalisation
◦ Résultat :◦ Discussion : choisir un référentiel !
a b c d e f g h i j k l m n o p q r s t u v w x y z0.00
0.02
0.04
0.06
0.08
0.10
0.12
0.14
0.16
0.18
pro
ba
0 1 2 3 4 5 6 7 8 9 a b c d e f g h i j k l mn o p q r s t u v w x y z0.00
0.05
0.10
0.15
0.20
0.25
pro
ba
Vincent Guigue Analyse sémantique 15/42
BOW Modèles proba. Sémantique LSA Usages
Extraire une distribution de mots
◦ Le même processus...... Sur les mots
◦ ⇒ choisir les délimiteurs de mots (pas toujours trivial : ’)◦ Compter◦ Calculer la distribution (=normaliser)
Vincent Guigue Analyse sémantique 16/42
BOW Modèles proba. Sémantique LSA Usages
Métrique entre distributions
Comparer les objets, comprendre leurs positions
◦ Logique entropique (cf théorie de l’information, Shannon...)
Idée :Calculer un écart entre distribution = entropie croisée = divergencede Kullback-Liebler
DKL(P‖Q) =∑
i
P(i) logP(i)
Q(i)
Attention : asymétrie de la mesure
◦ Métrique euclidienne ...◦ Similarité cosine ...
Vincent Guigue Analyse sémantique 17/42
BOW Modèles proba. Sémantique LSA Usages
Métrique entre distributions
Comparer les objets, comprendre leurs positions
◦ Logique entropique (cf théorie de l’information, Shannon...)◦ Métrique euclidienne ...
inefficace en grande dimension : toutes les distributions deviennentéquidistantes
d(P,Q) = ‖P − Q‖ =√∑
i
(P(i)− Q(i))2
◦ Similarité cosine ...
Vincent Guigue Analyse sémantique 17/42
BOW Modèles proba. Sémantique LSA Usages
Métrique entre distributions
Comparer les objets, comprendre leurs positions
◦ Logique entropique (cf théorie de l’information, Shannon...)◦ Métrique euclidienne ...◦ Similarité cosine ...
Idée :Chercher les points communs plutôt que les différences :
sim(P,Q) =P · Q‖P‖‖Q‖ = cos( ~P, ~Q) ∝
∑
i
P(i)Q(i)
⇒ ≈ compter les points communs
Vincent Guigue Analyse sémantique 17/42
BOW Modèles proba. Sémantique LSA Usages
Expérience jouet
1 Gutenberg :- Les 3 mousquetaires, Arsène Lupin- Faust (Goethe), Kleine deutsche Sprachlehre- Moby Dick, War and Peace
KL
0 1 2 3 4 5
0
1
2
3
4
5
0.00
0.04
0.08
0.12
0.16
0.20
0.24
0.28
0.32
Eucl.
0 1 2 3 4 5
0
1
2
3
4
5
0.00
0.01
0.02
0.03
0.04
0.05
0.06
0.07
0.08
0.09
cos
0 1 2 3 4 5
0
1
2
3
4
5 0.944
0.952
0.960
0.968
0.976
0.984
0.992
1.000
Vincent Guigue Analyse sémantique 18/42
BOW Modèles proba. Sémantique LSA Usages
Expérience jouet
1 Gutenberg :- Les 3 mousquetaires, Arsène Lupin- Faust (Goethe), Kleine deutsche Sprachlehre- Moby Dick, War and Peace
Et avec les espaces et les nombres :
0 1 2 3 4 5
0
1
2
3
4
5
0.000
0.025
0.050
0.075
0.100
0.125
0.150
0.175
0.200
0.225
0 1 2 3 4 5
0
1
2
3
4
5
0.000
0.015
0.030
0.045
0.060
0.075
0.090
0.105
0 1 2 3 4 5
0
1
2
3
4
5 0.968
0.972
0.976
0.980
0.984
0.988
0.992
0.996
1.000
Vincent Guigue Analyse sémantique 18/42
BOW Modèles proba. Sémantique LSA Usages
Distribution de mots
◦ Les 3 Mousquetaires, Arsène Lupin, Boule de Suif, Le Horla,Le Comte de Monte-Cristo◦ Etape 1 : trouver un dictionnaire commun :
# r e s = tous l e s d i c t i o n n a i r e sd i c o = set ( r e s [ 0 ] . key s ( ) )p r i n t l en ( d i c o )f o r i i n range (1 , l en ( r e s ) ) :
d i c o = d i c o . i n t e r s e c t i o n ( r e s [ i ] . key s ( ) )p r i n t l en ( d i c o )
141305525338126692536
◦ Etape 2 : métriques
0 1 2 3 4
0
1
2
3
4
0.00
0.04
0.08
0.12
0.16
0.20
0.24
0.28
0.32
0.36
0 1 2 3 4
0
1
2
3
4
0.000
0.004
0.008
0.012
0.016
0.020
0.024
0.028
0.032
0 1 2 3 4
0
1
2
3
40.954
0.960
0.966
0.972
0.978
0.984
0.990
0.996
Vincent Guigue Analyse sémantique 19/42
BOW Modèles proba. Sémantique LSA Usages
dist(d1, d2) ≈ réponse à une requête
Moteur de recherche :
◦ Répondre à une requête r : dist(r , d)◦ Garantir une diversité des résultats affichés : dist(di , dj)
◦ Google : mesurer l’autorité de la source
◦ ...
Vincent Guigue Analyse sémantique 20/42
BOW Modèles proba. Sémantique LSA Usages
dist(d1, d2) ≈ réponse à une requête
Moteur de recherche :
◦ Répondre à une requête r : dist(r , d)◦ Garantir une diversité des résultats affichés : dist(di , dj)◦ Google : mesurer l’autorité de la source◦ ...
Vincent Guigue Analyse sémantique 20/42
BOW Modèles proba. Sémantique LSA Usages
dist(d1, d2) ≈ réponse à une requête
Moteur de recherche :
◦ Répondre à une requête r : dist(r , d)◦ Garantir une diversité des résultats affichés : dist(di , dj)◦ Google : mesurer l’autorité de la source◦ ...
La métrique la plus utilisée : BM25
score(D,Q) =n∑
i=1
IDF(qi ) ·f (qi ,D) · (k1 + 1)
f (qi ,D) + k1 ·(1− b + b · |D|avgdl
)
IDF(qi ) = logN − n(qi ) + 0.5
n(qi ) + 0.5, b = 0.75, k1 ∈ [1.2, 2.0]
... La suite en cours de RI !
Vincent Guigue Analyse sémantique 20/42
BOW Modèles proba. Sémantique LSA Usages
1 BOW
2 Modèles proba.
3 Sémantique
4 LSA
5 Usages
Vincent Guigue Analyse sémantique 21/42
BOW Modèles proba. Sémantique LSA Usages
La question de la sémantique
Objectif
(mieux) comprendre [automatiquement] la signification d’un mot,d’un texte
⇒ Applications
◦ moteur de recherche◦ classification thématique◦ extraction d’informations◦ résumé automatique◦ classification d’opinions
Corrolaire :Eliminer le semantic gap
Vincent Guigue Analyse sémantique 22/42
BOW Modèles proba. Sémantique LSA Usages
Ressources linguistiques
WordNet (et wordnets)
◦ Description : Représentation hiérarchique des concepts.
- Nouns- Verbs- Adjectives
Vincent Guigue Analyse sémantique 23/42
BOW Modèles proba. Sémantique LSA Usages
Ressources linguistiques
WordNet (et wordnets)
◦ Description : Représentation hiérarchique des concepts.- Nouns
· hypernyms : Y is a hypernym of X if every X is a (kind of) Y(canine is a hypernym of dog)· hyponyms : Y is a hyponym of X if every Y is a (kind of) X
(dog is a hyponym of canine)· coordinate terms : Y is a coordinate term of X if X and Y
share a hypernym (wolf is a coordinate term of dog, and dogis a coordinate term of wolf)· meronym : Y is a meronym of X if Y is a part of X (window is
a meronym of building)· holonym : Y is a holonym of X if X is a part of Y (building is
a holonym of window)
- Verbs- Adjectives
Vincent Guigue Analyse sémantique 23/42
BOW Modèles proba. Sémantique LSA Usages
Ressources linguistiques
WordNet (et wordnets)
◦ Description : Représentation hiérarchique des concepts.
- Nouns- Verbs
· hypernym : the verb Y is a hypernym of the verb X if theactivity X is a (kind of) Y (to perceive is an hypernym of tolisten)· troponym : the verb Y is a troponym of the verb X if the
activity Y is doing X in some manner (to lisp is a troponym ofto talk)· entailment : the verb Y is entailed by X if by doing X you
must be doing Y (to sleep is entailed by to snore)· coordinate terms : those verbs sharing a common hypernym
(to lisp and to yell)
- Adjectives
Vincent Guigue Analyse sémantique 23/42
BOW Modèles proba. Sémantique LSA Usages
Ressources linguistiques
WordNet (et wordnets)
◦ Description : Représentation hiérarchique des concepts.
- Nouns- Verbs- Adjectives
· Antomyms / Synonyms
Vincent Guigue Analyse sémantique 23/42
BOW Modèles proba. Sémantique LSA Usages
WordNet : Exemple
Exemples d’informations récupérables
dog, domestic dog, Canis familiaris=> canine, canid
=> carnivore=> placental, placental mammal, eutherian, eutherian mammal
=> mammal=> vertebrate, craniate
=> chordate=> animal, animate being, beast, brute, creature, fauna
=> ...
Crédit : wikipedia
Vincent Guigue Analyse sémantique 24/42
BOW Modèles proba. Sémantique LSA Usages
WordNet : Usages
◦ Notions de distance
- longueur du chemin dans l’arbre,- longueur du chemin dans le graphe des synonymes,- hauteur dans la hiérarchie,- cf : Leacock Chodorow (1998), Jiang Conrath (1997), Resnik(1995), Lin (1998), Wu Palmer (1993)
◦ Applications- IR : Information Retrieval- Word Desambiguation- Text Classification- Machine Translation- Summarization
◦ Disponible dans NLTK (avec l’implémentation des distances)
Vincent Guigue Analyse sémantique 25/42
BOW Modèles proba. Sémantique LSA Usages
WordNet : Limites
◦ Dépend des ressources existantes (langues...)◦ Non adapté à des domaines spécifiques (uniquement pour un
vocabulaire général)
Ouvertures :◦ Extensions statistiques possibles (traductions, heuristiques de
diffusion...)
Vincent Guigue Analyse sémantique 26/42
BOW Modèles proba. Sémantique LSA Usages
Approche statistique : Sémantique vecto-rielle
◦ Modélisation : comptage des occurrences
X =
tj↓
di →
x1,1 . . . x1,D...
. . ....
xN,1 . . . xN,D
◦ Proposition : métrique (similarité) = corrélation entre lesreprésentations des termes :
s(j , k) = 〈tj , tk〉,Normalisé : sn(j , k) = cos(θ) =tj · tq‖tj‖ ‖tq‖
- Si les termes apparaissent dans les mêmes documents, ils sontsimilaires
- Matrice de similarité = XTX ∈ RD×D
Vincent Guigue Analyse sémantique 27/42
BOW Modèles proba. Sémantique LSA Usages
Approche statistique : LSA
◦ LSA : Latent Semantic Analysis◦ Idée : factorisation de la matrice = regrouper les termes dont
le sens est similaire◦ Approche : décomposition en valeurs singulières
XT = U Σ V T
di di
↓ ↓
tj →
x1,1 . . . x1,N
.... . .
...
xD,1 . . . xD,N
=
u1
. . .
ul
σ1 . . . 0...
. . ....
0 . . . σl
(
v1)
...(vl
)
◦ Les similarité se calculent de la même façon
crédit : wikipedia
Vincent Guigue Analyse sémantique 28/42
BOW Modèles proba. Sémantique LSA Usages
Discussion : SVD, LSA
Lorsqu’on sélectionne les k plus grandes valeurs singulières, ainsique les vecteurs singuliers correspondants dans U et V, on obtientune approximation de rang k de la matrice des occurrences
◦ Métrique efficace entre les termes, entre les documents- Amélioration qualitative par rapport à la métrique initiale
◦ Usages :
- Clustering (chaque valeur singulière est un topic)- Détection des synonymes (pas toujours efficace)- Amélioration de la RI- Représentation des connaissances- Métrique entre documents/phrases :
· QA automatisé· Résumé automatique
Thomas K. Landauer, Peter W. Foltz et Darrell Laham, « Introduction to Latent Semantic Analysis »,Discourse Processes, vol. 25, 1998, p. 259-284
Vincent Guigue Analyse sémantique 29/42
BOW Modèles proba. Sémantique LSA Usages
LSA : limites
◦ Repose sur les sacs de mots, pas de gestion :- des négations,- de la proximité dans le document (cf tailles des documentstraités)
- de la structure des phrases/documents◦ Dépend du corpus utilisé
- problèmes avec les mots peu fréquents,- biais liés au domaine du corpus
◦ Pas de modélisation de la polysémie
Vincent Guigue Analyse sémantique 30/42
BOW Modèles proba. Sémantique LSA Usages
LSA : variante
◦ Factorisation matricielle non-négative
espace de D mots, ou Xid est le nombre d’occurrences (eventuellement norma-lise) du mot d’indice d dans le document d’indice i. Apres application de laDVS, nous obtenons la matrice B = UK , dont chaque ligne contient la nou-velle representation des documents dans K , le nouvel espace defini par Kvecteurs de base. Ces vecteurs de base sont donnes par les lignes de la matriceC = ⇥KV T
K . Le k-ieme vecteur de base Ck. ↵ d est un vecteur dans l’espacedes mots : la d-ieme composante correspond au mot d’indice d.
Remarquons que la DVS pose des problemes d’interpretabilite. En e⌅et, lescomposantes de Ck. peuvent etre positives ou negatives, et ne peuvent doncpas etre interpretes comme les occurrences de mots dans un ”document type”(un document imaginaire absent de la base de documents initiaux, dont nousaurions aime nous servir pour l’interpretation des resultats). La decompositionen valeurs singulieres ne permet donc pas d’exprimer un document comme unecombinaison lineaire de documents type.
4.2 Factorisation en matrices non negatives
La factorisation en matrices non negatives (FMN) est une methode factorisa-tion matricielle, introduite par [25]. Elle permet d’approximer une matrice X detaille (m⇥D) et dont les elements sont tous positifs, grace a une decompositionde la forme X ⇧ BC, ou B et C sont des matrices (m⇥K) et (K⇥D). Les lignesde la matrice X decrivent m objets par autant de vecteurs de dimension D, leslignes de la matrice B contiennent les representations des memes objets dansun espace de dimension K < D, et la matrice C contient les K vecteurs de base.
L’originalite de la FMN reside dans les contraintes de non-negativite qu’elleimpose a B et C. Les auteurs montrent que ces contraintes obligent aux elementsdes matrices B et C a comporter beaucoup de 0. En particulier pour la ma-trice C, ils montrent que les vecteurs de base (contenus dans les lignes deC) se chevauchent rarement. La representation d’un objet comme une com-binaison lineaire de ces vecteurs de base, correspond alors a l’intuition d’unedecomposition par parties. Les conditions sous lesquelles la FMN permet ef-fectivement de retrouver les parties latentes d’un ensemble de donnees ont eteetudiees par [16]. La FMN a ete appliquee avec succes, notamment en recon-naissance des visages [25] (voir l’illustration ) et en classification de documentstextuels [34].
Revenons a l’application de la FMN aux donnees textuelles. Les vecteursde base Ck. ↵ D
+ sont maintenant a valeurs positives, et peuvent donc etreinterpretes de la maniere suivante. Le vecteur Ck. definit un document imagi-naire, appele ”document type”, et dans lequel le mot d’indice d est d’autantplus important que Ckd est eleve. Chaque document i est donc une combinai-son lineaire de ces documents type. De plus les coe⌥cients de la combinaisonlineaire (contenus dans le vecteur Bi. ↵ K
+ ) sont positifs. Nous pouvons doncinterpreter le coe⌥cient Bik comme une mesure de l’importance du documenttype k dans le document i. Plus Bik est grand, et plus le document type k ”ex-plique” le document i. Ce type d’interpretation n’est pas possible avec la DVSdecrite precedemment a cause de la presence de coe⌥cients negatifs.
12
Vincent Guigue Analyse sémantique 31/42
BOW Modèles proba. Sémantique LSA Usages
LSA : variante (2) k-means
◦ Trouver du sens = problème de clustering◦ Modélisation (toujours BOW) :
X =
tj↓
di →
x1,1 . . . x1,D...
. . ....
xN,1 . . . xN,D
◦ Algorithme (simple) pour arriver à ça : CEMAppliquer sur la matrice d’occurrences avec une modélisationmultinomiale, = k-means
Quelle métrique utiliser ?
Vincent Guigue Analyse sémantique 32/42
BOW Modèles proba. Sémantique LSA Usages
Distance euclidienne et malédiction de la di-mensionnalité
Soit une matrice de document(fictive) en 3 dimensions :◦ normalisation tf
[ 1. 0. 0. ][ 0.5 0.5 0. ][ 0. 0. 1. ]
Ajout de dimensions :X = np . where ( rand . rand (3 , dim ) >0.99 , 1 . , 0 . )X [ : , : 3 ] = np . a r r a y ( [ [ 1 , 0 , 0 ] , [ 1 , 1 , 0 ] , [ 0 , 0 , 1 ] ] )X /= X. sum ( 1 ) . r e shape (3 , 1)D = np . a r r a y ( [ [ ( ( X[ i ] − X[ j ] ) ∗ ∗ 2 ) . sum ( ) f o r i i n range ( l en (X ) ) ] f o r j i n range ( l en (X ) ) ] )D2 = np . a r r a y ( [ [ ( ( X[ i ] ∗ X[ j ] ) ) . sum ( ) f o r i i n range ( l en (X ) ) ] f o r j i n range ( l en (X ) ) ] )
Vincent Guigue Analyse sémantique 33/42
BOW Modèles proba. Sémantique LSA Usages
Distance euclidienne et malédiction de la di-mensionnalité
Soit une matrice de document(fictive) en 3 dimensions :◦ normalisation tf
[ 1. 0. 0. ][ 0.5 0.5 0. ][ 0. 0. 1. ]
Ajout de dimensions :X = np . where ( rand . rand (3 , dim ) >0.99 , 1 . , 0 . )X [ : , : 3 ] = np . a r r a y ( [ [ 1 , 0 , 0 ] , [ 1 , 1 , 0 ] , [ 0 , 0 , 1 ] ] )X /= X. sum ( 1 ) . r e shape (3 , 1)D = np . a r r a y ( [ [ ( ( X[ i ] − X[ j ] ) ∗ ∗ 2 ) . sum ( ) f o r i i n range ( l en (X ) ) ] f o r j i n range ( l en (X ) ) ] )D2 = np . a r r a y ( [ [ ( ( X[ i ] ∗ X[ j ] ) ) . sum ( ) f o r i i n range ( l en (X ) ) ] f o r j i n range ( l en (X ) ) ] )
Vincent Guigue Analyse sémantique 33/42
BOW Modèles proba. Sémantique LSA Usages
Curse of dimensionality
Distance euclidienne
Dim = 3[ 0. 0.5 2. ][ 0.5 0. 1.5][ 2. 1.5 0. ]Dim = 40[ 0. 0.5 1.5 ][ 0.5 0. 1.33][ 1.5 1.33 0. ]Dim = 1000[ 0. 0.19 0.21][ 0.19 0. 0.13][ 0.21 0.13 0. ]
Produit scalaire (similaritécosinus)
Dim = 3[ 1. 0.5 0. ][ 0.5 0.5 0. ][ 0. 0. 1. ]Dim = 40[ 0.5 0.16 0. ][ 0.16 0.33 0. ][ 0. 0. 1. ]Dim=1000[ 0.14 0.01 0. ][ 0.01 0.07 0.00][ 0. 0.00 0.07]
Vincent Guigue Analyse sémantique 34/42
BOW Modèles proba. Sémantique LSA Usages
Généralisation probabiliste CEM
◦ k clusters◦ Proba a priori : πk = p(clusterk)
◦ Probabilité d’un mot dans un cluster : p(wj |θk) = Ed∈Dk[wj ]
◦ Affectation d’un document dans un cluster (hard assignment) :p(yi = k) = 1/0
yi = argmaxk
p(di |θk) = argmaxk
∑
wj∈dilog p(wj |θk)
yi = argmaxk
∑
j
tijθjk , θjk = log p(wj |θk)
Algo :Init. Paramètres OU affectationC/E Calcul des affectations des documentsM Mise à jour des paramètres
Vincent Guigue Analyse sémantique 35/42
BOW Modèles proba. Sémantique LSA Usages
PLSAProbabilistic Latent Semantic Analysis◦ Idée : CEM ⇒ EM (un peu plus complexe)◦ Un mot appartient à tous les clusters avec des probabilités◦ Modélisation graphique (=comment sont générer les mots) :
Fig. 1 – Modele graphique de PLSA.
est une paire (d, w), c’est a dire l’occurrence jointe des deux evenement d et w.Remarquons que cela contraste fortement avec la representation vectorielle, ouce que nous entendons par ”observation” est l’observation d’un vecteur. En cen-trant ainsi la representation des donnees sur la notion de co-occurrence plutotque sur celle de vecteur, les donnees de co-occurrence permettent de modeliserde nouveaux phenomenes.
Les donnees textuelles se pretent naturellement a une modelisation modelisercomme des donnees de co-occurrence. Les deux variables discretes considereessont un indice d identifiant chaque document de la collection ( d ↵ {1, ..., D}) et un indice w identifiant chaque mot de la collection ( w ↵ {1, ...,W}). Lacollection de documents est modelisee non plus comme un ensemble de vecteurs(ou chaque vecteur represente un document), mais comme un ensemble de paires(d, w), ou chaque paire est l’observation de la realisation de l’indice de mot w etde l’indice de document d. Autrement dit ce n’est plus le document n’est plus aucentre de la modelisation des donnees textuelles, mais la paire de co-occurrenceentre un mot et un document.
3.2.2 Probabilistic latent semantic analysis
Le modele probabilistic latent semantic analysis (PLSA) [21] est un modelestandard de la litterature pour modeliser des donnees textuelles. C’est une ex-tension probabiliste du modele LSI [12]. Avec le modele PLSA, une collection dedocuments est modelisee comme un ensemble de paires (d, w) ou d ↵ {1, ..., D}est un indice de document et w ↵ {1, ...,W} est un indice de mot. Chaque do-cument est represente par une distribution de probabilite sur les K valeurs dela variable thematique latente �, et chaque valeur de � correspond a une dis-tribution de probabilite sur l’ensemble des mots de la collection. Le processusgeneratif correspondant est le suivant :
– un document d est tire suivant la probabilite P (d),– une thematique � est tiree suivant la probabilite P (�|d),– un mot w est tire suivant la probabilite P (w|�).Le modele graphique de PLSA est illustre dans la figure 1.
Apprentissage du modele Les parametres du modele P (d), P (�|d), et P (w|�)sont estimes suivant le principe du maximum de vraisemblance. La fonction de
6
◦ On estime donc des matrices :- p(d)- p(α|d)- p(w |α)
Vincent Guigue Analyse sémantique 36/42
BOW Modèles proba. Sémantique LSA Usages
PLSA : algorithme
log-vraisemblance a maximiser est :
L =
D�
d=1
W�
w=1
n(d, w)log P (d, w) (3)
La variable thematique � n’etant pas observee, les parametres du modelesont estimes suivant la procedure Esperance Maximisation (EM) [14]. L’etapeE consiste a estimer les probabilites a posteriori de la variable latente �. Laformule de mise a jour est :
P (�|d, w) =P (d)P (�|d)P (w|�)⌥
��⇤A P (d)P (�⇥|d)P (w|�⇥)
L’etape M consiste a re-estimer les parametres du modele, afin qu’ils maxi-misent l’esperance de la log-vraisemblance. Les formules de mise a jour corres-pondantes sont :
P (d) =
⌥w⇤W n(d, w)⌥
d�⇤D⌥
w⇤W n(d⇥, w)
P (�|d) =
⌥w⇤W n(d, w)P (�|d, w)⌥
��⇤A⌥
w⇤W n(d, w)P (�⇥|d, w)
P (w|�) =
⌥d⇤D n(d, w)P (�|d, w)⌥
w�⇤W⌥
d⇤D n(d, w⇥)P (�|d, w⇥)
Limites du modele Comme nous l’avons souligne, le modele PLSA representechaque document comme une distribution de probabilite {p(� = 1|d), ..., p(� =A|d)} sur les thematiques. Les probabilites p(�|d) sont autant de parametresappris par l’algorithme EM decrit precedemment, et en particulier il n’y a pasde processus generatif pour modeliser ces probabilites. Cela a deux consequencesprincipales. Premierement, le nombre de parametres du modele augmente lineairementavec le nombre de documents dans la collection, ce qui peut causer des problemesde surapprentissage. Deuxiemement, les parametres p(�|d) ne peuvent etre es-times que pour des documents presents dans la base d’apprentissage. Il faut donctrouver un moyen de traiter de nouveaux documents, c’est a dire de determinerles parametres p(�|d⇥) pour un document d⇥qui n’etait pas dans la base d’ap-prentissage.
Remarquons egalement que le modele PLSA n’est capable d’extraire qu’uneliste ”plate” de thematiques. Or en pratique, il existe souvent des relationshierarchiques entre les di⌅erentes thematiques presentes dans un corpus de docu-ments. Une thematique generale sur le sport peut par exemple inclure plusieurssous-thematiques relatives a des sports di⌅erents. Plusieurs travaux proposentde modeliser cet aspect hierarchique entre les thematiques. Citons notamment[18] qui proposent une extension de PLSA, dans le cadre du clustering et de laclassification de documents.
3.2.3 Extension de PLSA
Dans cette section nous presentons une extension du modele PLSA proposeepar [23]. Alors qu’avec PLSA les mots ne sont generes que par les thematiques,
7
◦ Expectation (proba des variables manquantes)◦ Maximization
Vincent Guigue Analyse sémantique 37/42
BOW Modèles proba. Sémantique LSA Usages
PLSA : algorithme
log-vraisemblance a maximiser est :
L =
D�
d=1
W�
w=1
n(d, w)log P (d, w) (3)
La variable thematique � n’etant pas observee, les parametres du modelesont estimes suivant la procedure Esperance Maximisation (EM) [14]. L’etapeE consiste a estimer les probabilites a posteriori de la variable latente �. Laformule de mise a jour est :
P (�|d, w) =P (d)P (�|d)P (w|�)⌥
��⇤A P (d)P (�⇥|d)P (w|�⇥)
L’etape M consiste a re-estimer les parametres du modele, afin qu’ils maxi-misent l’esperance de la log-vraisemblance. Les formules de mise a jour corres-pondantes sont :
P (d) =
⌥w⇤W n(d, w)⌥
d�⇤D⌥
w⇤W n(d⇥, w)
P (�|d) =
⌥w⇤W n(d, w)P (�|d, w)⌥
��⇤A⌥
w⇤W n(d, w)P (�⇥|d, w)
P (w|�) =
⌥d⇤D n(d, w)P (�|d, w)⌥
w�⇤W⌥
d⇤D n(d, w⇥)P (�|d, w⇥)
Limites du modele Comme nous l’avons souligne, le modele PLSA representechaque document comme une distribution de probabilite {p(� = 1|d), ..., p(� =A|d)} sur les thematiques. Les probabilites p(�|d) sont autant de parametresappris par l’algorithme EM decrit precedemment, et en particulier il n’y a pasde processus generatif pour modeliser ces probabilites. Cela a deux consequencesprincipales. Premierement, le nombre de parametres du modele augmente lineairementavec le nombre de documents dans la collection, ce qui peut causer des problemesde surapprentissage. Deuxiemement, les parametres p(�|d) ne peuvent etre es-times que pour des documents presents dans la base d’apprentissage. Il faut donctrouver un moyen de traiter de nouveaux documents, c’est a dire de determinerles parametres p(�|d⇥) pour un document d⇥qui n’etait pas dans la base d’ap-prentissage.
Remarquons egalement que le modele PLSA n’est capable d’extraire qu’uneliste ”plate” de thematiques. Or en pratique, il existe souvent des relationshierarchiques entre les di⌅erentes thematiques presentes dans un corpus de docu-ments. Une thematique generale sur le sport peut par exemple inclure plusieurssous-thematiques relatives a des sports di⌅erents. Plusieurs travaux proposentde modeliser cet aspect hierarchique entre les thematiques. Citons notamment[18] qui proposent une extension de PLSA, dans le cadre du clustering et de laclassification de documents.
3.2.3 Extension de PLSA
Dans cette section nous presentons une extension du modele PLSA proposeepar [23]. Alors qu’avec PLSA les mots ne sont generes que par les thematiques,
7
◦ Expectation (proba des variables manquantes)
log-vraisemblance a maximiser est :
L =D�
d=1
W�
w=1
n(d, w)log P (d, w) (3)
La variable thematique � n’etant pas observee, les parametres du modelesont estimes suivant la procedure Esperance Maximisation (EM) [14]. L’etapeE consiste a estimer les probabilites a posteriori de la variable latente �. Laformule de mise a jour est :
P (�|d, w) =P (d)P (�|d)P (w|�)⌥
��⇤A P (d)P (�⇥|d)P (w|�⇥)
L’etape M consiste a re-estimer les parametres du modele, afin qu’ils maxi-misent l’esperance de la log-vraisemblance. Les formules de mise a jour corres-pondantes sont :
P (d) =
⌥w⇤W n(d, w)⌥
d�⇤D⌥
w⇤W n(d⇥, w)
P (�|d) =
⌥w⇤W n(d, w)P (�|d, w)⌥
��⇤A⌥
w⇤W n(d, w)P (�⇥|d, w)
P (w|�) =
⌥d⇤D n(d, w)P (�|d, w)⌥
w�⇤W⌥
d⇤D n(d, w⇥)P (�|d, w⇥)
Limites du modele Comme nous l’avons souligne, le modele PLSA representechaque document comme une distribution de probabilite {p(� = 1|d), ..., p(� =A|d)} sur les thematiques. Les probabilites p(�|d) sont autant de parametresappris par l’algorithme EM decrit precedemment, et en particulier il n’y a pasde processus generatif pour modeliser ces probabilites. Cela a deux consequencesprincipales. Premierement, le nombre de parametres du modele augmente lineairementavec le nombre de documents dans la collection, ce qui peut causer des problemesde surapprentissage. Deuxiemement, les parametres p(�|d) ne peuvent etre es-times que pour des documents presents dans la base d’apprentissage. Il faut donctrouver un moyen de traiter de nouveaux documents, c’est a dire de determinerles parametres p(�|d⇥) pour un document d⇥qui n’etait pas dans la base d’ap-prentissage.
Remarquons egalement que le modele PLSA n’est capable d’extraire qu’uneliste ”plate” de thematiques. Or en pratique, il existe souvent des relationshierarchiques entre les di⌅erentes thematiques presentes dans un corpus de docu-ments. Une thematique generale sur le sport peut par exemple inclure plusieurssous-thematiques relatives a des sports di⌅erents. Plusieurs travaux proposentde modeliser cet aspect hierarchique entre les thematiques. Citons notamment[18] qui proposent une extension de PLSA, dans le cadre du clustering et de laclassification de documents.
3.2.3 Extension de PLSA
Dans cette section nous presentons une extension du modele PLSA proposeepar [23]. Alors qu’avec PLSA les mots ne sont generes que par les thematiques,
7
◦ Maximization
Vincent Guigue Analyse sémantique 37/42
BOW Modèles proba. Sémantique LSA Usages
PLSA : algorithmelog-vraisemblance a maximiser est :
L =
D�
d=1
W�
w=1
n(d, w)log P (d, w) (3)
La variable thematique � n’etant pas observee, les parametres du modelesont estimes suivant la procedure Esperance Maximisation (EM) [14]. L’etapeE consiste a estimer les probabilites a posteriori de la variable latente �. Laformule de mise a jour est :
P (�|d, w) =P (d)P (�|d)P (w|�)⌥
��⇤A P (d)P (�⇥|d)P (w|�⇥)
L’etape M consiste a re-estimer les parametres du modele, afin qu’ils maxi-misent l’esperance de la log-vraisemblance. Les formules de mise a jour corres-pondantes sont :
P (d) =
⌥w⇤W n(d, w)⌥
d�⇤D⌥
w⇤W n(d⇥, w)
P (�|d) =
⌥w⇤W n(d, w)P (�|d, w)⌥
��⇤A⌥
w⇤W n(d, w)P (�⇥|d, w)
P (w|�) =
⌥d⇤D n(d, w)P (�|d, w)⌥
w�⇤W⌥
d⇤D n(d, w⇥)P (�|d, w⇥)
Limites du modele Comme nous l’avons souligne, le modele PLSA representechaque document comme une distribution de probabilite {p(� = 1|d), ..., p(� =A|d)} sur les thematiques. Les probabilites p(�|d) sont autant de parametresappris par l’algorithme EM decrit precedemment, et en particulier il n’y a pasde processus generatif pour modeliser ces probabilites. Cela a deux consequencesprincipales. Premierement, le nombre de parametres du modele augmente lineairementavec le nombre de documents dans la collection, ce qui peut causer des problemesde surapprentissage. Deuxiemement, les parametres p(�|d) ne peuvent etre es-times que pour des documents presents dans la base d’apprentissage. Il faut donctrouver un moyen de traiter de nouveaux documents, c’est a dire de determinerles parametres p(�|d⇥) pour un document d⇥qui n’etait pas dans la base d’ap-prentissage.
Remarquons egalement que le modele PLSA n’est capable d’extraire qu’uneliste ”plate” de thematiques. Or en pratique, il existe souvent des relationshierarchiques entre les di⌅erentes thematiques presentes dans un corpus de docu-ments. Une thematique generale sur le sport peut par exemple inclure plusieurssous-thematiques relatives a des sports di⌅erents. Plusieurs travaux proposentde modeliser cet aspect hierarchique entre les thematiques. Citons notamment[18] qui proposent une extension de PLSA, dans le cadre du clustering et de laclassification de documents.
3.2.3 Extension de PLSA
Dans cette section nous presentons une extension du modele PLSA proposeepar [23]. Alors qu’avec PLSA les mots ne sont generes que par les thematiques,
7
◦ Expectation (proba des variables manquantes)◦ Maximization
log-vraisemblance a maximiser est :
L =
D�
d=1
W�
w=1
n(d, w)log P (d, w) (3)
La variable thematique � n’etant pas observee, les parametres du modelesont estimes suivant la procedure Esperance Maximisation (EM) [14]. L’etapeE consiste a estimer les probabilites a posteriori de la variable latente �. Laformule de mise a jour est :
P (�|d, w) =P (d)P (�|d)P (w|�)⌥
��⇤A P (d)P (�⇥|d)P (w|�⇥)
L’etape M consiste a re-estimer les parametres du modele, afin qu’ils maxi-misent l’esperance de la log-vraisemblance. Les formules de mise a jour corres-pondantes sont :
P (d) =
⌥w⇤W n(d, w)⌥
d�⇤D⌥
w⇤W n(d⇥, w)
P (�|d) =
⌥w⇤W n(d, w)P (�|d, w)⌥
��⇤A⌥
w⇤W n(d, w)P (�⇥|d, w)
P (w|�) =
⌥d⇤D n(d, w)P (�|d, w)⌥
w�⇤W⌥
d⇤D n(d, w⇥)P (�|d, w⇥)
Limites du modele Comme nous l’avons souligne, le modele PLSA representechaque document comme une distribution de probabilite {p(� = 1|d), ..., p(� =A|d)} sur les thematiques. Les probabilites p(�|d) sont autant de parametresappris par l’algorithme EM decrit precedemment, et en particulier il n’y a pasde processus generatif pour modeliser ces probabilites. Cela a deux consequencesprincipales. Premierement, le nombre de parametres du modele augmente lineairementavec le nombre de documents dans la collection, ce qui peut causer des problemesde surapprentissage. Deuxiemement, les parametres p(�|d) ne peuvent etre es-times que pour des documents presents dans la base d’apprentissage. Il faut donctrouver un moyen de traiter de nouveaux documents, c’est a dire de determinerles parametres p(�|d⇥) pour un document d⇥qui n’etait pas dans la base d’ap-prentissage.
Remarquons egalement que le modele PLSA n’est capable d’extraire qu’uneliste ”plate” de thematiques. Or en pratique, il existe souvent des relationshierarchiques entre les di⌅erentes thematiques presentes dans un corpus de docu-ments. Une thematique generale sur le sport peut par exemple inclure plusieurssous-thematiques relatives a des sports di⌅erents. Plusieurs travaux proposentde modeliser cet aspect hierarchique entre les thematiques. Citons notamment[18] qui proposent une extension de PLSA, dans le cadre du clustering et de laclassification de documents.
3.2.3 Extension de PLSA
Dans cette section nous presentons une extension du modele PLSA proposeepar [23]. Alors qu’avec PLSA les mots ne sont generes que par les thematiques,
7
Vincent Guigue Analyse sémantique 37/42
BOW Modèles proba. Sémantique LSA Usages
PLSA : résultats
Apprentissage�Statistique�����Ͳ P.�Gallinari 155
PLSA�as�a�graphical�model
°
°®
¦z
dzPzwPdwP
dwPdPwdP
)()()(
)(*)(),(
Boxes represent repeated samplingd wz
Corpus level
Document level
P(z|d) P(w|z)
DNd
Apprentissage�Statistique�����Ͳ P.�Gallinari 157
PLSA�Ͳ geometric�interpretation
• Topici is�a�point�on�the�word�simplex• Documents�are�constrained�to�lie�on�the�topic�simplex• Creates�a�bottleneck�in�document�representation
Topic simplex
topic2
topic1
topic3w2 w1
w3
Word simplex
Document d
¦ z
dzPzwPdwP )()()(
Vincent Guigue Analyse sémantique 38/42
BOW Modèles proba. Sémantique LSA Usages
LDA
Latent Dirichlet Allocation :
Fig. 3 – Modele graphique de LDA. Les boites correspondent a des tirages repetes desvariables aleatoires qu’elles contiennent. La boite exterieure represente les documents, la boiteinterieure represente la repetition du choix des thematiques et des mots a l’interieur d’undocument.
Complexite algorithmique Les auteurs montrent que l’etape E se calculeen O(|D| ⇥ |W| ⇥ |A| ⇥ |⇤|). L’etape M se calcule en O(|D| ⇥ |W| ⇥ |A| ⇥ |⇤|).La complexite totale de PLSA etendu est donc en O(|D|⇥ |W|⇥ |A|⇥ |⇤|⇥T ),ou T est le nombre maximal d’iterations.
3.3 Latent dirichlet allocation
Le modele latent dirichlet allocation (LDA) [6] determine un ensemble dethematiques latentes dans un ensemble de documents, chaque thematique etantrepresentee par une distribution de probabilite sur les mots. Chaque docu-ment est alors represente par comme une distribution de probabilite sur lesthematiques, c’est a dire par le vecteur de probabilites p(�|d). En revanche a ladi⌅erence de PLSA, le modele LDA suppose que ces vecteurs de probabilite nesont plus des parametres du modele, mais des vecteurs tires d’une distributionde probabilite de Dirichlet. Le modele LDA definit ainsi un modele generatif auniveau des documents, ce qui n’etait pas le cas de PLSA.
Avec le modele LDA, un document est genere de la maniere suivante. D’abordun vecteur ⌅ ↵ RK est tire de la distribution de Dirichlet. Ce vecteur est unedistribution de probabilite sur les thematiques (et verifie donc
⌥k ⌅k = 1 ),
et definit donc le poids de chaque thematique dans le document. Plus la com-posante ⌅k est grande, et plus la thematique a de chances d’apparaıtre dans ledocument. Puis pour generer chaque mot du document, une thematique est tireeselon la distribution multinomiale definie par ⌅ , et un mot est tire selon la dis-tribution de probabilite associee a la thematique choisie. Notons � le parametrede la distribution de Dirichlet et ⇥ l’ensemble des parametres des distributionsmultinomiales associees aux thematiques. Le modele graphique defini par LDAapparaıt dans la figure 3.
10
◦ Idée : ajouter un a priori sur la distribution des thèmes◦ Apprentissage par Gibbs sampling (∼ MCMC)
Vincent Guigue Analyse sémantique 39/42
BOW Modèles proba. Sémantique LSA Usages
Echantillonnage de Gibbs
Sur un exemple :Probabilistic Mixture Models
(a)
0 0.5 1
0
0.5
1
p(xi | zi, µ,Σ) = N (xi | µzi, Σzi
)
p(zi | π) = Cat(zi | π)
θk = {µk, Σk}
Vincent Guigue Analyse sémantique 40/42
BOW Modèles proba. Sémantique LSA Usages
Echantillonnage de GibbsMixture Sampler Pseudocode
Vincent Guigue Analyse sémantique 40/42
BOW Modèles proba. Sémantique LSA Usages
LDA/PLSA : extensions
◦ Modèle graphique... Assez souple
learn an eigen feature representation from a taskgraph representing features, instances and class la-bels. In a similar vein, Pan et al. (2010) proposed thespectral feature alignment (SFA) algorithm wheresome domain-independent words are used as abridge to construct a bipartite graph to model theco-occurrence relationship between domain-specificwords and domain-independent words. Feature clus-ters are generated by co-align domain-specific anddomain-independent words.
Graph-based approach has also been studied in(Wu et al., 2009) where a graph is built with nodesdenoting documents and edges denoting contentsimilarity between documents. The sentiment scoreof each unlabeled documents is recursively calcu-lated until convergence from its neighbors the ac-tual labels of source domain documents and pseudo-labels of target document documents. This approachwas later extended by simultaneously consideringrelations between documents and words from bothsource and target domains (Wu et al., 2010).
More recently, Seah et al. (2010) addressed theissue when the predictive distribution of class labelgiven input data of the domains differs and proposedPredictive Distribution Matching SVM learn a ro-bust classifier in the target domain by leveraging thelabeled data from only the relevant regions of multi-ple sources.
3 Joint Sentiment-Topic (JST) ModelAssume that we have a corpus with a collection of Ddocuments denoted by C = {d1, d2, ..., dD}; eachdocument in the corpus is a sequence of Nd wordsdenoted by d = (w1, w2, ..., wNd
), and each wordin the document is an item from a vocabulary indexwith V distinct terms denoted by {1, 2, ..., V }. Also,let S be the number of distinct sentiment labels, andT be the total number of topics. The generativeprocess in JST which corresponds to the graphicalmodel shown in Figure 1(a) is as follows:
• For each document d, choose a distributionºd ª Dir(∞).
• For each sentiment label l under document d,choose a distribution µd,l ª Dir(Æ).
• For each word wi in document d
– choose a sentiment label li ª Mult(ºd),
– choose a topic zi ª Mult(µd,li),– choose a word wi from 'li
zi, a Multino-
mial distribution over words conditionedon topic zi and sentiment label li.
w
z
NdS*T D
l
S
(a) JST model.
w
z
NdS*T D
l
SS
S
(b) Modified JST model.
Figure 1: JST model and its modified version.
Gibbs sampling was used to estimate the posteriordistribution by sequentially sampling each variableof interest, zt and lt here, from the distribution overthat variable given the current values of all othervariables and data. Letting the superscript °t de-note a quantity that excludes data from tth position,the conditional posterior for zt and lt by marginaliz-ing out the random variables ', µ, and º is
P (zt = j, lt = k|w, z°t, l°t,Æ,Ø, ∞) /N°t
wt,j,k+ Ø
N°tj,k + V Ø
·N°t
j,k,d + Æj,k
N°tk,d +
Pj Æj,k
·N°t
k,d + ∞
N°td + S∞
. (1)
where Nwt,j,k is the number of times word wt ap-peared in topic j and with sentiment label k, Nj,k
is the number of times words assigned to topic jand sentiment label k, Nj,k,d is the number of timesa word from document d has been associated withtopic j and sentiment label k, Nk,d is the number oftimes sentiment label k has been assigned to someword tokens in document d, and Nd is the total num-ber of words in the document collection.
In the modified JST model as shown in Fig-ure 1(b), we add an additional dependency link of
learn an eigen feature representation from a taskgraph representing features, instances and class la-bels. In a similar vein, Pan et al. (2010) proposed thespectral feature alignment (SFA) algorithm wheresome domain-independent words are used as abridge to construct a bipartite graph to model theco-occurrence relationship between domain-specificwords and domain-independent words. Feature clus-ters are generated by co-align domain-specific anddomain-independent words.
Graph-based approach has also been studied in(Wu et al., 2009) where a graph is built with nodesdenoting documents and edges denoting contentsimilarity between documents. The sentiment scoreof each unlabeled documents is recursively calcu-lated until convergence from its neighbors the ac-tual labels of source domain documents and pseudo-labels of target document documents. This approachwas later extended by simultaneously consideringrelations between documents and words from bothsource and target domains (Wu et al., 2010).
More recently, Seah et al. (2010) addressed theissue when the predictive distribution of class labelgiven input data of the domains differs and proposedPredictive Distribution Matching SVM learn a ro-bust classifier in the target domain by leveraging thelabeled data from only the relevant regions of multi-ple sources.
3 Joint Sentiment-Topic (JST) ModelAssume that we have a corpus with a collection of Ddocuments denoted by C = {d1, d2, ..., dD}; eachdocument in the corpus is a sequence of Nd wordsdenoted by d = (w1, w2, ..., wNd
), and each wordin the document is an item from a vocabulary indexwith V distinct terms denoted by {1, 2, ..., V }. Also,let S be the number of distinct sentiment labels, andT be the total number of topics. The generativeprocess in JST which corresponds to the graphicalmodel shown in Figure 1(a) is as follows:
• For each document d, choose a distributionºd ª Dir(∞).
• For each sentiment label l under document d,choose a distribution µd,l ª Dir(Æ).
• For each word wi in document d
– choose a sentiment label li ª Mult(ºd),
– choose a topic zi ª Mult(µd,li),– choose a word wi from 'li
zi, a Multino-
mial distribution over words conditionedon topic zi and sentiment label li.
w
z
NdS*T D
l
S
(a) JST model.
w
z
NdS*T D
l
SS
S
(b) Modified JST model.
Figure 1: JST model and its modified version.
Gibbs sampling was used to estimate the posteriordistribution by sequentially sampling each variableof interest, zt and lt here, from the distribution overthat variable given the current values of all othervariables and data. Letting the superscript °t de-note a quantity that excludes data from tth position,the conditional posterior for zt and lt by marginaliz-ing out the random variables ', µ, and º is
P (zt = j, lt = k|w, z°t, l°t,Æ,Ø, ∞) /N°t
wt,j,k+ Ø
N°tj,k + V Ø
·N°t
j,k,d + Æj,k
N°tk,d +
Pj Æj,k
·N°t
k,d + ∞
N°td + S∞
. (1)
where Nwt,j,k is the number of times word wt ap-peared in topic j and with sentiment label k, Nj,k
is the number of times words assigned to topic jand sentiment label k, Nj,k,d is the number of timesa word from document d has been associated withtopic j and sentiment label k, Nk,d is the number oftimes sentiment label k has been assigned to someword tokens in document d, and Nd is the total num-ber of words in the document collection.
In the modified JST model as shown in Fig-ure 1(b), we add an additional dependency link of
learn an eigen feature representation from a taskgraph representing features, instances and class la-bels. In a similar vein, Pan et al. (2010) proposed thespectral feature alignment (SFA) algorithm wheresome domain-independent words are used as abridge to construct a bipartite graph to model theco-occurrence relationship between domain-specificwords and domain-independent words. Feature clus-ters are generated by co-align domain-specific anddomain-independent words.
Graph-based approach has also been studied in(Wu et al., 2009) where a graph is built with nodesdenoting documents and edges denoting contentsimilarity between documents. The sentiment scoreof each unlabeled documents is recursively calcu-lated until convergence from its neighbors the ac-tual labels of source domain documents and pseudo-labels of target document documents. This approachwas later extended by simultaneously consideringrelations between documents and words from bothsource and target domains (Wu et al., 2010).
More recently, Seah et al. (2010) addressed theissue when the predictive distribution of class labelgiven input data of the domains differs and proposedPredictive Distribution Matching SVM learn a ro-bust classifier in the target domain by leveraging thelabeled data from only the relevant regions of multi-ple sources.
3 Joint Sentiment-Topic (JST) ModelAssume that we have a corpus with a collection of Ddocuments denoted by C = {d1, d2, ..., dD}; eachdocument in the corpus is a sequence of Nd wordsdenoted by d = (w1, w2, ..., wNd
), and each wordin the document is an item from a vocabulary indexwith V distinct terms denoted by {1, 2, ..., V }. Also,let S be the number of distinct sentiment labels, andT be the total number of topics. The generativeprocess in JST which corresponds to the graphicalmodel shown in Figure 1(a) is as follows:
• For each document d, choose a distributionºd ª Dir(∞).
• For each sentiment label l under document d,choose a distribution µd,l ª Dir(Æ).
• For each word wi in document d
– choose a sentiment label li ª Mult(ºd),
– choose a topic zi ª Mult(µd,li),– choose a word wi from 'li
zi, a Multino-
mial distribution over words conditionedon topic zi and sentiment label li.
w
z
NdS*T D
l
S
(a) JST model.
w
z
NdS*T D
l
SS
S
(b) Modified JST model.
Figure 1: JST model and its modified version.
Gibbs sampling was used to estimate the posteriordistribution by sequentially sampling each variableof interest, zt and lt here, from the distribution overthat variable given the current values of all othervariables and data. Letting the superscript °t de-note a quantity that excludes data from tth position,the conditional posterior for zt and lt by marginaliz-ing out the random variables ', µ, and º is
P (zt = j, lt = k|w, z°t, l°t,Æ,Ø, ∞) /N°t
wt,j,k+ Ø
N°tj,k + V Ø
·N°t
j,k,d + Æj,k
N°tk,d +
Pj Æj,k
·N°t
k,d + ∞
N°td + S∞
. (1)
where Nwt,j,k is the number of times word wt ap-peared in topic j and with sentiment label k, Nj,k
is the number of times words assigned to topic jand sentiment label k, Nj,k,d is the number of timesa word from document d has been associated withtopic j and sentiment label k, Nk,d is the number oftimes sentiment label k has been assigned to someword tokens in document d, and Nd is the total num-ber of words in the document collection.
In the modified JST model as shown in Fig-ure 1(b), we add an additional dependency link of
Vincent Guigue Analyse sémantique 41/42
BOW Modèles proba. Sémantique LSA Usages
Dualité entre les mots et les documents
◦ Sémantique sur les mots = construction d’une métrique entremots
- Extensions de requêtes-
◦ Sémantique des documents = construction d’une métriqueentre documents
- Retrouver les documents les plus proches d’un document- QA- RI
Vincent Guigue Analyse sémantique 42/42