我正在用不同的内核训练 6 个不同的分类器“决策树”、“随机森林”、“逻辑回归”和“SVM”。大约有 80 个因变量,包括分类变量和数值变量。对于我的实验,我添加了一个由任意随机数生成的“随机”列,但所有模型在验证集和测试集上的表现都更好。对这种现象有什么好的解释吗?
我的模型在使用任意随机特征时表现更好。我该如何解释这个?
数据挖掘
机器学习
特征选择
2022-03-03 20:16:26
1个回答
这是一个很好的健全性检查,但它失败的事实意味着某处一定有错误:
假设1:结果解释错误。性能提升是否显着?如果没有,那可能只是偶然。这意味着没有一个模型实际上使用了随机特征,一个碰巧稍微好一点。但是,使用 6 个不同的分类器发生这种情况的可能性非常低(准确地说是
假设2:随机特征生成错误。如果它确实有助于预测,那么一定有一个规则模式,所以它不是真正随机的。手动检查模型(尤其是决策树,它是最容易解释的),看看会发生什么。然后尝试用不同的随机序列重现结果并再次观察模型:如果模型以相同的方式使用随机特征,那么它就不是真正的随机。
假设3:训练集和测试集分割错误。我们总是低估犯一个愚蠢的错误是多么容易,所以我的钱花在了这个上;)更严重的是,随机特征的性能更好的事实指向了这个方向:假设它是真正随机的,并且大部分是不同的值,过拟合模型可以将其用作在训练集中看到的实例的 id。尝试重新采样和/或交叉验证。