🧮 Computational Mathematics

Inicio · Parte 05 — Álgebra lineal I: vectores y matrices

103 — Producto punto y similitud

intermedio clase 3 de 20 4 horas demostración dot_product

El producto punto mide alineación; su normalización es la similitud coseno de los embeddings.

Fórmulas

u·v = Σuᵢvᵢ = ‖u‖‖v‖cos θ
cos θ = u·v / (‖u‖‖v‖)
u·u = ‖u‖²

Desarrollo

El producto punto es la operación más importante de esta parte y probablemente de todo el programa. Definido como suma de productos componente a componente, resulta ser ‖u‖‖v‖cos θ, lo que le da una interpretación geométrica: mide cuánto apuntan dos vectores en la misma dirección, escalado por sus magnitudes.

Tres lecturas del signo: positivo significa ángulo agudo, cero significa ortogonalidad, negativo significa ángulo obtuso. La ortogonalidad definida como «producto punto nulo» es la que se generaliza a dimensión arbitraria, donde no se puede dibujar un ángulo recto.

La similitud coseno normaliza por las magnitudes y deja solo el ángulo. Es la métrica estándar entre embeddings porque la magnitud de un embedding suele codificar frecuencia o longitud del texto, no significado: dos documentos sobre el mismo tema, uno largo y otro corto, tienen coseno alto y distancia euclídea grande.

Computacionalmente, el producto punto es la operación que domina el coste de un modelo moderno. Una capa densa es un conjunto de productos punto; la atención calcula un producto punto por cada par consulta-clave. Los TFLOPS de una GPU miden, en esencia, cuántos productos punto por segundo puede hacer.

Ejemplo trabajado

Ángulos entre tres vectores.

u = (1, 0),  v = (1, 1),  w = (0, 1)

u·v = 1        cos = 1/(1·√2) = 0.7071   →  45°
u·w = 0        cos = 0                   →  90°  ortogonales
u·u = 1 = ‖u‖²                            ✓

Similitud coseno en embeddings:
  misma fórmula, dimensión 768 o 1536
  la magnitud se descarta a propósito

Qué calcula el laboratorio

Producto punto: proyección, ángulo y similitud.

python classes/part-05-algebra-lineal-i-vectores-y-matrices/103-producto-punto-y-similitud/lab.py
compmath run 103

Salidas del laboratorio (7)

Muestra de la ejecución real

{
  "u·v": 1.0,
  "coseno_u_v": 0.7071067811865475,
  "angulo_u_v_grados": 45.00000000000001,
  "u·w": 0.0,
  "ortogonales": true,
  "u·u_es_|u|²": true
}

Errores comunes

Dónde se usa

Similitud coseno en búsqueda semántica y RAG, capas densas, atención escalada, y cálculo de proyecciones e iluminación en gráficos.

Idea rectora de la parte

Resolver Ax=b casi nunca requiere calcular A⁻¹.

Error a evitar

Aplicar producto punto a vectores de escalas incomparables.

Conexión con IA

Cada capa densa es un producto matriz-vector. Los embeddings viven en subespacios y la similitud entre ellos es producto punto normalizado.

Bibliografía de la clase

Archivos de la clase