目录
思维导图
决策树
是什么?
本质是:从训练数据集种归纳出一组分类规则,与训练数据集不想矛盾的决策树(即能对训练数据进行正确分类的决策树)可能有多个,也可能一个也没有。
决策树可以认为是if-then规则的集合,也可以认为是定义在特征空间与类空间上的条件概率分布。其主要优点是模型具有可读性,分类速度快。
If-then:决策树路径或其对应的if-then规则集合具有一个重要的性质,互斥并且完备,也就是说,每一个实例都被一条路径或一条规则所覆盖,而且只被一条路径或者一条规则覆盖。
概率分布:决策树将特征空间划分为互不相交的单元,并在每个单元定义一个类的概率分布。决策树的一条路径对应于划分中的一个单元,决策树所表示的条件概率分布由各个单元给定条件下类的条件概率分布组成,即P(Y|X),叶结点(单元)上的条件概率往往偏向某一类。
决策树的学习
1、特征选择 2、决策树生成 3、剪枝
一、特征选择
特征选择在于选取对训练数据具有分类能力的特征。
如果利用一个特征进行分类的结果与随机分类的结果没有很大区别,则称这个特征是没有分类能力的。经验上扔掉这样的特征对决策树学习的影响不大。
通常,特征选择的准则是信息增益或信息增益比。
(1)信息增益
学习之前离不开熵的学习
熵:
熵度量的是随机变量的不确定性。熵越大,不确定性越大。
pi = 0时,0log0 = 0
条件熵:
条件熵H(Y|X)表示在已知随机变量X的条件下随机变量Y的不确定性。
当概率由数据估计(特别是极大似然估计)时,所对应的熵与条件熵分别称为经验熵与经验条件熵。
经验熵和经验条件熵:
当熵和条件熵中的概率由数据估计(特别是极大似然估计)得到时,所对应的熵与条件熵分别称为经验熵和经验条件熵
互信息:
熵与条件熵之差称为互信息。决策树学习中的信息增益等价于训练数据集中类与特征的互信息。
信息增益:
表示得知特征X的信息而使得类Y的信息的不确定性减少的程度
选择方法时
给定训练数据集D和特征A,经验熵H(D)表示对数据集D进行分类的不确定性。而经验条件熵H(D|A)表示在特征A给定的条件下对数据集D进行分类的不确定性。那么它们的差,即信息增益,就表示由于特征A而使得对数据集D的分类的不确定性减少的程度。显然,对于数据集D而言,信息增益依赖于特征,不同的特征往往具有不同的信息增益。信息增益大的特征具有更强的分类能力。
(2)信息增益比:
以信息增益划分,存在“偏向于选择取值较多的特征”的问题,用信息增益比可以校正这一问题。
定义:信息增益g(D,A)与训练数据集D关于特征A的值的熵Ha(D)之比
HA(D)为训练集D关于特征A的值的熵,n是特征A的取值个数。
二、决策树的生成
决策树生成的经典算法有ID3和C4.5。
ID3:ID3的核心是在各个结点上应用“信息增益”准则选择特征。
从根结点出发,选择信息增益最大的特征作为结点特征,由该特征的不同取值建立子结点,对子结点递归调用以上方法。直到所有特征的信息增益均很小(设一个阈值ε)或没有特征可选为止。
C4.5:对ID3算法进行了改进,生成过程中用信息增益比来选择特征。
三、决策树的剪枝
决策树生成算法递归地产生决策树,知道不能继续下去为止。这样生成的树,会对训练数据分类的精确,但若加入一个未知的新数据,其分类却没有那么准确,会出现过拟合现象。为了能够增加决策树的泛化能力,可以对已生成的树进行简化处理,即剪枝。
通常的做法是:极小化决策树整体的损失函数或代价函数来实现。
具体做法:
(1)计算每个结点的经验熵。
(2)递归地从树的叶结点向上回缩,设一组叶结点回缩到其父结点之前与之后的整体树为TB与TA,如果TA的损失值小于TB的损失值,则剪枝,将父结点变成新的叶结点。
(3)返回(2),直至不能继续,得到损失函数最小的子树Tα
note:
“决策树生成”只考虑了通过提高信息增益(或信息增益比)对训练数据进行更好的拟合。而“决策树剪枝”通过优化损失函数,还考虑了减小模型复杂度。“决策树生成”学习局部的模型,而“决策树剪枝”学习整体的模型。
CART算法
CART(classification and regression tree),分类与回归树,是应用广泛的决策树学习方法,既可用于分类,也可用于回归。
CART算法分为两步:
(1)决策树生成:基于训练数据集生成决策树,生成的决策树要尽量大。
(2)决策树剪枝:用验证数据集对已生成的树进行剪枝并选择最优子树,这时用损失函数最小作为剪枝的标准。
CART树的生成
递归地构建二叉决策树的过程。对回归树用平方误差最小化准则,对分类树用基尼指数最小化准则,进行特征选择,生成二叉树。
CART剪枝
(1)形成一个子树序列
(2)通过交叉验证法在独立的验证数据集上对子树序列进行测试,从中选择最优子树。
ID3,C4.5,CART的区别
1.ID3为最大信息增益,又叫互信息,度量数据集在知道特征之后不确定性减少的程度。
2.C4.5为最大信息增益比——互信息除以数据集关于该特征的取值熵。
3.CART是一颗二叉树,采用二元切割把特征取值切成两份,每一步选择基尼系数(数据不纯度)最小的特征及其对应的划分点进行分类。
ID3倾向于选择取值较多的特征,C4.5一定程度对取值多的特征进行惩罚,提高泛化。CART的二值化分适用于连续变量。一般工业上,优先采用CART,再采用C4.5,然后是ID3。