机器学习与模式识别4:决策树

一、决策树简介

决策树(Decision Tree),又称判定树,是一个流程图形式的树结构,其中每个中间结点代表某个属性或某组属性上的测试,每个分支则对应了该测试的不同结果,每个叶结点代表某个类别或预测结果。从训练数据中产生决策树的算法,通常被称为决策树学习算法或决策树算法。

决策树是利用树形图进行决策的预测模型,表现出的是对象属性与对象值之间的一种映射关系,是归纳学习和数据挖掘的重要方法。决策树分为分类树和回归树两种:分类树对离散变量做决策树,回归树对连续变量做决策树。

根据一种分类规则,不断的由根节点向下分裂的过程,其中每一个内部节点表示一个属性上的判断,每一个分支代表一个判断结果的输出,最后的叶子节点代表一种分类结果。某一个分支的纯度越高越好,越能给出预测类别。

二、决策树算法与优势

决策树算法主要围绕两大核心问题展开:第一,决策树的生长问题,即利用训练样本集,完成决策树的建立过程。第二,决策树的剪枝问题,即利用检验样本集,对形成的决策树进行优化处理。

决策树的算法很多,如ID3、C4.5、CART等。这些算法均采用自顶向下的贪婪算法,每个节点选择分类效果最好的属性将节点分裂为2个或多个子结点,继续这一过程直到这棵树能准确地分类训练集,或所有属性都已被使用过。

三、决策树的修剪

决策树生成算法是通过递归的方法产生决策树,直到不能继续下去为止,这样产生的树往往对训练数据的分类很准确,但对未知数据的分类却没那么准确,即出现过拟合的现象。过拟合的原因在于学习时过度考虑如何提高训练数据的正确分类,从而构建出过于复杂的决策树。解决这个问题的方法是考虑决策树的复杂度,对已生成的决策树进行简化,我们把这种对已生成的树进行简化的过程称为剪枝。 剪枝是从已生成的树上裁掉一些子树或叶节点,并将其根结点或父节点作为新的叶节点,从而简化分类树模型。

1.预剪枝:指在决策树生成过程中,对每个结点在划分前先进行估计,若当前结点的划分不能带来决策树泛化性能提升,则停止划分并将当前结点标记为叶结点;

2.后剪枝:先从训练集生成一棵完整的决策树,然后自底向上地对非叶结点进行考察,若将该结点对应的子树替换为叶结点能带来决策树泛化性能提升,则将该子树替换为叶结点。

四、决策树的优缺点

优点:结构简单,便于理解;效率高,较为适合训练集数据量较大的情况,拟合能力强;通常不需要接受训练集数据外的知识;具有较高的分类精确度等等。决策树算法广泛应用于各个领域,如文本分类、语音识别、模式识别和专家系统等。

缺点:如果样本发生一点点改动,整个树的结构都会发生剧烈变化。

相关推荐
不去幼儿园38 分钟前
【MARL】深入理解多智能体近端策略优化(MAPPO)算法与调参
人工智能·python·算法·机器学习·强化学习
想成为高手49944 分钟前
生成式AI在教育技术中的应用:变革与创新
人工智能·aigc
YSGZJJ2 小时前
股指期货的套保策略如何精准选择和规避风险?
人工智能·区块链
无脑敲代码,bug漫天飞2 小时前
COR 损失函数
人工智能·机器学习
HPC_fac130520678163 小时前
以科学计算为切入点:剖析英伟达服务器过热难题
服务器·人工智能·深度学习·机器学习·计算机视觉·数据挖掘·gpu算力
小陈phd5 小时前
OpenCV从入门到精通实战(九)——基于dlib的疲劳监测 ear计算
人工智能·opencv·计算机视觉
Guofu_Liao6 小时前
大语言模型---LoRA简介;LoRA的优势;LoRA训练步骤;总结
人工智能·语言模型·自然语言处理·矩阵·llama
ZHOU_WUYI10 小时前
3.langchain中的prompt模板 (few shot examples in chat models)
人工智能·langchain·prompt
如若12310 小时前
主要用于图像的颜色提取、替换以及区域修改
人工智能·opencv·计算机视觉
老艾的AI世界11 小时前
AI翻唱神器,一键用你喜欢的歌手翻唱他人的曲目(附下载链接)
人工智能·深度学习·神经网络·机器学习·ai·ai翻唱·ai唱歌·ai歌曲