Я пытаюсь внедрить SVR в наборе данных linnerud, где я хочу использовать только одну функцию из набора данных, т. Е. Chinup и целевые данные, которые должны рассматриваться со всеми столбцами. Но когда я пытаюсь реализовать приведенный ниже код, он дает мне valueError. Если бы кто-то мог помочь мне определить и исправить ошибку, это было бы заметно. Спасибо
Вот что я попробовал ниже:
from sklearn import datasets
from sklearn import svm
from sklearn.metrics import mean_squared_error
from sklearn.model_selection import train_test_split
import numpy as np
def loadDataset():
ds = datasets.load_linnerud()
X,y = ds.data, ds.target
return X,y
def svmReg(data_list, y_list):
data_list=data_list[:, np.newaxis, 0] #use chinup as feature
X_train, X_test, y_train, y_test=train_test_split(data_list, y_list, test_size=0.30, random_state=42)
model=svm.SVR()
model.fit(X_train,y_train)
y_pred = model.predict(X_test)
print("SVM Mean squared error: %.2f"
% mean_squared_error(y_test, y_pred))
mse = mean_squared_error(y_test, y_pred)
return mse
data_list,y_list = loadDataset()
#print(data_list)
mse = svmReg(data_list, y_list)
Я хочу оценить производительность, поэтому я вычисляю среднеквадратическую ошибку. Пожалуйста, исправьте меня, если это неправильный способ оценки производительности.
См. Ошибку, которую я получаю: