我正在使用sklearn的随机森林模块根据50个不同的维度预测值。当我将维数增加到 150 时,模型的精度会急剧下降。我希望更多的数据只会使模型更准确,但更多的特征往往会使模型不那么准确。
我怀疑拆分可能只在一个维度上完成,这意味着在构建树木时,实际上更重要的特征受到的关注较少。这可能是原因吗?
是的,您添加的附加功能可能没有很好的预测能力,并且由于随机森林需要随机特征子集来构建单个树,因此最初的 50 个特征可能会被遗漏。要验证此假设,您可以使用 sklearn 绘制变量重要性。
您的模型过度拟合了数据。
来自维基百科:
过度拟合模型是一种统计模型,其中包含的参数多于数据可以证明的参数。
https://qph.fs.quoracdn.net/main-qimg-412c8556aacf7e25b86bba63e9e67ac6-c
有很多关于过拟合的插图,但例如,这个 2d 图代表了二元分类任务可以学习的不同函数。因为右边的函数有太多参数,所以它会学习不能正确泛化的错误数据模式。