为什么在决策树模型中连续特征比分类特征更重要?

数据挖掘 机器学习 特征选择 决策树 逻辑回归 可解释的ai
2021-09-30 08:04:24

我的预测模型中有分类特征和连续特征,并且想要选择(和排名)最重要的特征。

我已经使用一种热编码将所有分类变量转换为虚拟变量(以便在我的逻辑回归模型中更好地解释)。

一方面,我使用 LogisticRegression (sklearn) 并使用它们的系数对最重要的特征进行排名。通过这种方式,我在最重要的特征中看到了分类变量和连续变量。

另一方面,当我想使用决策树模型(SelectFromModel)对特征进行排名时,它们总是首先给连续特征更高的分数(feature_importances_),然后给分类(虚拟)变量。与逻辑回归相比完全不同的行为。

虽然决策树模型的性能比逻辑回归的性能高得多(大约 15%),但我想知道哪种特征排序(决策树或逻辑回归)更正确?为什么决策树模型更优先考虑连续特征?

2个回答

这可能是您对分类变量进行编码的方式。

如果您执行 One Hot Encoding (dummy),则每个编码特征将只有两个可能的值 [0,1]。考虑到如何计算特征权重,二元变量在决策树中的重要性通常较低。

假设每个示例,您正在尝试预测医院中患者的状况 Alive==0,Dead ==1。想象一下,你有一个叫做 Head_Shot[0,1] 的特征,它真的很罕见,它在数据集中只出现过几次。

线性模型将为该系数分配很大的权重,因为它对于目标变量至关重要。如果发生这种情况,其余的功能就没有意义了。

对于决策树,它可以只在其中一棵树中进行拆分,并且由于它计算特征加权时间的重要性,因此它出现的次数不会是如此相关的权重。

我假设您正在进行一次性编码。使用其他技术,情况会有所不同。而且我还假设您计算特征重要性的方式。所以这远不是一个科学的答案。

连续变量在决策树中可能更重要,因为每棵树都可以沿途进行多次拆分。

对不起,这个例子有点激烈,但我相信它说明了这一点。

在决策树模型中,特征是根据它们所涉及的拆分数量进行排名的。连续特征比分类特征更频繁地被拆分。