Scikit决策树可视化:错误值的含义



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

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

通常,节点的"误差"取决于具体的杂质标准(例如,用于分类的基尼系数或熵以及用于回归的均方误差)。

直觉上,你可以把杂质标准(基尼系数和熵)都看作是一个多集齐性的度量。如果一个多集主要包含一种类型的元素,那么它就是同构的(这也被称为"纯",因此得名"杂质准则")。在我们的例子中,多集合的元素是到达相应节点的类标签。当我们分割一个节点时,我们希望得到的分区是纯的——这意味着类是很好地分离的(一个分区主要包含一个类的实例)。

criterion="entropy"和二进制分类的情况下,1.0的误差意味着节点中有相等数量的正示例和负示例(在齐次多集中最多)。

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

最新更新