一、决策树算法

1.决策树

决策树思想的来源非常朴素,程序设计中的条件分支结构(if-else)结构,最早的决策树就是利用这类结构分割数据的一种分类学习方法。

决策时:是一种树形结构,其实每个内部节点表示一个属性上的判断,每个分支代表一个判断结果的输出,最后每个叶节点代表一种分类结果,本质是一颗由多个判断节点组成的树。

2.决策树的分类原理

1.熵

1.1概念

物理学上,熵 Entropy是“混乱”程度的量度。

系统越有序,熵值越低,系统越无序,熵值越高。

1948年香农提出了信息熵(Entropy)的概念:

  • 信息理论

    1.从信息的完整性来说:

    当系统的有序状态一致时,数据越集中的地方熵值越小,数据越分散熵值越大。

    2.从信息有序性来说:

    当数据量是一致时,系统越有序,熵值越低;系统越混乱或者分散,熵值越高。

”信息熵“(information entropy)是度量样本集合纯度最常用的一种指标,用来描述信息的不确定程度。

3.决策树的划分依据——信息增益

3.1 概念

信息增益:以某种特征划分数据集前后的熵的差值。熵可以表示样本集合的不确定性,熵越大,样本的不确定性就越大。因此可以使用划分前后集合熵的差值来衡量使用当前特征对于样本集合D划分效果的好坏。

信息增益 = entropy(前) - entropy(后)

  • 定义与公式

信息熵的计算:

决策树算法(一)

条件熵的计算:

决策树算法(一)

其中:

D^vD**v 表示a属性中第v个分支节点包含的样本数

C^{kv}Ckv 表示a属性中第v个分支节点包含的样本数中,第k个类别下包含的样本数

一般而言,信息增益越大,则意味着使用属性 a 来进行划分所获得的"纯度提升"越大。因此,我们可用信息增益来进行决策树的划分属性选择,著名的 ID3 决策树学习算法 [Quinlan, 1986] 就是以信息增益为准则来选择划分属性。

其中,ID3 名字中的 ID 是 Iterative Dichotomiser (迭代二分器)的简称

3.2 案例:

如下图,第一列为论坛号码,第二列为性别,第三列为活跃度,最后一列用户是否流失。

我们要解决一个问题:性别和活跃度两个特征,哪个对用户流失影响更大

决策树算法(一)

通过计算信息增益可以解决这个问题,统计上右表信息

其中Positive为正样本(已流失),Negative为负样本(未流失),下面的数值为不同划分下对应的人数。

可得到三个熵:

a.类别信息熵

整体熵:

决策树算法(一)

b.计算性别属性的信息熵(a=“性别”)

决策树算法(一)

c.计算性别的信息增益(a=“性别”)

决策树算法(一)

b.计算活跃度属性的信息熵(a=“活跃度”)

决策树算法(一)

c.计算活跃度的信息增益(a=“活跃度”)

决策树算法(一)

活跃度的信息增益比性别的信息增益大,所以,活跃度对用户流失的影响比性别大。在做特征选择或者数据分析的时候,我们应该重点考察活跃度这个指标。

相关文章: