Red de conocimiento de divisas - Consulta hotelera - Principio del algoritmo Knn

Principio del algoritmo Knn

Si la mayoría de las k muestras más similares (es decir, más cercanas) en un espacio de características pertenecen a una determinada categoría, entonces esta muestra también pertenece a esta categoría. Este método solo determina la categoría de la muestra a clasificar en función de la categoría de la o varias muestras más recientes en la decisión de clasificación. Mire la imagen a continuación:

El flujo del algoritmo de KNN es el siguiente: en la imagen de arriba, podemos ver que el conjunto de datos en la imagen son buenos datos, es decir, todos los conjuntos de datos tienen etiquetas. uno es un cuadrado azul, el otro es un triángulo rojo y el círculo verde son los datos que queremos clasificar. Si K = 3, entonces hay dos triángulos rojos y un cuadrado azul más cercano al punto verde. Estos tres puntos votan, entonces el punto verde a clasificar pertenece al triángulo rojo. Si K = 5, entonces hay dos triángulos rojos y tres cuadrados azules más cercanos al punto verde. Estos cinco puntos votan, entonces el punto verde a clasificar pertenece al cuadrado azul. ¡Podemos ver que KNN se basa básicamente en métodos de estadísticas de datos! De hecho, muchos algoritmos de aprendizaje automático también se basan en estadísticas de datos. KNN es un tipo de aprendizaje basado en la memoria, también llamado aprendizaje basado en instancias, que es un aprendizaje perezoso. Es decir, no tiene un proceso de preentrenamiento obvio. En cambio, cuando el programa comienza a ejecutarse, después de que el conjunto de datos se carga en la memoria, la clasificación puede comenzar sin entrenamiento. Específicamente, cada vez que llego a un punto de muestra desconocido, encontraré los K puntos más cercanos para votar.

La implementación del algoritmo KNN se basa en la "distancia" entre muestras desconocidas y muestras de entrenamiento. Podemos utilizar el algoritmo de distancia euclidiana para calcular la "distancia":

Después de encontrar las k tuplas más cercanas, el promedio de los valores correspondientes de estas tuplas se utiliza como resultado final.

Podemos comenzar desde K=1 e incrementarlo gradualmente, y usar los datos de prueba para analizar la tasa de precisión, a fin de seleccionar la K óptima. En este resultado, la tasa de precisión y la cantidad de cálculo debe estar equilibrado. Por ejemplo, cuando K=3, la tasa de precisión es del 90%, y cuando K=10, la tasa de precisión es del 91%, por lo que es necesario considerar si un aumento del 1% en la cantidad de cálculo es económico.

(1) Si es posible, ordene primero los datos de muestra para saber qué datos solo deben compararse. Pero para datos de alta dimensión, esto es casi inviable.

(2) Divida los datos de muestra en varios subconjuntos y los datos a clasificar solo deben compararse con uno o más subconjuntos. Por ejemplo, si el atributo es latitud y longitud, y la distancia es la distancia entre dos puntos de latitud y longitud, entonces la muestra se puede dividir en diferentes subconjuntos según la parte entera de la latitud y longitud, y la tupla que se clasificado solo necesita compararse con el mismo subconjunto que la parte entera de sí mismo Comparar. Cuando los datos de muestra en el subconjunto son menores que k, se compararán con el conjunto adyacente.

(1) La teoría está madura y la idea es simple. Puede usarse tanto para clasificación como para regresión.

(2) se puede utilizar para clasificación no lineal.

(3) La complejidad del tiempo de entrenamiento es menor que la de algoritmos como las máquinas de vectores de soporte.

(4) En comparación con algoritmos como Naive Bayes, no tiene suposiciones sobre los datos, tiene una alta precisión y no es sensible a valores atípicos.

(5) Dado que el método KNN se basa principalmente en muestras adyacentes circundantes limitadas en lugar del método de distinguir dominios de clase, el método KNN es más adecuado que otros métodos para conjuntos de muestras con dominios de clase superpuestos o más superpuestos. Clasificar.

(6) Este algoritmo es más adecuado para la clasificación automática de dominios de clase con tamaños de muestra grandes, mientras que los dominios de clase con tamaños de muestra pequeños son más propensos a una clasificación errónea.

(1) requiere muchos cálculos, especialmente cuando hay muchas funciones.

(2) Cuando las muestras están desequilibradas, la precisión de la predicción de categorías raras es menor.

(3) La construcción de modelos como 3) árbol KD y árbol de esferas requiere mucha memoria.

(4) es un método de aprendizaje perezoso y descentralizado que básicamente no aprende, lo que da como resultado una velocidad de predicción más lenta que algoritmos como la regresión logística.

(5) En comparación con el modelo de árbol de decisión, el modelo KNN no es interpretable.

Nota: La imagen proviene de:/wstz_5461/article/details/78018099.

上篇: ¿Qué avances ha logrado la industria turística de mi país desde 1978? 下篇: Resumen del Mes de Asistencia al Empleo de la Operación Spring Breeze 2023
Artículos populares