Début section embeddings

This commit is contained in:
François Pelletier 2019-12-09 01:28:15 -05:00
parent 440dc7d361
commit 5631098783
3 changed files with 57 additions and 0 deletions

BIN
NeuralNetwork.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 203 KiB

View file

@ -615,6 +615,9 @@ $$
- Entrée
- Cachées (représentation intermédiaire)
- Sortie
![Un réseau de neurones feedforward](NeuralNetwork.png)
- Notation matricielle:
$$
@ -663,7 +666,61 @@ Approches:
# Plongements de mots
Représentations d'un mot:
- Vecteur one-hot (indicateur 1 sur le mot exact):
- [0 0 0 0 1 0 0 0 0 ...] (chat)
- Expansion de mots similaires (ex: synonymes et hyperonymes de WordNet):
- [0,1,...,0,1,0,0,1,...] (animal, chat, félin, mammifère)
- Vecteur de contexte (compte, Positive Pointwise Mutual Information - PPMI)
- [0,1,...,0,1,0,0,1,0,1,0,1,...] (animal, chat, félin, litière, poil, lait, boire)
Inconvénients:
- Ces vecteurs sont parfois très longs et contiennent de nombreux 0.
- On veut des vecteurs **courts** et **denses** (Entre 50 et 1000 dimensions).
- Facile à emmagasiner et à charger en mémoire
- Attributs de classificateurs (moins de paramètres ou de poids)
- Les dimensions recoupent des mots différents
- Un peu comme un PCA, mais pour des mots.
Approches possibles:
- Réduction de dimensionnalité
- Réseaux de neurones
## Réduction de dimensionnalité
- Plusieurs matrices de plus petite dimension
- Matrice mots-contexte décomposée en matrice de mots (plongement de mot) et matrice de contextes (plongement de contexte):
- $(|v| \times c) = (|V| \times m)(m \times c)$
- Décomposition en valeur singulière
- Latent semantic analysis (LSA)
- 3 matrices: $(|V| \times c) = (|V| \times m) (m \times m) (m \times c)$
- $X = W \Sigma C$ où $\Sigma$ est une matrice diagonale de valeurs singulières $\sigma_1, \ldots, \sigma_m$. On conserve les lignes et les colonnes pour les $k$ plus grandes valeurs singulières afin de réduire la dimensionnalité.
Avantages:
- Retire l'information moins importante
- Capacité de généralisation
- Facilite l'apprentissage
Inconvénients
- Pas nécessairement meilleur que PPMI
- Effort de calcul considérable
## Réseaux de neurones
- On construit un plongement de mots à l'aide d'un réseau de neurones encodeur-décodeur. La première section du réseau représente le mot et la seconde tente de recréer le contexte (le mot suivant, par exemple)
![Réseau de neurones](neural-network-1.png)
### Word2vec
- CBOW (Continuous bag of words)
- Skip-gram
# Modèles et applications

BIN
neural-network-1.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 18 KiB