Embeddings: representar cosas como vectores
Lo esencial
- 1Un vector one-hot pone todas las palabras igual de lejos unas de otras. Un embedding es un vector corto y denso, aprendido de los datos, en el que las cosas parecidas quedan cerca; se comparan con la similitud coseno.
- 2Según la hipótesis distribucional, las palabras que aparecen en contextos parecidos tienen significados parecidos. Skip-gram con muestreo negativo aprende un vector por palabra distinguiendo las parejas de palabras vecinas reales de parejas sorteadas al azar; entrenado con el Quijote, junta «ínsula» con «gobierno» y «cura» con «barbero».
- 3nn.Embedding es una tabla que se aprende: equivale a multiplicar un vector one-hot por una matriz. Promediar los vectores de las palabras da un vector para la frase, aunque se pierde el orden.
- 4Los modelos preentrenados dan embeddings de frases (paraphrase-multilingual-MiniLM-L12-v2, 384 números) y de imágenes (la penúltima capa de una CNN). Con ellos se arma un buscador semántico, que encuentra «¿cómo me inscribo?» al preguntar «quiero registrarme».
- 5Un embedding preentrenado sirve si sus datos se parecen a los tuyos: con FashionMNIST, la resnet18 de ImageNet no superó a los píxeles y una CNN pequeña entrenada con prendas sí.
- 6UMAP dibuja los embeddings en un plano, pero el plano distorsiona las distancias. Las analogías (rey − hombre + mujer ≈ reina) funcionan solo a veces, y los embeddings heredan los sesgos de los textos con que se entrenaron.
En la teoría
- La pregunta
- Actividad: el mapa de palabras
- Por qué un número por palabra no basta
- Dime con quién andas: la hipótesis distribucional
- Skip-gram con muestreo negativo
- nn.Embedding: una tabla que se aprende
- Embeddings de frases con un modelo preentrenado
- Embeddings de imágenes
- Lo que los embeddings aprenden de más: sesgos
- Lo que aprendiste y lo que sigue
¿Terminaste este tema?
Márcalo y en la ruta verás cuánto llevas. Se guarda solo en este navegador.