机器学习——决策树

本文详细介绍了决策树模型,包括分类决策树的生成、特征选择、回归决策树和剪枝策略。从信息熵、信息增益、基尼指数等角度讨论了特征选择标准,并对比了ID3、C4.5和CART算法的优缺点。最后,探讨了决策树的剪枝方法,以防止过拟合,确保模型的泛化能力。
摘要由CSDN通过智能技术生成

基于周志华《机器学习》和李航《统计学习方法》的总结

目录

1 决策树模型

2 特征选择与分类决策树生成

2.1 样本集合纯度指标

2.2 ID3算法

2.3 C4.5算法

2.4 CART算法

3 回归决策树

4 决策树剪枝


1 决策树模型

       分类决策树模型是一种描述对实例进行分类的树形结构。决策树由结点(node)和有向边(directed edge)组成。结点有两种类型:内部结点(internal node)和叶结点(leaf node)。内部结点表示一个特征或属性,叶结点表示一个类。用决策树分类,从根结点开始,对实例的某一特征进行测试,根据测试结果,将实例分配到其子结点;这时,每一个子结点对应着该特征的一个取值。如此递归地对实例进行测试并分配,直至达到叶结点。最后将实例分到叶结点的类中。

  1. 可以将决策树看成一个if-then规则的集合。将决策树转换成if-then规则的过程是这样的:由决策树的根结点到叶结点的每一条路径构建一条规则;路径上内部结点的特征对应着规则的条件,而叶结点的类对应着规则的结论。决策树的路径或其对应的if-then规则集合具有一个重要的性质:互斥并且完备。这就是说,每一个实例都被一条路径或一条规则所覆盖,而且只被一条路径或一条规则所覆盖。这里所谓覆盖是指实例的特征与路径上的特征一致或实例满足规则的条件。
  2. 从条件概率的角度思考决策树。决策树表示给定特征条件下类的条件概率分布。这一条件概率分布定义在特征空间的一个划分上。决策树的一条路径对应于划分中的一个单元,每个单元定义一个类的概率分布就构成了一个条件概率分布。假设X为表示特征的随机变量,Y为表示类的随机变量,那么这个条件概率分布可以表示为P(Y|X)。

       回归决策树对应着输入空间(即特征空间)的一个划分以及在划分单元上的输出值。假设将输入空间划分为N个单元:R_{1},R_{2},...,R_{N},那么每个区域的输出值就是:r_{n}=avg\left ( y_{i}|x_{i}\in R_{n} \right ),即区域所有y值得平均。详细间CART算法中最小二乘回归树。

       决策树学习算法包含特征选择决策树的生成决策树的剪枝。分类决策树生成的基本流程:

        其中,递归返回共三种情况:

(1)当前结点(某一属性的某一取值)中的样本均属于同一类别(如均是好瓜),则该结点标记为叶结点并返回;

(2)当没有其他属性,或是当前结点的样本在其他属性上的取值都相同(但可能类别不同,比如既有好瓜又有坏瓜),则该结点标记为叶结点,并将该结点的类别标记为样本数最多的类别(如当前结点中好瓜样本量>坏瓜样本量,则该结点标记为好瓜);

注意:周志华《机器学习》中指出利用的是该结点的后验分布——P\left ( \theta|x \right ),即已知结果猜原因。

(3)当前结点所包含样本为空,则该结点标记为叶结点,且类别标记为其父节点样本数最多的类别。

注意:周志华《机器学习》中指出把父结点的分布作为先验分布——P\left ( \theta\right ),即根据历史规律确定原因的概率分布即先验概率

        关于先验、后验、似然估计、贝叶斯的详细例子见 https://blog.csdn.net/qq_23947237/article/details/78265026 。

        第8步即对应特征选择部分,详细见后。

        决策树的剪枝(pruning)是决策树学习算法对付“过拟合”的主要手段。决策树剪枝的基本策略有“预剪枝”(prepruning)和”后剪枝”(post-pruning)。

        预剪枝 是指在决策树生成过程中,对每个结点在划分前先进行估计,若当前结点的划分不能带来决策树泛化性能提升,则停止划分并将当前结点标记为叶结点;后剪枝 是先从训练集生成一颗完整的决策树,然后自底向上地对非叶结点进行考察,若将该结点对应的子树替换为叶结点能带来决策树泛化性能提升,则将该子树替换为叶结点。详细见后。

        决策树的生成对应于模型的局部选择,决策树的剪枝对应于模型的全局选择。决策树的生成只考虑局部最优,相对地,决策树的剪枝则考虑全局最优。

2 特征选择与分类决策树生成

        决策树学习的关键是第8行,即如何选择最优划分属性。随着划分过程的不断进行,我们希望决策树的分支节点所包含的样本尽可能属于同一类别,即结点的“纯度”(purity)越来越高。

2.1 样本集合纯度指标

        度量样本集合纯度的指标:信息增益、信息增益率(比)、基尼指数。

信息增益——

        假定当前样本集合D中第k类样本所占的比例为p_{k}(k=1,2,...,|y|),则D的信息熵定义为:

                                                                          Ent(D)=-\sum^{|y|}_{k=1}p_{k} \log_{2}p_{k} 

Ent(D)的值越小,则D的纯度越高。

        条件熵H(Y|X)表示在已知随机变量X的条件下随机变量Y的不确定性。随机变量X给定的条件下随机变量Y的条件熵H(Y|X),定义为X给定条件下Y的条件概率分布的熵对X的数学期望:

                                             H\left ( Y|X \right )=\sum_{i=1}^{n}{p_{i}H\left ( Y|X={x}_{i} \right )},p_{i}=P(X={x}_{i}),i=1,2,...,n

       当熵和条件熵中的概率由数据估计(特别是极大似然估计)得到时,所对应的熵与条件熵分别称为经验熵(empirical entropy)和经验条件熵

决策树算法是一种广泛应用于分类和回归的机器学习算法,它基于树形结构对样本进行分类或预测。决策树算法的主要思想是通过一系列的判断来对样本进行分类或预测。在决策树中,每个节点表示一个属性或特征,每个分支代表该属性或特征的一个取值,而每个叶子节点代表一个分类或预测结果。 决策树算法的训练过程主要包括以下步骤: 1. 特征选择:根据某种指标(如信息增益或基尼系数)选择最优的特征作为当前节点的分裂属性。 2. 决策树生成:根据选择的特征将数据集分成若干个子集,并递归地生成决策树。 3. 剪枝:通过剪枝操作来提高决策树的泛化性能。 决策树算法的优点包括易于理解和解释、计算复杂度较低、对缺失值不敏感等。但是,决策树算法也存在一些缺点,如容易出现过拟合、对离散数据敏感等。 下面是一个决策树算法的案例:假设我们要根据一个人的年龄、性别、教育程度和职业预测其收入水平(高于或低于50K)。首先,我们需要将这些特征进行编码,将其转换为数值型数据。然后,我们可以使用决策树算法对这些数据进行训练,并生成一个决策树模型。最后,我们可以使用该模型对新的数据进行分类或预测。例如,根据一个人的年龄、性别、教育程度和职业,我们可以使用决策树模型预测该人的收入水平。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值