Volver al Diario
4 min de lectura

Guía para principiantes sobre Embeddings de Vectores y Matemáticas de Similitud

Una guía sencilla que explica cómo la IA representa el significado como coordenadas espaciales, cómo funciona la similitud coseno y el truco Normalize-then-Dot.

Vector DatabasesRetrieval-Augmented Generation (RAG)LLM Agents
Guía para principiantes sobre Embeddings de Vectores y Matemáticas de Similitud

Los motores de búsqueda solían depender completamente de la coincidencia de cadenas de texto. Si buscabas "automóvil", omitían cualquier documento que usara únicamente "coche", simplemente porque las letras no coincidían.

Los sistemas modernos de inteligencia artificial resuelven esto convirtiendo el texto en embeddings de vectores. En lugar de comparar cadenas literales, los modelos mapean palabras, oraciones o documentos enteros como coordenadas espaciales que capturan el significado conceptual subyacente.

En esta guía introductoria, analizaremos cómo los embeddings representan el significado en un espacio geométrico, compararemos las principales métricas matemáticas de similitud y examinaremos el truco de rendimiento que utilizan las bases de datos vectoriales.


1. ¿Qué es un Embedding de Vector?

Un modelo de embedding es una red neuronal especializada que actúa como un traductor semántico. Toma un texto de entrada y devuelve una lista de números de punto flotante de longitud fija llamada vector.

Input Text: "automobile"  ---> Embedding Model ---> [0.024, -0.412, 0.891, ..., 0.105]
Input Text: "car"         ---> Embedding Model ---> [0.021, -0.408, 0.887, ..., 0.112]

Estos números no son aleatorios. Representan coordenadas en un mapa matemático de alta dimensión. Como "car" y "automobile" comparten significados casi idénticos, el modelo coloca sus coordenadas muy juntas.


2. La Geometría del Lenguaje: Entendiendo la Dimensionalidad

El número total de valores en un vector define su dimensionalidad (por ejemplo, 768 dimensiones en modelos estándar o 1536 en modelos más grandes).

Aunque los humanos no podemos visualizar un espacio de 768 dimensiones, la geometría sigue las mismas reglas matemáticas que dibujar flechas en 2D sobre un papel:

  1. Todo vector comienza en el origen [0, 0, ... 0].
  2. Los valores indican cuánto se extiende la flecha a lo largo de cada eje.
  3. La punta de la flecha llega a un punto único en el espacio semántico.
2D Vector Space Visualization:

  Y Axis (Concept: Technology)
    ^
    |      * "laptop" [2.1, 4.8]
    |      * "computer" [2.3, 4.5]
    |
    |                         * "banana" [4.9, 0.4]
    +------------------------------------------------> X Axis (Concept: Food)

Regla Clave: Nunca intente aislar una sola coordenada (como asumir que la dimensión #42 representa "fruta"). El significado está distribuido en el patrón completo de todas las dimensiones combinadas.


3. Métricas Matemáticas: midiendo la cercanía

Para determinar si dos textos comparten el mismo significado, las computadoras miden qué tan cerca están sus flechas en el espacio:

1. Magnitud del Vector (Norma L2)

La magnitud mide la longitud en línea recta de la flecha del vector desde el origen hasta su punta:

a=i=1nai2\|\mathbf{a}\| = \sqrt{\sum_{i=1}^{n} a_i^2}

2. Producto Escalar (Dot Product)

Multiplica las coordenadas correspondientes entre dos vectores y suma los resultados:

ab=i=1naibi\mathbf{a} \cdot \mathbf{b} = \sum_{i=1}^{n} a_i b_i

3. Distancia Euclidiana (Distancia L2)

Mide la distancia física entre las puntas de dos flechas de vector:

d(a,b)=i=1n(aibi)2d(\mathbf{a}, \mathbf{b}) = \sqrt{\sum_{i=1}^{n} (a_i - b_i)^2}

4. Similitud Coseno (Cosine Similarity)

Mide el ángulo θ\theta entre dos flechas de vector, ignorando completamente su longitud:

cos(θ)=abab\cos(\theta) = \frac{\mathbf{a} \cdot \mathbf{b}}{\|\mathbf{a}\| \|\mathbf{b}\|}

  • El estándar de oro para búsqueda de texto: Si una consulta corta de 3 palabras y un artículo de 500 palabras tratan del mismo tema, sus flechas apuntarán en la misma dirección (θ0    cos(θ)1.0\theta \approx 0^\circ \implies \cos(\theta) \approx 1.0).

4. Ingeniería en Producción: El Truco "Normalize-Then-Dot"

Calcular la similitud coseno requiere divisiones y raíces cuadradas en tiempo de ejecución. Las divisiones consumen mucha CPU cuando se realizan millones de búsquedas por segundo.

Las bases de datos vectoriales (como Pinecone, Milvus y pgvector) utilizan una optimización matemática:

Paso 1: Normalización a Vector Unitario al Insertar

Cuando se crea un vector, el sistema lo normaliza a una longitud exacta de 1.01.0 (a^\hat{\mathbf{a}}):

a^=aa\hat{\mathbf{a}} = \frac{\mathbf{a}}{\|\mathbf{a}\|}

Paso 2: Consulta Simplificada

Cuando ambos vectores tienen longitud 1.01.0 (a^=1\|\hat{\mathbf{a}}\| = 1 y b^=1\|\hat{\mathbf{b}}\| = 1), el denominador de la fórmula del coseno se convierte en 11:

cos(θ)=a^b^1×1=a^b^\cos(\theta) = \frac{\hat{\mathbf{a}} \cdot \hat{\mathbf{b}}}{1 \times 1} = \hat{\mathbf{a}} \cdot \hat{\mathbf{b}}

Al normalizar con anterioridad, la similitud coseno se reduce a un simple producto escalar. La base de datos evita divisiones en tiempo de ejecución, ofreciendo máxima velocidad con exactamente la misma precisión.

Share this article