No encontré una definición de función de pérdida en wiki en el contexto del aprendizaje automático.
sin embargo, este es menos formal, es bastante claro.
En esencia, una función de pérdida es increíblemente simple: es un método para evaluar qué tan bien su algoritmo modela su conjunto de datos. Si sus predicciones están totalmente apagadas, su función de pérdida generará un número mayor. Si son bastante buenos, generará un número menor. A medida que cambia partes de su algoritmo para intentar mejorar su modelo, su función de pérdida le dirá si está llegando a algún lado.
parece que la tasa de error de KNN no es la función que podría guiar la optimización del modelo en sí, como el Descenso de degradado.
Entonces, ¿KNN tiene una función de pérdida?
fuente
Cada algoritmo de estadísticas está minimizando explícita o implícitamente algún objetivo, incluso si no hay parámetros o hiperparámetros, e incluso si la minimización no se realiza de forma iterativa. El kNN es tan simple que normalmente no se piensa así, pero en realidad se puede escribir una función objetiva explícita:
Lo que esto dice es que la clase predicha para un punto es igual a la clase que maximiza el número de otros puntos que están en el conjunto de puntos cercanos que también tienen la misma clase, medida por que es cuando está en la clase , caso contrario.t^ x^ C xi k Nk({x},x^) δ(ti,C) 1 xi C 0
La ventaja de escribirlo de esta manera es que uno puede ver cómo hacer que el objetivo sea "más suave" ponderando los puntos por proximidad. Con respecto al "entrenamiento", no hay parámetros aquí para encajar. Pero se podría ajustar la métrica de distancia (que se utiliza para definir ) o la ponderación de puntos en esta suma para optimizar algún objetivo de clasificación adicional. Esto lleva al análisis de componentes de vecindario: https://www.cs.toronto.edu/~hinton/absps/nca.pdf que aprende una métrica de distancia.Nk
fuente
No estoy de acuerdo con la respuesta aceptada (algo).
KNN es un algoritmo de clasificación , y no tiene sentido ejecutar un algoritmo de clasificación sin una función de pérdida: le interesaría qué tan bien funcionó el algoritmo. En el caso de KNN, podría, por ejemplo, evaluar la calidad de las clasificaciones observando la suma de las precisiones promedio en cada clase. O bien, podría centrarse únicamente en la precisión del algoritmo.
El método de optimización que impulsa KNN no depende de la función de pérdida, por lo que durante el entrenamiento, nunca recurre a la función de pérdida y ni siquiera utiliza el descenso de gradiente para entrenar.
Contraste esto con el siguiente "clasificador vecino más cercano a ": para las clases , primero entrene a los medios y luego defina la clase de cada punto por el número dominante de puntos que pertenecen a cada centroide. Por ejemplo, podría entrenar este algoritmo con una minimización gradual en el error de mínimos cuadrados de cada centroide (recalculando los centroides en función de los vecinos más cercanos), pero en el momento de la prueba, su función de pérdida volvería a ser una forma de precisión en cada clase, a pesar de que el algoritmo original no tiene dependencia de esto.K K
fuente