采纳答案成功!
向帮助你的同学说点啥吧!感谢那些助人为乐的人
poly_clf = PolynomialRegression(9)
poly_clf.fit(X_train, y_train)
score = poly_clf.score(X_test, y_test)
score
在多项式回归中用split分割数据集后,再算了score得分,得分为-1.223,想问下老师-1.223的话,是指的偏差为-0.22?(和-1对比),还是指的偏差为-2.22?(和1对比)
多谢波波老师~
对于回归问题,默认的score返回的是R square的结果。(回忆5-6的内容)。Rsquare为1,代表预测完全准确。R square为0,代表预测水平和只预测平均值是一个水平。通常R square的值应该在0-1之间,越高越好,这个模型才有可取之处。R square为负数,代表预测水平还不如只预测平均值。说明你得到的模型非常差。此时需要考虑:
1)看看在训练集上score,如果非常高,说明过拟合了。你在多项式回归中传入的degree为9,高概率过拟合;
2)数据中是否有非常影响结果的outlier;
3)这个模型是否本身不适合你的数据,需要换其他模型。
加油!
老师既然是r方的话,不应该都是正数吗?
r2有可能为负数,说明你的模型的预测结果还不如直接预测平均值:)
收到~
登录后可查看更多问答,登录/注册
Python3+sklearn,兼顾原理、算法底层实现和框架使用。
2.4k 19
3.4k 17
2.9k 15
1.6k 15
1.4k 14