¿Qué tipo de normalización de datos debería usarse con KNN?

9

Sé que hay más de dos tipos de normalización.

Por ejemplo,

1- Transformar datos utilizando una puntuación z o una puntuación t. Esto generalmente se llama estandarización.

2- Reescalando datos para tener valores entre 0 y 1.

La pregunta ahora si necesito normalizar

¿Qué tipo de normalización de datos debería usarse con KNN? ¿y por qué?

jeza
fuente

Respuestas:

11

Para k-NN, sugeriría normalizar los datos entre y .01

k-NN usa la distancia euclidiana como medio para comparar ejemplos. Para calcular la distancia entre dos puntos y , donde es el valor de la característica -ésima de :x1=(f11,f12,...,f1M)x2=(f21,f22,...,f2M)f1iix1

d(x1,x2)=(f11f21)2+(f12f22)2+...+(f1Mf2M)2

Para que todas las características tengan la misma importancia al calcular la distancia, las características deben tener el mismo rango de valores. Esto solo se puede lograr mediante la normalización.

Si no se normalizaron y, por ejemplo, la característica tenía un rango de valores en ), mientras que tenía un rango de valores en . Al calcular la distancia, el segundo término sería veces más importante que el primero, lo que llevaría a k-NN a confiar más en la segunda característica que en la primera. La normalización asegura que todas las características se asignen al mismo rango de valores.f1[0,1f2[1,10)10

La estandarización, por otro lado, tiene muchas propiedades útiles, pero no puede garantizar que las características se asignen al mismo rango. Si bien la estandarización puede ser más adecuada para otros clasificadores, este no es el caso para k-NN o cualquier otro clasificador basado en la distancia.

Djib2011
fuente
44
¿Su respuesta será la misma si usara una distancia diferente en lugar de la distancia euclidiana (por ejemplo, la distancia de Manhattan u otra distancia, incluso la distancia fraccional)? También si el rango de las variables es aproximadamente cercano entre sí.
jeza
77
Sí, acabo de mostrar la distancia euclidiana como ejemplo, pero todas las métricas de distancia sufren lo mismo. Si los intervalos son cerca uno del otro, entonces no sería afecta al cálculo de la métrica que mucho , pero aún así lo haría. Por ejemplo, si y , aún sería un más importante que . Una cosa que olvidé mencionar fue que la estandarización, obviamente, es mucho mejor que no realizar ninguna escala de características; es simplemente peor que la normalización. f1[0,1)f2[0,1.2)f220%f1
Djib2011
Ah, ya veo. "Es simplemente peor que la normalización"?
jeza