背景: 我目前正在制作和比较机器学习模型来预测住房数据。我有大约 32000 个数据点、42 个特征,我正在预测房价。我正在比较随机森林回归器、决策树回归器和线性回归。我可以看出发生了一些过度拟合,因为我的初始值与交叉验证值如下:
RF:10 倍 R 平方 = 0.758,负 RMSE = -540.2 与未经验证的 R 平方为 0.877,RMSE 为 505.6
DT:10 倍 R 平方 = 0.711,负 RMSE = -576.4 与未经验证的 R 平方为 0.829 和 RMSE 为 595.8。
LR:10 倍 R 平方 = 0.695,负 RMSE = -596.5 与未经验证的 R 平方为 0.823 和 RMSE 为 603.7
我已经调整了 RF 和 DT 的超参数,所以我正在考虑将特征选择作为下一步来减少一些过度拟合(特别是因为我知道我的特征重要性/系数)。
关于我的问题: 特征选择是否独立于任何机器学习算法?-> IE,我是否应该选择严格的特征子集应用于我的所有机器学习模型,以在比较模型性能时保持一切一致?或者我应该对每个模型进行唯一的特征选择(为每个模型选择一个独特的特征子集)?什么通常被认为是功能过多?在这种情况下是否可以使用套索特征选择(因为我有连续变量)?
作为一个后续问题,在调整我的超参数之后进行特征选择是否可以?选择我的功能后,我是否需要再次调整它们?
最后,我注意到我对 DT 和 LR 的验证 RMSE 低于未验证的 RMSE。我认为这是不确定的,但有人有什么想法吗?