决策树的优点缺点
相对于其他模型而言,决策树有如下优点:
(1)决策树所产生的预测规则的形式为:如果 x r 1 ∈ A 1 …且 x r m ∈ A m ,那么 Y =y,很容易解释。
(2)在树的生长过程中,对定序或连续自变量而言只需使用变量取值的大小顺序而不使用具体取值。因为对这些自变量进行任何单调增变换(例如,取对数)都不改变变量取值的大小顺序,而对自变量进行任何单调减变换(例如,取倒数)把原来取值的大小顺序完全颠倒;所以这些变换都不会改变划分的结果。因此,在建立决策树时,无需考虑自变量的转换(但注意,有时需要考虑因变量的转换)。
(3)因为决策树只使用了定序或连续自变量取值的大小顺序,它对自变量的测量误差或异常值是稳健的。
(4)决策树能够直接处理自变量的缺失值。如第二章所述,如果数据中有多个自变量存在缺失,决策树可用来插补这些自变量的缺失值。
(5)决策树可以用作变量选择的工具。
但是,决策树也有如下缺点:
(1)每个非叶节点的划分都只考虑单个变量,因此很难发现基于多个变量的组合的规则。例如,可能按照2 x 1 +3 x 2 的值划分比较好,但决策树只会考虑按照 x 1 或x 2 的值进行划分,很难发现这样的组合规则。
(2)为每个非叶节点选择最优划分时,都仅考虑对当前节点划分的结果,这样只能够达到局部最优,而无法达到全局最优。
(3)正因为决策树是局部贪婪的,树的结构很不稳定。例如,若将学习数据集随机分割为不同的训练数据集和修正数据集,可能对于某次分割, x r 1 被选作根节点的划分变量,而对于另一次分割, x r 2 ( r 2 ≠ r 1 )被选作根节点的划分变量,之后继续划分下去,这两棵树的结构差异会非常大。这种差异也可能使得两棵树的预测性能存在很大差异。而这些差异仅仅是由学习数据集随机分割的差异带来的!此外,因为不同结构的树隐含的预测规则存在不同的解释,所以这种结构不稳定性也降低了决策树的可解释性。