Error de entrenamiento en clasificador KNN cuando K = 1

8

Recibí esta pregunta en un cuestionario, preguntaba cuál sería el error de entrenamiento para un clasificador KNN cuando K = 1. ¿Qué significa el entrenamiento para un clasificador KNN? Mi comprensión sobre el clasificador KNN fue que considera todo el conjunto de datos y asigna a cualquier observación nueva el valor de la mayoría de los vecinos K más cercanos. ¿Dónde entra en juego la capacitación? Además, la respuesta correcta proporcionada para esto fue que el error de entrenamiento será cero independientemente de cualquier conjunto de datos. ¿Cómo es esto posible?

bizantino
fuente

Respuestas:

13

El error de entrenamiento aquí es el error que tendrá cuando ingrese su conjunto de entrenamiento a su KNN como conjunto de prueba. Cuando K = 1, elegirá la muestra de entrenamiento más cercana a su muestra de prueba. Como su muestra de prueba está en el conjunto de datos de entrenamiento, se elegirá como la más cercana y nunca se equivocará. Por esta razón, el error de entrenamiento será cero cuando K = 1, independientemente del conjunto de datos. Por cierto, aquí hay una suposición lógica, y es que su conjunto de entrenamiento no incluirá las mismas muestras de entrenamiento que pertenecen a diferentes clases, es decir, información contradictoria. Sin embargo, algunos conjuntos de datos del mundo real podrían tener esta propiedad.

gunes
fuente
3

Para una comprensión visual, puede pensar en entrenar KNN como un proceso de colorear regiones y trazar límites alrededor de los datos de entrenamiento.

Primero podemos dibujar límites alrededor de cada punto en el conjunto de entrenamiento con la intersección de las bisectrices perpendiculares de cada par de puntos. (La animación de bisectriz perpendicular se muestra a continuación)

animación de bisectriz perpendicular

fuente gif

Para saber cómo colorear las regiones dentro de estos límites, para cada punto miramos el color del vecino. CuandoK=1, para cada punto de datos, X, En nuestro conjunto de entrenamiento, queremos encontrar uno otro punto,X, que tiene la menor distancia de X. La distancia más corta posible es siempre0 0, lo que significa que nuestro "vecino más cercano" es en realidad el punto de datos original en sí mismo, X=X.

Para colorear las áreas dentro de estos límites, buscamos la categoría correspondiente a cada X. Digamos que nuestras opciones son azules y rojas. ConK=1, coloreamos las regiones que rodean los puntos rojos con rojo y las regiones que rodean el azul con azul. El resultado se vería así:

k = 1 con todos los límites

Observe cómo no hay puntos rojos en las regiones azules y viceversa. Eso nos dice que hay un error de entrenamiento de 0.

Tenga en cuenta que los límites de decisión generalmente se dibujan solo entre diferentes categorías (deseche todos los límites azul-azul rojo-rojo) para que su límite de decisión se parezca más a esto:

ingrese la descripción de la imagen aquí

Nuevamente, todos los puntos azules están dentro de los límites azules y todos los puntos rojos están dentro de los límites rojos; Todavía tenemos un error de prueba de cero. Por otro lado, si aumentamosK a K=20, tenemos el siguiente diagrama. Observe que hay algunos puntos rojos en las áreas azules y puntos azules en las áreas rojas. Así es como se ve un error de entrenamiento distinto de cero.

Cuando K=20, coloreamos las regiones alrededor de un punto según la categoría de ese punto (color en este caso) y la categoría de 19 de sus vecinos más cercanos. Si la mayoría de los vecinos son azules, pero el punto original es rojo, el punto original se considera un valor atípico y la región a su alrededor es de color azul. Es por eso que puede tener tantos puntos de datos rojos en un área azul y viceversa.

ingrese la descripción de la imagen aquí

fuente de imágenes

David
fuente