Python 我能做些什么改变来避免SVR中的负R2分数吗?

Python 我能做些什么改变来避免SVR中的负R2分数吗?,python,regression,svm,Python,Regression,Svm,我正在使用支持向量回归来根据数据集中的其他特征预测外向性得分。然而,我不断生成的R2分数是负数 df = pd.read_csv('Training Dataset.csv') X = df.iloc[:, 1:11] y = df.iloc[:, 0] scaler = MinMaxScaler(feature_range=(0, 1)) X = scaler.fit_transform(X) best_svr = SVR() r2score = cross_val_score(best

我正在使用支持向量回归来根据数据集中的其他特征预测外向性得分。然而,我不断生成的R2分数是负数

df = pd.read_csv('Training Dataset.csv')

X = df.iloc[:, 1:11]
y = df.iloc[:, 0]

scaler = MinMaxScaler(feature_range=(0, 1))
X = scaler.fit_transform(X)

best_svr = SVR()
r2score = cross_val_score(best_svr, X, y, cv=5)

print(np.mean(r2score))
我尝试对SVR函数使用不同的内核,并且仅使用数据集中的一些特征来预测分数,但R2分数仍然为负值

df = pd.read_csv('Training Dataset.csv')

X = df.iloc[:, 1:11]
y = df.iloc[:, 0]

scaler = MinMaxScaler(feature_range=(0, 1))
X = scaler.fit_transform(X)

best_svr = SVR()
r2score = cross_val_score(best_svr, X, y, cv=5)

print(np.mean(r2score))
没有错误消息,但R2分数仍然为负值。我不确定这是因为它是一个糟糕的模型,还是我可以修改代码来纠正这个问题。我的数据集大约是14000 x 12,我想预测的分数范围是-0.3到0.5


提前谢谢

如果你拟合一个简单的数据集,比如“x=[1.0,2.0.3.0,4.0,5.0,6.0,7.0,8.0,9.0];y=[11.1,12.2,13.3,14.4,15.5,16.6,17.7,18.8,19.9]”,这种情况还会发生吗?