Métricas de Distancia en Algoritmos de Machine Learning
Clase 16 de 24 • Curso de Introducción al Pensamiento Probabilístico
Resumen
¿Qué son las métricas de distancia en machine learning?
Las métricas de distancia son fundamentales en el ámbito del machine learning, permitiéndonos cuantificar cuán cercanos o lejanos están los vectores en un espacio de características. Entender este concepto es crucial, ya que muchos algoritmos de machine learning operan optimizando distancias entre vectores.
¿Cómo se construye un feature vector correctamente?
Antes de aplicar métricas de distancia, es esencial construir un feature vector adecuado. Un feature vector es una representación de datos mediante numeración, en la que cada dimensión corresponde a una característica del conjunto de datos. Es importante evitar incluir demasiadas dimensiones irrelevantes que podrían complicar o desinformar los resultados de nuestro modelo.
¿Qué es la distancia euclidiana y cómo se aplica?
La distancia euclidiana es la forma más clásica y reconocida de medir distancia entre dos puntos en un espacio cartesiano. Se calcula como la raíz cuadrada de la suma de las diferencias al cuadrado entre las coordenadas correspondientes de dos puntos.
Ejemplo:
Si tenemos dos puntos, (A(x_1, y_1)) y (B(x_2, y_2)), la distancia euclidiana (d) se calcula como:
import math
def distancia_euclidiana(x1, y1, x2, y2):
return math.sqrt((x2 - x1)**2 + (y2 - y1)**2)
# Ejemplo de uso
distancia = distancia_euclidiana(3, 4, 7, 1)
print(f"La distancia euclidiana es: {distancia}")
¿Cómo se diferencia la distancia de Manhattan?
La distancia de Manhattan se calcula sumando las diferencias absolutas de las coordenadas, siguiendo caminos horizontales y verticales en lugar de la línea recta entre dos puntos. Es llamada "Manhattan" ya que simula el movimiento por una cuadrícula de calles, como las de la ciudad de Nueva York.
Concepto: Supongamos que necesitamos ir de una esquina a otra, no podemos caminar a través de los edificios, sino seguir las calles.
Ejemplo de Distancia de Manhattan:
Si tenemos dos puntos, (A(x_1, y_1)) y (B(x_2, y_2)), la distancia de Manhattan (d_m) es:
def distancia_manhattan(x1, y1, x2, y2):
return abs(x2 - x1) + abs(y2 - y1)
# Ejemplo de uso
distancia_m = distancia_manhattan(3, 4, 7, 1)
print(f"La distancia de Manhattan es: {distancia_m}")
¿Por qué es importante elegir la métrica de distancia correcta?
La elección de la métrica depende del problema en cuestión y del contexto. Cada métrica tiene sus fortalezas y debilidades, y puede ofrecer insights diferentes sobre los datos:
- Distancia euclidiana: Ideal para espacios que soportan caminos directos y para cálculos en geometrías simples.
- Distancia de Manhattan: Útil en espacios regulares como una cuadrícula urbana o cuando las limitaciones de movimiento solo permiten rutas discretas.
¿Cómo contribuir al conocimiento compartido de métricas?
El aprendizaje continuo y el intercambio de conocimiento son claves en machine learning. Por ello, se invita a explorar y descubrir otras métricas de distancia que puedan ser relevantes. Participar activamente en discusiones y compartir hallazgos en sistemas de comentarios o foros puede enriquecer nuestra comprensión y aplicación de estas métricas.
Explorar estas áreas puede llevar al descubrimiento de otras métricas como:
- Distancia de Minkowski: Una generalización tanto de la euclidiana como de la de Manhattan.
- Distancia de Chebyshev: El mayor de los valores absolutos de las diferencias entre coordenadas.
Invitamos a enriquecer nuestra comprensión y adaptar la métrica más adecuada para cada situación particular. Continuar aprendiendo y compartiendo será fundamental para avanzar en el apasionante mundo del machine learning.