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,f21,...,fM1)x2=(f12,f22,...,fM2)fi1ix1
d(x1,x2)=(f11−f12)2+(f21−f22)2+...+(fM1−fM2)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.