¿Cómo funciona KNN?

KNN significa k-vecinos más cercanos. Suponga que la tarea es clasificar una instancia i . Como puedes adivinar por su nombre, solo necesitas echar un vistazo a las k instancias de entrenamiento más similares a i . Luego, vote por mayoría y vea qué etiqueta es la etiqueta más popular entre estas k instancias. Asigne i a esa etiqueta. Eso es.

Más técnicamente, KNN es un algoritmo de aprendizaje perezoso o basado en instancias. Significa que no necesita aprender un modelo de los datos de entrenamiento. En realidad, no hay una fase de entrenamiento y solo necesita encontrar las instancias más similares a una instancia de prueba en el momento de la prueba. Tenga en cuenta que k es un número constante.

La pregunta es cómo calcular la similitud entre dos instancias. Depende totalmente del problema. El producto de puntos, la distancia euclidiana negativa, la similitud del coseno y la divergencia de KL o JS son ejemplos comunes de la función de similitud.

En el caso de clasificación:

Dicho en palabras: para cada punto x para clasificar, mire sus k vecinos más cercanos (con k siendo impar, preferiblemente) y asocie a este punto x la etiqueta (o categoría) que es la más común entre los vecinos.

Aquí hay una descripción del proceso:

En el caso de regresión, se devuelve un promedio del valor de la etiqueta sobre los k vecinos más cercanos para la predicción.

Al punto de prueba se le asigna la etiqueta más frecuente asociada con los k puntos de datos de entrenamiento más cercanos.

More Interesting

¿Qué tecnología debo aprender, siendo un desarrollador de mainframe interesado en análisis de datos, AWS, aprendizaje automático, big data y otros?

¿Cuáles son las aplicaciones no computacionales de las lecciones del aprendizaje automático?

¿Cuál es un buen algoritmo para la extracción de características y la detección de texto escrito a mano?

Antes de elegir y aplicar incluso el modelo de aprendizaje automático lineal más simple, ¿qué aspectos estadísticos de los datos debo considerar?

¿El aprendizaje automático está reemplazando la teoría de control tradicional?

Dado que los modelos pueden ser entrenados en datos sintéticos, ¿podemos usar el Entrenamiento Adversario para hacer que las imágenes de prueba sean más sintéticas?

¿La agrupación es indispensable en el aprendizaje profundo?

¿Cómo es un proyecto de visión por computadora "típico", de principio a fin?

Cómo hacer un bot que pueda ser entrenado para jugar juegos simples usando Python

¿Por qué funciona la función de costo de regresión logística?

¿Cómo puedo probar el método de regresión lineal?

Durante el aprendizaje automático para la detección de objetos, ¿cómo puedo simular el efecto de la iluminación de diferentes días en mi conjunto de datos de entrenamiento?

¿Cuál es la diferencia de enfoque para resolver un desafío de Kaggle y trabajar en un problema de investigación de LA bien definido?

¿Qué factores se basan en comenzar un gráfico de dibujo de una red bayesiana?

¿Qué factores además del conjunto de datos afectan cómo se elige el tamaño de lote para el descenso de gradiente estocástico (SGD) mini-lote?