0Pricing
Learn AI with Python · Lección

Truco del kernel: RBF, polinómico y sigmoide

Por qué funcionan los kernels, parámetro gamma del kernel RBF y elección de kernels para distintas formas de datos.

Truco del kernel: RBF, polinómico y sigmoide es una lección gratuita de Learn AI with Python en CoddyKit. Esta es la lección 2 de 4. Puedes leer la lección completa abajo gratuitamente — luego la practicas en el navegador con un editor de código integrado y un tutor de IA 24/7. Forma parte de la ruta de aprendizaje de Learn AI with Python, y tu progreso se sincroniza en la web y la app de CoddyKit. El curso de Learn AI with Python incluye 4 lecciones en total.

Cuando las líneas no son suficientes

Una SVM lineal solo dibuja fronteras rectas. Muchos conjuntos de datos no son separables linealmente: una clase puede estar rodeada por otra formando un círculo, que no se puede separar con una línea. El truco del kernel resuelve este problema.

Mapeo a dimensiones superiores

Si los datos no son separables en su espacio original, proyectarlos en un espacio de mayor dimensión puede hacerlos separables. Una curva en 2D puede convertirse en un plano en 3D.

El truco del kernel

El truco del kernel calcula la similitud K(x, z) entre puntos como si se hubieran mapeado a dimensiones superiores, sin realizar nunca ese costoso mapeo. Esto hace eficientes las SVM no lineales.

Qué es una función kernel

Un kernel K(x, z) es una función que devuelve el producto escalar de x y z en algún espacio de características de alta dimensión. Cada kernel implica un mapeo de características y unas formas de frontera diferentes.

El kernel RBF

El kernel RBF (gaussiano) es la opción predeterminada más popular: K(x, z) = exp(-gamma * ||x - z||^2). Mide la similitud, que disminuye con la distancia, y permite fronteras curvas y flexibles.

from sklearn.svm import SVC

model = SVC(kernel="rbf", gamma="scale", C=1.0)
model.fit(X, y)

El parámetro gamma

gamma controla la amplitud del RBF. Un gamma grande significa que cada punto tiene una influencia limitada, lo que produce una frontera sinuosa que puede sufrir sobreajuste. Un gamma pequeño implica una influencia más amplia y una frontera más suave.

from sklearn.svm import SVC

wiggly = SVC(kernel="rbf", gamma=10)    # tight, can overfit
smooth = SVC(kernel="rbf", gamma=0.01)  # broad, may underfit

gamma y C en conjunto

Las SVM con RBF dependen tanto de gamma (flexibilidad de la frontera) como de C (tolerancia a los errores). Ambos parámetros interactúan, por lo que normalmente se ajustan conjuntamente mediante una búsqueda en cuadrícula.

from sklearn.model_selection import GridSearchCV
from sklearn.svm import SVC

param = {"C": [0.1, 1, 10], "gamma": [0.01, 0.1, 1]}
gs = GridSearchCV(SVC(kernel="rbf"), param, cv=5)
gs.fit(X, y)

El kernel polinómico

El kernel polinómico K(x, z) = (gamma * x . z + r)^degree modela interacciones hasta un grado elegido. Utilícelo cuando espere interacciones entre características de un orden conocido.

from sklearn.svm import SVC

model = SVC(kernel="poly", degree=3, coef0=1, gamma="scale")
model.fit(X, y)

El kernel sigmoide

El kernel sigmoide K(x, z) = tanh(gamma * x . z + r) se comporta como una función de activación de una red neuronal. Es menos común y no siempre es un kernel válido, por lo que rara vez es la primera opción.

from sklearn.svm import SVC

model = SVC(kernel="sigmoid", gamma="scale", coef0=0)

Elegir un kernel

Orientaciones:

  • Lineal para datos de alta dimensión o texto
  • RBF como opción predeterminada sólida para datos no lineales
  • Polinómico cuando son importantes las interacciones de un grado conocido
  • Sigmoide en casos poco frecuentes y específicos

Escalar siempre las características

Los kernels como RBF dependen de las distancias, por lo que la escala de las características es fundamental. Estandarice siempre las características antes de utilizar una SVM con kernel; de lo contrario, las características con mayor escala dominarán la similitud.

from sklearn.pipeline import make_pipeline
from sklearn.preprocessing import StandardScaler
from sklearn.svm import SVC

pipe = make_pipeline(StandardScaler(), SVC(kernel="rbf"))
pipe.fit(X, y)

Comprobación rápida

Compruebe sus conocimientos sobre los kernels.

Repaso

Repaso: el truco del kernel calcula K(x, z) como un producto escalar de alta dimensión sin el coste del mapeo, lo que permite crear fronteras no lineales. RBF utiliza exp(-gamma * ||x-z||^2), donde un gamma grande produce sobreajuste. El kernel polinómico captura interacciones de grado d. Escale siempre las características antes de utilizar SVM con kernel.

Preguntas frecuentes

¿La lección «Truco del kernel: RBF, polinómico y sigmoide» es gratis?

Sí — el texto completo de «Truco del kernel: RBF, polinómico y sigmoide» es gratis para leer aquí en la web. Para practicarla de forma interactiva (editor de código integrado y tutor de IA 24/7) y desbloquear el resto del curso de Learn AI with Python, actualiza a CoddyKit PRO. El curso de Learn AI with Python incluye 4 lecciones en total.

¿Qué aprenderé en «Truco del kernel: RBF, polinómico y sigmoide»?

Por qué funcionan los kernels, parámetro gamma del kernel RBF y elección de kernels para distintas formas de datos. Practicas Learn AI with Python con código real que ejecutas directamente en el navegador, y un tutor de IA 24/7 responde tus preguntas mientras trabajas en la lección.

¿Necesito experiencia previa para empezar Learn AI with Python?

No se requiere experiencia previa. Learn AI with Python en CoddyKit está estructurado para principiantes hasta estudiantes avanzados, así que puedes empezar aquí o desde el inicio y avanzar a tu ritmo. Esta es la lección 2 de 4.

¿Cuánto tiempo toma la lección «Truco del kernel: RBF, polinómico y sigmoide»?

La mayoría de las lecciones de CoddyKit toman alrededor de 5–10 minutos. Cada una es compacta e interactiva, así que avanzas constantemente y retomas exactamente por donde dejaste en la web y la app.

¿Puedo escribir y ejecutar código en esta lección de Learn AI with Python?

Sí. Cada lección de Learn AI with Python incluye un editor de código integrado, así que escribes y ejecutas código real directamente en tu navegador y obtienes retroalimentación instantánea de IA — sin configuración local necesaria.

Todas las lecciones de este curso

  1. Teoría de SVM: márgenes y vectores de soporte
  2. Truco del kernel: RBF, polinómico y sigmoide
  3. SVM para clasificación con sklearn
  4. SVM para regresión (SVR)
← Volver a Learn AI with Python