为什么在决策树中使用交叉熵而不是0/1损失

时间:2018-05-12 17:31:03

标签: machine-learning scikit-learn statistics random-forest decision-tree

我知道交叉熵/互信息在分类决策中如何作为损失函数。但我想知道为什么0/1损失不是一个好选择。

1 个答案:

答案 0 :(得分:2)

在一般机器学习的背景下,0-1损失很少使用的主要原因是0-1损失不是凸损失函数,并且在0处也不可微分。结果证明是NP难的完全解决0-1损失问题。 Here is a source讨论了直接优化0-1损失的一些方法。

交叉熵可以被理解为以代表相同的一般想法的方式放松0-1损失(根据其预测正确标签的程度将候选分类归因于#34;成功"对于那个例子),但是它是凸的。

在标题中提到的决策树的特定上下文中,至少有两个与此相关的重要注意事项。

  • 在香草决策树培训中,用于修改模型参数的标准(决策分割)是分类纯度的一些度量,如information gaingini impurity,两者都代表在分类问题的设置中不同于标准交叉熵的东西。实际上,您可以在此处使用0-1损失作为拆分标准,这也称为使用错误分类率。 Here are some PDF lecture notes在幻灯片19中,它们显示了信息增益和基尼杂质的平滑函数的漂亮情节,与错误分类率的不可微分的尖锐点形成鲜明对比。

  • 在梯度提升树中,您再次需要一个可微分的损失函数,这主要是在使用均方误差的回归树的背景下讨论的,通常是指偏差损失或指数"指数&# 34; (AdaBoost)分类损失,但原则上可以以某种定制的方式使用交叉熵。

对于从凸起或至少可微分的损失函数中获益的问题,例如训练基于神经网络的分类器,使用像交叉熵这样的放松的好处通常非常大,并且通常没有太大的实际价值。完全优化0-1的损失。

对于普通决策树,您可以使用0-1损失来计算每个建议拆分的精度度量,您不会处理相同的NP难度优化问题,而是仅使用0-1损失作为拆分条件,仍然只搜索f - d个可能的f个功能分组,每个功能都有d个观察值。

我确信你可以做出一些手工波动的论据,即信息获取或基尼杂质允许对给定特征拆分的信息量进行更细致的解释,或者可能更具可信度,你可以认为纯粹优化原始分类每次拆分的准确性都可能导致严重的过度拟合,尤其是贪婪的方法。

但是最后,如果你有理由相信这是一个有价值的方式进行给定的建模,那么你不能将0-1损失用作分裂标准的硬性和快速的原因你正在处理的问题。