Para muchos proyectos de aprendizaje automático que hacemos, comenzamos con el clasificador k Nearest Neighbour. Este es un clasificador de inicio ideal, ya que generalmente tenemos tiempo suficiente para calcular todas las distancias y el número de parámetros es limitado (k, métrica de distancia y ponderación)
Sin embargo, esto a menudo tiene el efecto de que nos quedamos con el clasificador knn ya que más adelante en el proyecto no hay espacio para cambiar a otro clasificador. Cuál sería una buena razón para probar un nuevo clasificador. Los obvios son las restricciones de memoria y tiempo, pero ¿hay casos en que otro clasificador realmente pueda mejorar la precisión?
Respuestas:
k-NN generaliza en un sentido muy restrictivo. Simplemente usa antecedentes de suavidad (o suposición de continuidad). Esta suposición implica que los patrones que están cerca del espacio de características probablemente pertenezcan a la misma clase. K-NN no puede recuperar la regularidad funcional en la distribución de patrones.
Por lo tanto, requiere muestras de entrenamiento representativas, que pueden ser extremadamente grandes, especialmente en casos de espacios de características altamente dimensionales. Peor aún, estas muestras pueden no estar disponibles. En consecuencia, no puede aprender invariantes. Si los patrones pueden estar sujetos a algunas transformaciones sin cambiar sus etiquetas, y la muestra de entrenamiento no contiene patrones transformados de todas las formas admisibles, k-NN nunca reconocerá los patrones transformados que no se presentaron durante el entrenamiento. Esto es cierto, por ejemplo, para imágenes desplazadas o rotadas, si no están representadas en alguna forma invariable antes de ejecutar k-NN. k-NN ni siquiera puede abstraer de características irrelevantes.
Otro ejemplo algo artificial es el siguiente. Imagine ese patrón que pertenece a diferentes clases distribuidas periódicamente (por ejemplo, de acuerdo con el seno, si es menor que 0, entonces los patrones pertenecen a una clase, y es mayor, entonces los patrones pertenecen a otra clase). El conjunto de entrenamiento es finito. Por lo tanto, se ubicará en una región finita. Fuera de esta región, el error de reconocimiento será del 50%. Uno puede imaginar la regresión logística con funciones de base periódicas que funcionarán mucho mejor en este caso. Otros métodos podrán aprender otras regularidades en la distribución de patrones y extrapolar bien.
Entonces, si uno sospecha que el conjunto de datos disponible no es representativo, y se debe lograr la invariabilidad de algunas transformaciones de patrones, entonces este es el caso, en el que uno debe moverse más allá de k-NN.
fuente
Si estuviera limitado por la complejidad computacional, los árboles de decisión (Quinal, 1986) son difíciles de superar (especialmente cuando un marco ofrece la conversión directa del modelo DT a un conjunto de
if
declaraciones, como Accord.NET ).Para los datos de alta dimensión, la noción de distancia, en la que se basa k-NN, no tiene valor (Kriegel, Kröger, Zimek, 2009) (también: artículo de Wikipedia ). Por lo tanto, otros clasificadores, como SVM (Corter, Vapnik, 1995) o Random Forests (Breiman, 2001) , podrían funcionar mejor.
Referencias
Kriegel, Hans-Peter; Kröger, compañero; Zimek, Arthur (2009), "Agrupación de datos de alta dimensión: una encuesta sobre agrupación de subespacios, agrupación basada en patrones y agrupación de correlaciones", Transacciones de ACM sobre descubrimiento de conocimiento a partir de datos (Nueva York, NY: ACM) 3 (1): 1–58
Cortes, Corinna; y Vapnik, Vladimir N .; "Redes de vectores de soporte", Machine Learning, 20, 1995
Leo Breiman 2001. Bosques aleatorios. Mach. Aprender. 45, 1 (octubre de 2001), 5-32.
JR Quinlan. 1986. Inducción de árboles de decisión. Mach. Aprender. 1, 1 (marzo de 1986), 81-106.
fuente
kNN es útil para muestras de datos grandes
Sin embargo, sus desventajas son:
Por lo general, solo es efectivo si los datos de entrenamiento son grandes y el entrenamiento es muy rápido.
fuente