Inicio · Parte 14 — Matemática de Machine Learning
K(a,b) = φ(a)ᵀφ(b)
kernel polinómico: K(a,b) = (aᵀb + c)^d
kernel RBF: K(a,b) = exp(−γ‖a−b‖²)
Cuando los datos no son linealmente separables, una salida es transformarlos a un espacio de mayor dimensión donde sí lo sean. El problema es que ese espacio crece muy rápido: un polinomio de grado 3 sobre 100 características genera del orden de 170 000 términos, y calcularlos explícitamente es inviable.
El kernel trick observa que muchos algoritmos —SVM, PCA, regresión ridge— solo usan los datos a través de productos escalares. Si existe una función K(a,b) que devuelve directamente el producto escalar en el espacio expandido, nunca hace falta construir ese espacio. Se sustituyen los productos escalares por llamadas al kernel y todo funciona.
El ejemplo mínimo lo hace evidente: para el kernel polinómico de grado 2, calcular (aᵀb)² cuesta una multiplicación y una potencia, mientras que expandir a φ y hacer el producto en el espacio expandido cuesta bastante más y da exactamente el mismo número.
El caso extremo es el kernel RBF, que corresponde a un espacio de características de dimensión infinita y aun así se evalúa con una exponencial. El teorema de Mercer caracteriza qué funciones son kernels válidos: aquellas cuya matriz de Gram es siempre semidefinida positiva. Toda la maquinaria de los procesos gaussianos se apoya en esta misma idea.
Kernel polinómico de grado 2 frente al espacio expandido.
a = (1, 2) b = (3, 4)
Expansión explícita:
φ(x) = (x₁², √2·x₁x₂, x₂²)
φ(a) = (1,0 ; 2,828427 ; 4,0)
φ(b) = (9,0 ; 16,970563 ; 16,0)
producto en el espacio expandido:
1·9 + 2,828427·16,970563 + 4·16 = 121,0
Kernel directo:
(aᵀb)² = (1·3 + 2·4)² = 11² = 121,0
Coinciden ✓
Con d = 3 y 100 características, la expansión tendría
unos 170 000 términos; el kernel sigue costando lo mismo.
El kernel calcula el producto punto sin construir el espacio.
python classes/part-14-matematica-de-machine-learning/290-kernel-trick/lab.py
compmath run 290
abphi(a)producto_en_el_espacio_expandidokernel_polinomico_(aᵀb)²coincidendimension_explicitaoperaciones_kernelkernel_RBFdimension_implicita_del_RBFcondicion_de_Mercer{
"a": [
1.0,
2.0
],
"b": [
3.0,
4.0
],
"phi(a)": [
1.0,
2.828427,
4.0
],
"producto_en_el_espacio_expandido": 121.0,
"kernel_polinomico_(aᵀb)²": 121.0,
"coinciden": true
}
SVM no lineales, procesos gaussianos, PCA con kernel, métodos espectrales y análisis de similitud entre estructuras complejas.
Estos algoritmos siguen siendo la línea base honesta contra la que se debe comparar cualquier modelo profundo.
9780262536578 verificado en International ISBN Agency (2026-08-19).