有没有可能在几个属性中,模型在特征选择和训练阶段只能选择一个属性?然后基本上我们正在拟合一条线。基本上,我认为应该选择具有较少特征集的模型而不是具有大量特征的模型。如果一个特征() 提供更好的性能,那么我不应该只选择该特定功能吗?
特征选择
数据挖掘
特征选择
2022-02-24 22:11:40
1个回答
您可以查看一个名为 mboost (documentation)的 R 包,它执行标准提升(使用您提供的一些特征拟合线性模型)并仅对有助于最大程度减少误差的特征执行系数更新。
所有系数都从零开始,因此经过多次迭代,这会导致一些系数具有较大的值,一些具有较小的系数,并且通常一些具有等于零的系数......它们根本没有被选中。这意味着您在训练期间具有固有的特征选择。
这是一张图像,显示了训练期间的系数发展:它在右侧显示了特征的名称......你可以看到,一旦训练完成,一些值仍然为零。

该包内置了交叉验证、绘图等功能。
编辑:
你可以认为训练过程如下:
- 对数据进行回归
- 测量最适合的特征(例如,误差最小)
- 此功能“赢得了回合”并使其在最终方程中的系数增加了一个数量(例如 0.001)
- 重复步骤 1-3,直到满足阈值/标准
- 可以删除所有未赢得单轮的功能
你有多少功能?如果不是太多,您可以简单地多次运行模型,每次添加/删除一个特征。您还可以尝试使用诸如 BIC(贝叶斯信息准则)之类的指标来确定哪个模型可以最好地解释具有给定特征的数据。
其它你可能感兴趣的问题