第五十章 倒计时53天、决策树理论的应用 第(1/4)分页

字数:   加入书签

A+A-

    决策树作为重要的机器学习算法,广泛应用于多个领域,但仍面临一些挑战。www.rulanshu.com

    随着数据量的不断增长和数据复杂性的提高,决策树算法在处理大规模数据时可能会面临计算效率低下的问题。

    例如,在处理具有大量特征和样本的数据集时,决策树的构建过程可能会变得非常耗时。

    此外,决策树还容易出现过拟合的问题,即模型在训练数据上表现良好,但在新的未见过的数据上表现不佳。

    当决策树的分支过多时,它可能会过度学习训练数据中的噪声和特定特征,从而导致泛化能力下降。

    决策树理论的发展经历了多个阶段,从早期的 ID3算法到 C4.5算法,再到后来的 CART算法等,不断在特征选择标准、剪枝策略等方面进行改进。

    在应用方面,决策树广泛应用于金融、医疗、市场营销等多个领域。

    例如,在金融领域,决策树可以用于信用评分、风险评估和欺诈检测等方面。

    通过分析客户的个人信息和历史数据,可以预测客户的信用状况和风险等级。

    然而,决策树仍然面临着一些挑战,如过拟合、计算效率低下等问题。

    决策树的定义与概念

    决策树是一种依托于策略抉择而建立起来的预测模型,它代表对象属性与对象值之间的一种映射关系。

    在机器学习中,决策树可以认为是 if-then规则的集合,也可以定义为在特征空间与类空间上的条件概率分布。

    决策树具有模型可读性强、分类速度快等优点。

    决策树的结构组成

    决策树由决策点、方案枝、状态结点、概率枝和结果点构成。

    决策点代表需要做出决策的节点,方案枝表示不同的决策方案,状态结点表示不同的自然状态,概率枝表示不同自然状态发生的概率,结果点则表示在特定决策方案和自然状态下的结果。

    例如,在风险决策中,决策树可以帮助决策者清晰地看到不同决策方案在不同自然状态下的可能结果,从而做出更明智的决策。

    决策树的类型

    决策树的分裂属性分为三种情况。

    一是属性是离散值且不要求生成二叉决策树,此时用属性的每一个划分作为一个分支。

    例如,对于一个属性有三个不同取值的情况,就会产生三个分支。

    二是属性是离散值且要求生成二叉决策树,此时使用属性划分的一个子集进行测试,按照“属于此子集”和“不属于此子集”分成两个分支。

    三是属性是连续值,此时确定一个值作为分裂点 split_point,按照&a;gt; split_point和&a;lt;=split_point生成两个分支。

    例如,对于一个连续属性如年龄,可以选择一个年龄值作为分裂点,将样本分为大于和小于等于这个年龄值的两个子集。

    决策树的学习流程

    决策树学习的主要目的是为了产生一棵泛化能力强的决策树。

    其基本流程遵循“分而治之”的策略。

    首先,生成节点 node。

    如果节点中样本全属于同一类别,将 node标记为该类别叶节点并返回;

    如果属性为空或样本在所有属性上取值相同,将 node标记为叶节点,其类别标记为样本数量最多的类并返回;

    否则,从属性集中选择最优划分属性,对每个属性值生成分支,若分支样本集为空,将分支节点标记为叶节点,其类别为父节点中样本数量最多的类,否则以该分支样本集继续递归生成子树。

    递归返回的条件

    当当前节点包含的样本全属于同一类别时,无需划分,直接标记为该类别叶节点。

    当当前属性值为空,或者所有样本在所有属性上取相同的值时,也无法划分,

    此时将节点标记为叶节点,其类别设定为该节点所含样本最多的类别,这是利用当前节点的后验分布。

    当当前节点包含的样本集合为空时,同样把当前节点标记为叶节点,但将其类别设定为其父节点所含样本最多的类别,这是把父节点的样本分布作为当前节点的先验分布。

    划分选择的方法

    在决策树算法中,划分选择的关键是使决策树的分支节点所包含的样本尽可能属于同一类别,提高节点的“纯度”。

    常用的度量样本集合纯度的指标有信息熵、基尼系数和方差。

    信息熵是度量样本集合纯度最常用的指标之一,假设当前样本集合 D中第 k类样本所占的比例为 p_k,则 D的信息熵定义为 Ent (D)=-Σp_k*log?(p_k),Ent (D)的值越小,样本的纯度越高。