W przypadku k-NN sugerowałbym normalizację danych między a 1 .01
k-NN wykorzystuje odległość euklidesową jako sposób porównania przykładów. Obliczyć odległość pomiędzy dwoma punktami , a x 2 = ( F 1 2 , C 2 2 , . . . , K M 2 ) , w którym f i 1 to wartość ix1= ( f11, f2)1, . . . , fM.1)x2)= ( f12), f2)2), . . . , fM.2))faja1ja-ta cecha :x1
re( x1, x2)) = ( f11- f12))2)+ ( f2)1- f2)2))2)+ . . . + ( fM.1- fM.2))2)---------------------------------√
Aby wszystkie cechy miały jednakowe znaczenie przy obliczaniu odległości, muszą mieć ten sam zakres wartości. Można to osiągnąć tylko poprzez normalizację.
Gdyby nie były znormalizowane i np. Cecha miała zakres wartości w [ 0 , 1 ), zaś f 2 miała zakres wartości w [ 1 , 10 ) . Przy obliczaniu odległości drugi składnik byłby 10 razy ważniejszy niż pierwszy, co spowodowałoby, że k-NN polegałby bardziej na drugiej funkcji niż na pierwszej. Normalizacja zapewnia, że wszystkie funkcje są odwzorowane na ten sam zakres wartości.fa1[ 0 , 1fa2)[1,10)10
Z drugiej strony standaryzacja ma wiele przydatnych właściwości, ale nie może zagwarantować, że funkcje są mapowane do tego samego zakresu. Chociaż standaryzacja może być najlepiej dostosowana do innych klasyfikatorów, nie dotyczy to k-NN ani żadnego innego klasyfikatora opartego na odległości.