¿Por qué es importante el núcleo en los algoritmos de aprendizaje automático, como SVM o k-NN?

Dos razones. La primera es que, según el tipo de núcleo, proyecta sus datos en un espacio de características de dimensiones superiores. ¡A veces en un espacio de dimensiones infinitas! Si sus datos no son linealmente separables en el espacio de características original, existe una buena posibilidad de que lo sean cuando se proyectan en dimensiones más altas.

La segunda razón, quizás más intuitiva, es que imbuye a cada uno de sus puntos de datos con información sobre el resto del conjunto de entrenamiento. El núcleo se puede ver como una medida de similitud, de modo que sus características se conviertan en “¿qué tan similar es la instancia 1 a la instancia 2?”, “¿Qué tan similar es la instancia 1 a la instancia 3?”, Etc. Esto hace que sea fácil para el clasificador diga: “La instancia 1 se parece mucho a estas otras instancias que tienen la etiqueta ‘A’. Quizás la instancia 1 también debería tener la etiqueta ‘A'”.

Solo para mejorar la respuesta anterior, las funciones del núcleo son útiles debido a lo que se conoce como el “truco del núcleo”.

Si tiene una solución a un problema que puede expresar como un producto interno del vector de consulta y el vector de entrenamiento (que se conoce como la forma dual), eso hace la vida mucho más fácil.
¿Por qué? porque una vez que escriba la solución en este formulario, puede calcular el producto interno utilizando el núcleo complicado que desee. El resto de la solución permanece intacta, y su solución está en el espacio original de baja dimensión. Puede salirse con la suya simplemente calculando los núcleos en un espacio de dimensiones realmente altas (incluso en un espacio de dimensiones infinitas, como en el caso del núcleo gaussiano). ¡Con buena pinta!