k
en k
-NN depende en última instancia de la naturaleza de los datos de entrenamiento y la salida que está buscando. No hay necesariamente un valor perfecto para k
en todas las circunstancias conocidas. Cuanto más grande sea k
, menos “ruidoso” se vuelve el conjunto de datos con respecto a la clasificación; en otras palabras, se reduce el efecto de anomalías o ejemplos mal etiquetados. Sin embargo, esto también conduce a límites menos distintos entre las clases, y puede aumentar el costo computacional. Los valores más bajos de k
son mejores para mantener estos límites distintos, pero son menos efectivos para minimizar el efecto del ruido en los datos.k
de antes (3) se ha ajustado a un nuevo valor (5) en el mismo conjunto de entrenamiento. El modelo ahora clasifica el ejemplo como un 1 (océano) en lugar de un 0 (lago) porque hay más votos de 1 (triángulos azul claro) que votos de 0 entre los cinco vecinos más cercanos. Un cambio de k
como este puede cambiar totalmente la clasificación que recibe un ejemplo de datos.k
es hacer que k
sea siempre impar cuando se tiene un problema de clasificación binaria; esto elimina la posibilidad de que haya un empate en la votación. Otro enfoque para seleccionar k
se denomina bootstrapping e implica tomar la raíz cuadrada del número total de ejemplos de datos en el conjunto de entrenamiento. El valor resultante es aproximadamente la k
que debe considerar usar. También puede utilizar una técnica de prueba de rendimiento como la validación cruzada para ayudar a determinar un valor aceptable para k
.