决策树原理

一、什么是决策树?

1、定义

决策树是一种解决分类问题的算法,由下面几种元素组成:

  • 根节点:包含样本的全集
  • 内部节点:对应特征属性测试
  • 叶节点:代表决策的结果

2、步骤

Step1. 特征选择

筛选出跟分类结果相关性较高的特征(通常利用【信息增益】进行筛选)

Step2. 决策树生成

从根结点出发,选择信息增益最大的特征作为节点特征,根据该特征的不同取值建立子节点;对每个子节点采用相同的方式生成新的子节点,直到信息增益很小或者没有新的特征可以选择为止。

Step3. 决策树剪枝

剪枝的主要目的是对抗“过拟合”,通过主动去掉部分分支来降低过拟合的风险。

二、理论基础

1、信息熵模型

(1)信息熵

  • 随机变量 X 的信息熵度量了 X 的不确定性。

  • 公式:

其中 n 是 X 不同取值的数目。

(2)联合熵

  • 两个随机变量 X 和 Y 的联合熵公式:

(3)条件熵

  • 随机变量 X 在 Y 下的条件熵度量了知道 Y 以后 X 剩下的不确定性。

  • 公式:

(4)信息增益

  • 信息增益度量了 X 在知道 Y 以后的不确定性减少程度。

  • 公式:

(5)信息增益比

  • 信息增益比是信息增益和特征熵的比值。

  • 公式:

2、基尼系数

  • 基尼系数代表了模型的不纯度,基尼系数越小,不纯度越低。

  • 公式:

三、决策树算法

1、ID3算法

  • 利用信息增益选择特征。
  • 信息增益准则对可取数目较多的属性有所偏好。

2、C4.5算法

  • 引入信息增益比选择特征。
  • 信息增益比对可取数目较少的属性有所偏好。

3、CART算法

  • 既可以用于分类,也可以用于回归问题。
  • 使用基尼系数取代信息熵。

参考资料:

ID3算法和C4.5算法

CART算法