Scikit Decistion Tree Visualization:错误值的含义

vvk*_*itk 5 machine-learning scikit-learn

我是机器学习的初学者,正在尝试使用决策树.我正在查看决策树http://scikit-learn.org/dev/_images/iris.svg的可视化,并想知道错误值表示什么.它是基尼指数或信息收益还是什么?也会欣赏它的直观含义.

Pet*_*fer 2

在这个具体示例中,节点的“错误”是到达该节点的所有示例的基尼指数。

一般来说,节点的“误差”取决于具体的杂质标准(例如用于分类的基尼系数或熵以及用于回归的均方误差)。

直观上,您可以将两个杂质标准(基尼和熵)视为多集均匀程度的度量。如果多重集主要包含一种类型的元素,则该多重集是同质的(这也称为“纯”,因此称为“杂质准则”)。在我们的例子中,多集的元素是到达相应节点的类标签。当我们分割一个节点时,我们希望得到的分区是纯的——这意味着类被很好地分离(一个分区主要包含一个类的实例)。

在二元分类的情况下,criterion="entropy"误差为 1.0 意味着节点中的正例和负例数量相等(最不均匀的多重集)。

您可以通过其包含扩展类型 on 对象的属性来访问DecisionTreeClassifier或之下的树数据结构。该对象将树表示为一系列并行的 numpy 数组。数组保存每个节点的初始误差;如果节点是分裂节点,则保存两个分区的误差之和。有关更多详细信息,请参阅https://github.com/scikit-learn/scikit-learn/blob/master/sklearn/tree/_tree.pyx#L45中的类文档。DecisionTreeRegressortree_sklearn.tree._tree.Treeinit_errorbest_error