机器学习—决策树

142 阅读2分钟

1. 前言

什么是决策树?

  • 类似于流程图的树结构
  • 每个内部节点表示在一个属性上的测试
  • 每个分支代表一个测试输出
  • 每个树节点代表类或类分布

决策树的生成由两个阶段组成

  • 决策树的构建
    • 开始时,所有的训练样本都在根节点
    • 递归地去通过选定的属性,来划分样本
  • 树剪枝
    • 许多分支反映的是训练数据中的噪声和孤立点,树剪枝试图检测和剪去这种分支
  • 决策树的使用:对未知样本进行分类
    • 通过将样本的属性值与决策树相比较

2. 构建决策树的基本算法

Hunt算法

  • 信息增益——Information gain(ID3)
  • 增益比率——Gain ration(C4.5)
  • 基尼指数——Gini index

三种著名的决策树

Cart:基本决策树算法

ID3:利用增益比较不纯性,停止准则为当所有的记录属于同一类时,停止分裂,或当所有的记录都有相同的属性时,停止分类。

C4.5:ID3的改进版本,也是最流行的分类算法。采用多重分支和剪枝技术。

2.1 ID3算法

ID3使用信息增益作为属性选择度量。选择具有最高信息增益的属性作为节点N的分裂属性。

Entropy(熵)是不纯性的度量之一

image.png

image.png

可以借助数据来直观感受一下这个计算公式。

image.png

  • 数据集D的不纯度越高,期望信息,即熵(entropy)的值大
  • 划分所依据的特征越有区分度,划分得到的数据子集的D'的熵越小

由上述可知,一个集合的期望信息(熵)的求法。现在我们要探讨一下怎么样的一个划分算是一个好的划分!

2.1.1 划分的期望信息

假设我们按某属性A去划分D中的元组,假设划分成v个子集。

image.png

需要的期望信息越小,分区的纯度就越高。

image.png

使用A进行划分后,我们是希望熵变小的,所以Gain(A)越大越好。