sklearn高分,但绩效低下

时间:2019-02-18 16:46:33

标签: machine-learning scikit-learn regression

您能否帮助我确定我遇到错误还是问题可能出在我的实现中?

我有一个包含5个特征和2000多个观测值的数据集,我使用SVR进行回归测试并通过网格搜索选择参数。如果我不缩放数据,那么我得到的最佳分数接近于零,但是如果我按比例缩放了,最好的分数约为0.90。

当我手动测试数据时,它会完全随机地预测错误的值。怎么会这样?我希望最好的分数能显示在交叉验证过程中对新训练数据进行验证的程度。我想如果我的模型不能很好地产生,我就不会获得高分。我是不是该?这可能是错误吗?

SKlearn版本为0.19.1(来自Ubuntu Linux 18.04 x64 LTS平台的软件包) Python版本是3.6.7

pip升级值得吗?还有其他想法吗?谢谢。

编辑:请参见下面的代码,该代码会产生较高的分数,但仍然不能很好地概括化-尽管这是回归的,但评分应反映预测值与测试值的差异:

C_range = 2.0 ** np.arange(-5, 15, 2)
gamma_range = 2.0 ** np.arange(-5, 15, 2)
parameters = {"kernel":["rbf"], "C":C_range, "gamma":gamma_range}
estimator = svm.SVR()
clf = GridSearchCV(estimator, parameters, cv=3, n_jobs=-1, verbose=0)
clf.fit(x, y)
print( clf.best_score_ )

0 个答案:

没有答案