正在和朋友讨论:假设我们有一个模型使用 1,000 个特征,另一个模型使用 100,000 个特征。假设他们的前 1,000 个特征是相同的,那么具有 100,000 个特征的模型不应该总是至少与 1,000 个特征模型一样好吗?
我这样说是因为,如果附加特征和目标变量之间存在相关性,它可以学习这一点。如果没有相关性,模型应该学会忽略。所以更多的特征应该总是至少和一个只有一部分相同特征的模型一样好。
我的朋友声称功能会严重影响模型性能,因此更多并不总是更好……这怎么可能?
谢谢!
正在和朋友讨论:假设我们有一个模型使用 1,000 个特征,另一个模型使用 100,000 个特征。假设他们的前 1,000 个特征是相同的,那么具有 100,000 个特征的模型不应该总是至少与 1,000 个特征模型一样好吗?
我这样说是因为,如果附加特征和目标变量之间存在相关性,它可以学习这一点。如果没有相关性,模型应该学会忽略。所以更多的特征应该总是至少和一个只有一部分相同特征的模型一样好。
我的朋友声称功能会严重影响模型性能,因此更多并不总是更好……这怎么可能?
谢谢!
这取决于您希望模型实现的目标。您的模型是否需要这些功能?例如,基因表达数据集通常有 10000 个特征(每个基因一个),但它们通常都是帮助确定重要的遗传途径所必需的。如果这些特征没有帮助,那么与具有大特征的模型提供相似精度的小特征尺寸总是更有帮助,因为在更快地获得分类/回归结果方面性能会提高。
太多的功能通常是一件坏事。它可能会导致过度拟合,使您的模型特别适合您的数据,并使模型在另一个数据集上表现得非常糟糕。另一件需要注意的是,较大的特征通常需要较大的样本量,否则您还将进行大量的正则化。
这就是为什么在特征减少领域有很多研究论文的原因。
训练集中虚假特征-目标相关的概率很小,但非零。因此,我们使用测试集。训练集中的虚假特征-目标相关性在测试集中也成立的概率更小。但是,对于每个新功能(假设),您都会增加发生这种情况的风险。少量观察会更糟(更多观察会更好)。
但是,假设您的朋友拥有前 100 个特征,而您有 1000 个特征,并且您正试图预测房价。可能该位置是 101功能。在保留所有特征的同时限制模型的方差是有道理的——例如,收缩、辍学或集成。
我认为你的问题的答案是更多的信息总是更好,但它伴随着风险。