¿Podría alguien explicarme por qué necesita normalizar los datos cuando usa K vecinos más cercanos?
He intentado buscar esto, pero parece que todavía no puedo entenderlo.
Encontré el siguiente enlace:
https://discuss.analyticsvidhya.com/t/why-it-is-necessary-to-normalize-in-knn/2715
Pero en esta explicación, no entiendo por qué un rango mayor en una de las características afecta las predicciones.
k-nearest-neighbour
bugsyb
fuente
fuente
Respuestas:
El algoritmo vecino k-más cercano se basa en el voto mayoritario basado en la membresía de clase de las muestras 'k' más cercanas para un punto de prueba dado. La proximidad de las muestras se basa típicamente en la distancia euclidiana.
Considere un problema simple de clasificación de dos clases, donde se elige una muestra de Clase 1 (negra) junto con sus 10 vecinos más cercanos (llenos de verde). En la primera figura, los datos no están normalizados, mientras que en la segunda sí lo están.
¡La normalización resuelve este problema!
fuente
Suponga que tiene un conjunto de datos (m "ejemplos" por n "características") y todas las dimensiones de una característica menos una tienen valores estrictamente entre 0 y 1, mientras que una dimensión de una característica tiene valores que oscilan entre -1000000 y 1000000. Al tomar la distancia euclidiana entre pares de "ejemplos", los valores de las dimensiones de características que oscilan entre 0 y 1 pueden dejar de ser informativos y el algoritmo se basaría esencialmente en la única dimensión cuyos valores son sustancialmente mayores. Simplemente calcule algunos ejemplos de cálculos de distancia euclidiana y podrá comprender cómo la escala afecta el cálculo del vecino más cercano.
fuente