0Pricing
Learn AI with Python · Lección

SVM para regresión (SVR)

Tubo epsilon de SVR, nu-SVR y comparación de SVR con la regresión lineal en datos no lineales.

SVM para regresión (SVR) es una lección gratuita de Learn AI with Python en CoddyKit. Esta es la lección 4 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.

Los SVM también pueden hacer regresión

La idea del margen también se extiende a la regresión. La regresión de vectores de soporte (SVR) ajusta una función manteniendo las predicciones dentro de una banda de tolerancia e ignorando los errores pequeños.

El tubo insensible a epsilon

SVR traza un tubo de epsilon alrededor de la función predicha. Los puntos dentro del tubo contribuyen con una pérdida cero; solo se penalizan los puntos que quedan fuera. Esto concentra el modelo en los errores relevantes.

Por qué es útil el tubo

Al ignorar las pequeñas desviaciones, SVR evita ajustarse en exceso al ruido y produce un ajuste más suave y robusto. Las pequeñas oscilaciones dentro de la tolerancia simplemente no afectan al modelo.

Uso básico de SVR

SVR funciona de forma similar a SVC y admite los mismos kernels. RBF es la opción predeterminada habitual para la regresión no lineal.

from sklearn.svm import SVR

model = SVR(kernel="rbf", C=100, epsilon=0.1, gamma="scale")
model.fit(Xtr, ytr)
print(model.score(Xte, yte))

El parámetro epsilon

epsilon establece la anchura del tubo. Un epsilon mayor significa una banda más ancha, menos vectores de soporte y un modelo más sencillo. Un epsilon menor ajusta los datos con mayor precisión.

from sklearn.svm import SVR

wide = SVR(epsilon=1.0)   # tolerant, simpler
tight = SVR(epsilon=0.01) # fits closely

El parámetro C en SVR

Al igual que en la clasificación, C controla la penalización de los puntos que quedan fuera del tubo. Un valor de C mayor penaliza más esos errores y produce un ajuste más preciso; un valor menor aplica una regularización mayor para obtener una curva más suave.

from sklearn.svm import SVR

flexible = SVR(C=1000)  # fits training closely
smooth = SVR(C=0.1)     # more regularized

epsilon frente a C: dos controles diferentes

Recuerde la diferencia: epsilon controla la anchura del tubo (cuánto error se ignora), mientras que C controla la penalización de los errores que quedan fuera del tubo. Ajuste ambos parámetros.

El escalado también es importante para SVR

Al igual que todos los SVM, SVR depende de las distancias y es sensible a la escala. Estandarice siempre las características y considere escalar también el objetivo para conseguir un entrenamiento estable.

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

pipe = make_pipeline(StandardScaler(), SVR(kernel="rbf"))
pipe.fit(Xtr, ytr)

Ajuste de SVR

Realice una búsqueda en cuadrícula sobre C, gamma y epsilon para encontrar el mejor ajuste. Utilice una métrica de regresión, como el error cuadrático medio negativo, para la evaluación.

from sklearn.model_selection import GridSearchCV
from sklearn.svm import SVR

param = {
    "C": [1, 10, 100],
    "gamma": [0.01, 0.1, 1],
    "epsilon": [0.01, 0.1, 0.5],
}
gs = GridSearchCV(SVR(), param, cv=5, scoring="neg_mean_squared_error")
gs.fit(Xtr, ytr)

La variante nu-SVR

NuSVR reemplaza epsilon por nu (entre 0 y 1), que controla directamente la proporción de vectores de soporte y de errores de entrenamiento; es una parametrización alternativa que a algunas personas les resulta más fácil de interpretar.

from sklearn.svm import NuSVR

model = NuSVR(nu=0.5, C=100, kernel="rbf")
model.fit(Xtr, ytr)

Cuándo utilizar SVR

SVR funciona bien con conjuntos de datos pequeños o medianos que presentan patrones no lineales y cuando es importante la robustez frente al ruido. Para datos muy grandes, prefiera modelos lineales o gradient boosting, que escalan mejor.

Comprobación rápida

Compruebe sus conocimientos sobre SVR.

Resumen

Resumen: SVR ajusta una función dentro de un tubo insensible a epsilon, donde los puntos interiores tienen un coste cero. epsilon establece la anchura del tubo (un valor mayor produce un modelo más sencillo), mientras que C penaliza los puntos que quedan fuera. Escale siempre las características, ajuste C/gamma/epsilon y considere NuSVR como una parametrización alternativa.

Preguntas frecuentes

¿La lección «SVM para regresión (SVR)» es gratis?

Sí — el texto completo de «SVM para regresión (SVR)» 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 «SVM para regresión (SVR)»?

Tubo epsilon de SVR, nu-SVR y comparación de SVR con la regresión lineal en datos no lineales. 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 4 de 4.

¿Cuánto tiempo toma la lección «SVM para regresión (SVR)»?

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