使用随机森林搜索具有不同特征的超参数

数据挖掘 机器学习 随机森林 决策树 超参数 网格搜索
2021-09-21 06:42:43

我有一个数据集,我想在其中执行分类模型,所以我决定使用随机森林。我拥有的功能数量大约为 200,我想测试哪一组功能给了我更好的结果。为了实验,我不想使用任何特征重要性方法。

所以我所做的就是将我的特征拆分为 20、40、60、80 和 100 个特征组,无需替换。我正在使用 GridSearch 来调整我的 RF 的超参数。我的问题是,如果我想比较每个模型的准确性(具有 20 个特征的模型、具有 40 个特征的模型,等等),将 GridSearch 应用于每个特征子集是公平的。或者我应该只执行一次 Gridsearch,假设使用 20 个特征的模型,然后对 40 个特征、60 个特征等使用相同的超参数。

有什么帮助吗?

谢谢

1个回答

通过执行 GridSearch,我知道您想说搜索最佳超参数。

为简单起见,假设您想要拟合带有 1 个特征和 100 个特征的惩罚(套索/岭)的线性回归。您正在寻找的超参数是λ 惩罚。

很容易看出,对于 1 个特征,您的模型可能需要一些参数,这可能是该特征具有完美的分布并且根本不需要任何惩罚。但是当我们选择 100 个特征时,会有一些噪音,您可能需要惩罚以确保您的模型能够很好地泛化。所以λ 会有所不同

通过这个例子,我的想法是表明超参数化是每个任务的特定问题。

对于随机森林,它是一样的。不同的特性需要不同的参数,所以是的,如果你想达到最优,你必须对每个特性子集做一个 GridSearchCV