Para probar la clase SVR comenzamos importándola y cargando el dataset. Vamos a usar el conjunto de datos "Boston" para estimar el precio de los inmuebles de los barrios analizados:
from sklearn.svm import SVR
dataset = load_boston()
boston = pd.DataFrame(dataset.data, columns = dataset.feature_names)
boston["target"] = dataset.target
boston.head()
Separamos las características predictivas y la variable objetivo:
y = boston.pop("target")
X = boston
del(boston)
En importante en este caso escalar adecuadamente las características predictivas:
scaler = MinMaxScaler(feature_range = (-1, 1))
X = scaler.fit_transform(X)
Por último, instanciamos el algoritmo (con los parámetros por defecto) y estimamos el error aplicando validación cruzada:
model = SVR(gamma = "auto")
scores = cross_val_score(model, X, y, cv = 5)
print(scores)
print(scores.mean())
print(scores.std())
El coeficiente de determinación obtenido es de 0.303, lo que no es excesivamente elevado.