Mi comprensión de las SVM es la siguiente:
El truco del kernel nos permite proyectar los datos de un conjunto de entrenamiento que no es linealmente separable a un espacio de mayor dimensión donde se convierte en linealmente separable. Esto, a su vez, permite encontrar la frontera de separación óptima entre las dos clases, mejorando así la capacidad de generalización de la SVM en comparación con otros métodos como los perceptrones (de una sola capa oculta) y los k-NN.
En una discusión con alguien sobre las SVM, la otra persona señaló que aumentar el número de dimensiones de los datos (es decir, el truco del kernel) llevaría en realidad a un mayor sobreajuste, ya que con suficientes dimensiones, cualquier conjunto de datos se vuelve lineal y perfectamente separable, incluidos los conjuntos de datos ruidosos. Esto llevaría a que la precisión de la generalización se deteriorara en lugar de mejorar.
Su razonamiento tiene sentido, pero entonces ¿para qué sirve el truco del núcleo? ¿Por qué el truco del núcleo no conduce a un mayor sobreajuste?