Módulo 3: Similaridad y Distancia

7. Ejercicio Integrador: Calcular y Comparar Métricas

Descripción del ejercicio

Este es el ejercicio integrador del Módulo 3. Aquí vas a calcular distancias euclidianas, Manhattan, y similaridad coseno para vectores 2D/3D, comparar resultados, y decidir qué métrica usar en diferentes casos.


Parte 1: Cálculos manuales

Datos:

A = [3, 4]
B = [6, 8]
C = [0, 5]
D = [9, 1]

Tarea 1.1: Calcular todas las distancias euclidianas

Calcula:

  • dist(A, B)
  • dist(A, C)
  • dist(A, D)
  • dist(B, C)
Ver soluciones
dist(A, B) = √((6-3)² + (8-4)²) = √(9+16) = 5
dist(A, C) = √((0-3)² + (5-4)²) = √(9+1) ≈ 3.16
dist(A, D) = √((9-3)² + (1-4)²) = √(36+9) ≈ 6.71
dist(B, C) = √((0-6)² + (5-8)²) = √(36+9) ≈ 6.71

Tarea 1.2: Calcular similaridades coseno

Calcula:

  • cos(A, B)
  • cos(A, C)
  • cos(A, D)
Ver soluciones

cos(A, B):

A·B = 3×6 + 4×8 = 50
||A|| = 5, ||B|| = 10
cos = 50/(5×10) = 1.0

cos(A, C):

A·C = 3×0 + 4×5 = 20
||A|| = 5, ||C|| = 5
cos = 20/25 = 0.8

cos(A, D):

A·D = 3×9 + 4×1 = 31
||A|| = 5, ||D|| = √82 ≈ 9.06
cos = 31/(5×9.06) ≈ 0.68

Parte 2: Interpretación

Pregunta 2.1:

Según euclidiana, ¿cuál vector está más cerca de A?
Según coseno, ¿cuál vector es más similar a A?

Ver respuesta

Euclidiana: C está más cerca de A (dist = 3.16)
Coseno: B es más similar a A (cos = 1.0)

Interpretación: B tiene la misma dirección que A (solo diferente magnitud). Si la dirección representa "tipo de concepto", B es más similar conceptualmente.


Parte 3: Casos de uso

Caso 1: Embeddings de texto

Tienes embeddings de 3 documentos:

Doc1: [0.6, 0.8] (normalizado)
Doc2: [0.6, 0.8] (normalizado)
Doc3: [0.8, 0.6] (normalizado)

Query: [0.7, 0.71] (normalizado)

¿Qué métrica usas? ¿Por qué?

Ver respuesta

Métrica: Coseno (o producto punto, equivalente si están normalizados)

Por qué:

  • Embeddings normalizados → Solo dirección importa
  • Coseno ignora magnitud → Perfecto para este caso
  • Valores interpretables (0.95 vs 0.7 es claro)

Caso 2: Coordenadas GPS

Tienes 3 ubicaciones (latitud, longitud):

Casa: [19.43, -99.13]
Trabajo: [19.45, -99.15]
Restaurante: [19.50, -99.10]

¿Qué métrica usas para "encontrar el lugar más cercano a casa"?

Ver respuesta

Métrica: Euclidiana (o Haversine para precisión geográfica)

Por qué:

  • Distancia física importa
  • Magnitud tiene significado real (kilómetros)
  • Coseno no apropiado (no importa "dirección conceptual")

Parte 4: Reflexión

Pregunta 4.1:

¿Por qué semantic search usa coseno en lugar de euclidiana?

Ver guía de reflexión

Respuesta:

  1. Embeddings capturan dirección (tipo de concepto), no magnitud

    • Magnitud puede ser ruido (frecuencia, longitud de texto)
    • Coseno ignora magnitud → Solo mide dirección
  2. Robusto en alta dimensión

    • En 1536D, distancias euclidianas son todas similares
    • Ángulos (coseno) son más discriminativos
  3. Valores interpretables

    • Coseno ∈ [-1, 1] → 0.95 = muy similar, 0.3 = poco similar
    • Euclidiana ∈ [0, ∞) → Difícil interpretar "20 es mucho o poco?"

Resumen del ejercicio

Lo que hiciste:

  1. ✅ Calculaste euclidiana y coseno manualmente
  2. ✅ Comparaste resultados (diferentes rankings)
  3. ✅ Decidiste qué métrica usar según caso de uso
  4. ✅ Reflexionaste sobre por qué coseno en semantic search

Intuición consolidada:

"Coseno mide dirección (tipo de concepto), euclidiana mide distancia (magnitud importa). Para embeddings, solo dirección importa → coseno es superior."


Conclusión del Módulo 3

Felicidades por completar el Módulo 3: Similaridad y Distancia. 🎉

Lo que lograste:

  1. ✅ Entiendes distancia euclidiana (línea recta)
  2. ✅ Conoces Manhattan y otras métricas
  3. ✅ Dominas similaridad coseno (ángulo)
  4. ✅ Comparas métricas (trade-offs)
  5. ✅ Sabes por qué coseno en AI (dirección > magnitud)
  6. ✅ Ves cómo se usa en producción (Pinecone, Weaviate)
  7. ✅ Aplicaste todo conceptualmente

Intuición clave del módulo:

Similaridad coseno es la métrica estándar en semantic search porque mide dirección (tipo de concepto), no magnitud (ruido). En alta dimensión, coseno es más robusto y discriminativo que euclidiana.


Próximo módulo: Módulo 4: Búsqueda por Proximidad — kNN conceptual, índices (HNSW, IVF) sin implementar.