我正在使用scikit-learn,并希望运行带有RBF核的SVR。由于我的数据集非常大,从其他帖子的阅读中,我被建议使用SGD回归和RBF近似。有趣的是,与仅使用SGD相比,使用带有RBF的SGD得到的结果更差。我认为这可能是由于参数值设置错误。我尝试了循环调整RBF采样器的gamma和n_components参数,并尝试了多种SGD回归器的参数设置,但都没有效果。我还输出了训练和交叉验证的误差,两者大致相同,所以我认为这是偏差问题。
回答:
你为什么认为RBF特征空间必须比线性空间更准确?虽然通常情况下确实如此,但没有理由认为这必须是真的。现实世界中有很多类型的数据,RBF核的表现并不好。
除此之外,还有许多其他问题可以问/探索。这些问题通常在没有其他人使用/探索你的数据的情况下是无法回答的。例如:
- 原始特征值是否被正确归一化?
- 所使用的近似方法是否适合数据量/数据类型?
- 问题是否病态或接近病态?如果是的话,我们的近似是否是误差的原因?
- 原始特征是否有意义到足以使用RBF?
- 测试的参数值是否适合我的数据及其缩放?
- 当前获得的误差率是多少?对于可实现的误差率,有什么合理的期望?