¿Cuáles son los factores que afectan la tasa de error en el algoritmo KNN?

El algoritmo k vecino más cercano (KNN) se ve afectado por varios factores, tales como:

  1. Dimensionalidad de los puntos de datos : cuanto mayor sea la dimensionalidad de los puntos de datos, menos confiable será el algoritmo KNN. Esto se atribuye al hecho de que la medida de disimilitud normalmente se calcula como una medida de distancia euclidiana básica que sufre una maldición de dimensionalidad. Esto ocurre principalmente porque la puntuación euclidiana no pesa cada característica, todas las características, relevantes o irrelevantes, tienen la misma ponderación. Esto significa que las características irrelevantes interferirán con el puntaje de disimilitud. Por lo tanto, con los vectores dimensionales superiores, es probable que el enfoque KNN sufra la maldición de la dimensionalidad. Dicho esto, use KNN con cuidado, principalmente con vectores de características de baja dimensión.
  2. El tamaño de K : los vecinos devueltos K también afectan la precisión, normalmente hay un valor K que proporciona un buen rendimiento según la aplicación, use la curva ROC para encontrar un valor K adecuado para su problema. Normalmente K = 1 es demasiado ruidoso, para suavizar las cosas intente K = 3 o 5. Sin embargo, los valores de K más grandes tenderán a sesgar el algoritmo KNN hacia una clase dominante. Por ejemplo, si tiene puntos de datos [matemática] m [/ matemática] para la clase [matemática] A [/ matemática] y [matemática] n [/ matemática] para la clase [matemática] B [/ matemática]. Cualquier muestreo aleatorio da la probabilidad de la clase [matemáticas] A [/ matemáticas] como [matemáticas] p (A) = \ frac {m} {m + n} [/ matemáticas] y la probabilidad de la clase [matemáticas] B [/ matemáticas ] como [matemáticas] p (B) = \ frac {n} {m + n} [/ matemáticas]. Entonces, si [math] m >> n [/ math], entonces es probable que los K vecinos estén poblados por puntos de datos de clase A. Este desequilibrio puede mejorarse manteniendo a K pequeño y pesando a los vecinos K en función de sus distancias desde el punto de consulta.
  3. Distribución de datos : la forma en que se distribuyen los datos de entrenamiento puede afectar fácilmente el rendimiento del clasificador KNN. Las regiones de alta concentración de puntos de datos serán más sensibles a pequeños cambios, mientras que las regiones de baja densidad tolerarán cambios más grandes. Esto se debe a que un punto de consulta que cae en un área densa se asignará fácilmente a un nuevo conjunto de K vecinos más cercanos solo por pequeñas perturbaciones, mientras que un punto de consulta que cae en una región de baja densidad tendrá que cambiar mucho antes de que los K vecinos más cercanos cambien. Esto puede ser problemático ya que la distribución de datos nunca puede ser uniforme para el algoritmo KNN, ya que solo memoriza los ejemplos de entrenamiento discretos. Esto se puede resolver utilizando un conjunto de entrenamiento muy grande pero con mayor memoria y complejidad computacional ya que [matemática] O (n) [/ matemática] para [matemática] n [/ matemática] puntos de datos para memoria y complejidad computacional para fuerza bruta Estrategia de búsqueda.

Por lo tanto, se debe tener cuidado al usar la clasificación KNN. El otro punto que vale la pena señalar es que si los vectores de características son de alto nivel, con una relación señal / ruido de alta calidad, como los que provienen de algunas incrustaciones de las capas de alto nivel de la red neuronal profunda, KNN aún puede funcionar bien. Se puede utilizar en sistemas de recuperación a gran escala de esa manera.

Espero que esto ayude.