Capítulo 03 · Embeddings · 10 min

El espacio del significado

Palabras en un espacio geométrico. Rey − Hombre + Mujer = Reina, y otros milagros vectoriales.

Una ecuacion que no deberia funcionar

Mira esta operacion:

rey − hombre + mujer ≈ reina

Es una ecuacion aritmetica, como 5 − 2 + 4 = 7. Solo que habla de palabras.

Y funciona. No porque alguien haya programado "rey" y "reina" para parecerse. Sino porque cada palabra fue transformada en una lista de numeros — un vector — y el algebra del significado se vuelve simplemente algebra.

Es una de las ideas mas contraintuitivas de los LLM, y tambien una de las mas potentes.

Del token a la posicion

En el capitulo anterior vimos que el texto se convierte en una secuencia de token IDs — enteros como 5234 o 91. Pero un entero desnudo no tiene estructura. El token 5234 no esta "cerca" ni "lejos" del token 5235. Solo estan numerados.

Para que un modelo pueda calcular con palabras, necesita una representacion mas rica. La solucion: asociar a cada token un vector de unos 768, 1024 o 4096 numeros reales. Eso es lo que llamamos un embedding.

Al principio del entrenamiento, esos vectores son aleatorios. Poco a poco, a fuerza de predecir millones de palabras siguientes, el modelo aprende a colocarlos de modo que palabras de significado cercano tengan vectores cercanos.

Nadie escribio esa regla. Emerge de la tarea de prediccion.

Por que funciona

Piensa en lo que significa predecir bien la palabra despues de "El rey hablo con su...". Buenas respuestas son hija, esposa, madre, reina — no motor o algoritmo. Un modelo que predice bien esas continuaciones debe saber que esas palabras son sustituibles en ese contexto.

La forma mas economica de memorizar esa equivalencia, cuando tienes miles de millones de parametros y miles de millones de frases, es agrupar "hija", "esposa", "madre", "reina" en la misma region del espacio vectorial. El gradiente empuja en esa direccion en cada iteracion, sin que ningun humano tenga que etiquetarlo.

Los embeddings no se diseñan. Son la huella geometrica de la tarea de prediccion.

Manipula el espacio

El espacio de abajo es una caricatura en dos dimensiones — los embeddings reales tienen cientos. Pero las propiedades esenciales estan ahi: clusters semanticos, vecindad, aritmetica vectorial.

Cada punto es una palabra proyectada en un espacio de significado. Los vecinos comparten un tema — no una ortografía. La flecha muestra la aritmética vectorial que hace posible Rey − Hombre + Mujer = Reina.

Tres cosas que observar:

  • Los clusters aparecen sin que los hayamos nombrado. Pasa por encima de gato y veras perro, raton, leon. Pasa por encima de alegria y veras amor, miedo, tristeza. Las categorias no existen en los datos — existen en la geometria.
  • Algunas direcciones tienen sentido. El vector que va de hombre a mujer es mas o menos el mismo que va de rey a reina, o de padre a madre. Esa regularidad permite la aritmetica.
  • Las distancias son relativas, no absolutas. Que gato este a distancia 0.32 de perro no significa nada por si solo. Lo importante es que este mas cerca de perro que de pan o rabia.

La ilusion 2D

En modelos reales, un embedding suele tener entre 768 y 4096 dimensiones. Por que tantas?

Porque en 2D estamos obligados a hacer compromisos. gato debe estar cerca de perro (animales domesticos), de raton (mamiferos), de tigre (felinos), de pajaro (animal). Todas esas "proximidades" tiran en direcciones distintas — y en 2D chocan.

Con 768 dimensiones, cada faceta del significado puede tener su propia direccion. La palabra gato puede estar cerca de perro en el eje "animal domestico", cerca de tigre en el eje "felino", cerca de raton en el eje "pequeño mamifero". El espacio es lo bastante grande para que esas relaciones coexistan sin aplastarse.

Los humanos pensamos que no podemos visualizar 768 dimensiones. A los embeddings les da igual: solo las usan para ordenar categorias sin colisiones.

Medir la cercania: similitud coseno

Cuando decimos que dos palabras estan "cerca" en el espacio de embeddings, como lo medimos en concreto? No con la distancia euclidiana clasica. Con la cosine similarity.

La idea: miramos el angulo entre los dos vectores, no su longitud. Dos vectores que apuntan en la misma direccion tienen una similitud coseno de 1, sin importar su magnitud. Dos vectores ortogonales dan 0. Dos vectores opuestos, −1.

cos(u, v) = (u · v) / (||u|| × ||v||)

Por que esta medida y no otra? Porque la norma de un embedding (su longitud) varia por razones que no tienen que ver con el significado — frecuencia de la palabra, profundidad de la capa. La direccion, en cambio, codifica el sentido. La similitud coseno aisla lo que importa.

Es tambien la medida que motoriza toda la busqueda semantica moderna: las bases de datos vectoriales (Pinecone, pgvector, Chroma...) indexan millones de vectores y encuentran los mas cercanos a una consulta en un parpadeo. Volvemos a ello en el capitulo 10 (RAG).

Consecuencias

Esta representacion geometrica tiene efectos sorprendentes:

  • Los errores ortograficos son robustos. buenos dias y buenos dais pueden tener embeddings cercanos, asi que el modelo los "entiende" casi igual, aunque a nivel de tokens sean distintos.
  • Los sesgos se incrustan. Si en el corpus de entrenamiento enfermera aparece mas a menudo en femenino y medico en masculino, el algebra de embeddings lo reflejara. medico − hombre + mujer puede dar enfermera. Mucho trabajo consiste en corregir estos sesgos — volveremos a ello en el capitulo 8.
  • Todo se vuelve calculable. Una vez que el significado se convierte en vector, podemos sumar, proyectar, medir angulos. Es exactamente lo que hace el siguiente mecanismo.

Lo siguiente

Tu palabra se convirtio en vector. Tambien la de al lado. Y la anterior. Como hace el modelo, a partir de esta secuencia de vectores, para decidir que en "El medico envio a la enfermera a su casa porque **ella**...", el pronombre ella se refiere a la enfermera y no al medico?

Respuesta en el proximo capitulo: la atencion, el mecanismo que permite a cada token mirar a todos los demas antes de decidir quien importa.

Actualizado el

Embeddings: el espacio geométrico del significado · Step by Token