Para k-NN, sugiro normalizar os dados entre e .10 01 1
O k-NN usa a distância euclidiana como meio de comparar exemplos. Para calcular a distância entre dois pontos e , onde é o valor do ésimo recurso de :x 2 = ( f 1 2 , f 2 2 , . . . , f H 2 ) f i 1 i x 1x1 1= ( f1 11 1, f21 1, . . . , fM1 1)x2= ( f1 12, f22, . . . , fM2)fEu1 1Eux1 1
d( x1 1, x2) = ( f1 11 1- f1 12)2+ ( f21 1- f22)2+ . . . + ( fM1 1- fM2)2---------------------------------√
Para que todos os recursos tenham a mesma importância no cálculo da distância, eles devem ter o mesmo intervalo de valores. Isso só é possível através da normalização.
Se eles não foram normalizados e, por exemplo, o recurso teve um intervalo de valores em ), enquanto teve um intervalo de valores em . Ao calcular a distância, o segundo termo seria vezes mais importante que o primeiro, levando o k-NN a confiar mais no segundo recurso que no primeiro. A normalização garante que todos os recursos sejam mapeados para o mesmo intervalo de valores. [ 0 , 1 f 2 [ 1 , 10 ) 10f1 1[ 0 , 1f2[ 1 , 10 )10
A padronização, por outro lado, possui muitas propriedades úteis, mas não pode garantir que os recursos sejam mapeados para o mesmo intervalo. Embora a padronização possa ser mais adequada para outros classificadores, esse não é o caso do k-NN ou de qualquer outro classificador baseado em distância.