Explorer les Livres électroniques
Catégories
Explorer les Livres audio
Catégories
Explorer les Magazines
Catégories
Explorer les Documents
Catégories
Philippe Giguère
Auto-encodeur
Problèmes des données étiquetées
3
Pertes
• Supervisé : perte basée sur l’erreur entre
prédiction et vérité-terrain
(+régularisation)
• Non-supervisé : erreur basée sur la
reconstruction de l’entrée x
auto-encodeur
x f ( x ) h g ( h) x’ x f ( x ) h g ( h) x’
9
Exemple de manifold
0 9
8
7
3
1
5
L.J.P. van der Maaten and G.E. Hinton. Visualizing High-Dimensional Data Using
t-SNE. Journal of Machine Learning Research 9(Nov):2579-2605, 2008. 11
Familles auto-encodeurs (AE)
• Sparse
• Denoising
• Contractive
• Variational (VAE)
12
Auto-encodeur sparse
• Perte supplémentaire sur le code h :
J ( ) L x, g ( f ( x)) (h)
• Exemple : perte L1
(h) hi
i
• Cousin du sparse coding
• Constitue un prior sur les modèles de h
pour la génération des données x
• Semble aider pour des tâches connexes de
classification
13
AE denoising
• Ajoute du bruit aléatoire à l’entrée x
bruit
+
x + x f ( x ) h g ( h) perte
i
hi hi
vs.
x
forte pénalité faible pénalité x
embedding
m
x f ( x) pige h g ( h) x’
S
Distribution normale
• Perte : Reconstruction + KL divergence (pour forcer la
distribution d’être proche d’une normale)
• L’encodeur en charge d’estimer les paramètres de
génération
• Entraînement plus complexe (reparameterization
trick) car gradient ne passe pas sampling 19
Autoencodeur : application
• Réduction de dimensionnalité pour
classification (généralisation)
• Permet de combiner non-supervisé avec
supervisé : semi-supervisé
20
Deep AE : entraînement par couche
• Si difficulté d’entraîner un AE profond,
possibilité d’y aller de manière vorace,
couche par couche
h
x f1 ( x)
1
g1 (h)
Perte
21
Deep AE : entraînement par couche
• Si difficulté d’entraîner un AE profond,
possibilité d’y aller de manière vorace,
couche par couche
h h
f 2 ( x) g 2 ( h)
1 2
Perte
22
Word2vec
Word2vec
• Encodage 1-hot n’est pas informatif
– distance entre deux mots quelconques est
TOUJOURS la même
• distance L² = 2
• distance cosine = 0
– d(poutine,arbre) = d(maison, habitation)
• Cherche représentation distribuée et continue
– 1-hot vecteur (embedding, plongement)
– RNN fait un peu cela
• Architecture simple (pas deep), pour passage
à l’échelle
– Entraînement sur 1.6 milliards de mots, sur 125-
180 CPU en parallèle
25
Contexte du voisinage
• Vous obtenez beaucoup d’information sur
le sens d’un mot en regardant son
voisinage dans une phrase
« You shall know a word by the company it keeps »
-J.R. Firth, 1957
T=3 T=3
28
Paramètres entraînables
• Chaque mot aura deux vecteurs associés :
va
v
abaca mapping 1-hot vers h (W)
Ajuster représentation vectorielle
vzygote
par descente du gradient pour
ua optimiser les 2 tâches de
prédiction précédentes
uabaca prédire mot dans voisinage (W’)
u zygote 29
Tâche 1 : prédiction d’un mot
CBOW (continuous bag-of-words)
(ne tient pas compte de l’ordre des mots) entrées 1-hot
prédire le mot
manquant
S 0
o 0
1
f
0
t .
m 0
a 0
x 0
vrais
mot au
centre
30
Réseau linéaire
Tâche 1 : prédiction d’un mot
CBOW (continuous bag-of-words)
(ne tient pas compte de l’ordre des mots) entrées 1-hot
gradient
S
o 0
1
f
0
t .
m 0
a 0
x 0
vrais
mot au
centre
31
Réseau linéaire
Tâche 2 : prédire mots voisins
vrais
Architecture skip-gram mots
S 0
o 0
1
f
0
t .
m 0
prédire les mots a
x
0
0
avoisinants
S 0
gradient
o 0
0
f
0
t .
m 0
a 1
x 0
S 1
o 0
f 0
0
t
.
m
0
a 0
x 0
32
Arithmétique sur embeddings?
• Quelle est la réponse à cette énigme :
Rome!
33
Algèbre sur ces vecteurs
34
Performance
35