首页 > 其他分享 >决策树模型全解析:从原理构建到应用评估

决策树模型全解析:从原理构建到应用评估

时间:2024-12-24 16:54:03浏览次数:8  
标签:剪枝 样本数 正类 算法 构建 解析 节点 决策树

  1. 定义与基本概念
    • 决策树是一种基于树结构(包括根节点、内部节点、叶节点)进行决策的模型。根节点是整个决策过程的开始,内部节点代表一个属性上的测试,叶节点代表最终的决策结果或类别。
    • 例如,在一个判断水果是苹果还是橙子的决策树中,根节点可能是“颜色”这个属性,内部节点可以是“形状”等其他属性,叶节点则是“苹果”或“橙子”的判断结果。
  2. 决策树的构建过程
    • 特征选择
      • 目的是选择对分类或回归任务最有区分能力的特征作为当前节点的分裂属性。常用的特征选择标准有信息增益(ID3算法)、信息增益率(C4.5算法)和基尼指数(CART算法)。
      • 以信息增益为例,信息增益衡量的是使用某个特征对数据集进行划分后,信息不确定性减少的程度。假设数据集\(D\)的熵(表示信息的不确定性)为\(Ent(D)\),使用特征\(A\)划分数据集后,信息增益\(Gain(D,A)=Ent(D)-\sum_{v = 1}^{V}\frac{|D^{v}|}{|D|}Ent(D^{v})\),其中\(V\)是特征\(A\)可能取值的个数,\(D^{v}\)是特征\(A\)取值为\(v\)的子集。
    • 树的生成
      • 根据选定的特征选择标准,从根节点开始,递归地构建决策树。在每个节点上,选择最佳的特征进行分裂,直到满足停止条件。
      • 停止条件通常包括节点中的样本数小于某个阈值、样本属于同一类别或者树的深度达到预设的最大值等。
    • 剪枝处理
      • 决策树在生成过程中容易出现过拟合现象,即对训练数据拟合得很好,但对新数据的预测能力较差。剪枝是为了防止过拟合,提高决策树的泛化能力。
      • 预剪枝是在树的生成过程中提前停止树的构建,例如当某个节点的划分不能带来性能提升(如准确率提高)时,就不再对该节点进行分裂。后剪枝是在生成完整的决策树之后,从树的叶节点开始,逐步向上剪枝,比较剪枝前后树的性能,若性能不下降则进行剪枝。
  3. 不同决策树算法
    • ID3算法
      • 它是最早的决策树算法之一,以信息增益作为特征选择标准。优点是算法简单、易于理解,缺点是倾向于选择取值较多的特征,可能导致过拟合。
    • C4.5算法
      • 是对ID3算法的改进,采用信息增益率来选择特征。信息增益率克服了ID3算法对取值数目较多的属性的偏好。同时,C4.5算法能够处理连续值属性和缺失值属性。
    • CART算法(分类与回归树)
      • 既可以用于分类任务,也可以用于回归任务。对于分类任务,使用基尼指数选择特征,基尼指数\(Gini(D)=1 - \sum_{k = 1}^{|K|}p_{k}^{2}\),其中\(K\)是类别集合,\(p_{k}\)是样本属于类别\(k\)的概率。对于回归任务,CART算法使用最小二乘法来选择最佳分裂点。
  4. 决策树的评估指标
    • 准确率(Accuracy)
      • 对于分类问题,准确率是指正确分类的样本数占总样本数的比例,即\(Accuracy=\frac{TP + TN}{TP + TN+FP + FN}\),其中\(TP\)(真阳性)是实际为正类且被预测为正类的样本数,\(TN\)(真阴性)是实际为负类且被预测为负类的样本数,\(FP\)(假阳性)是实际为负类但被预测为正类的样本数,\(FN\)(假阴性)是实际为正类但被预测为负类的样本数。
    • 精确率(Precision)和召回率(Recall)
      • 精确率\(Precision=\frac{TP}{TP + FP}\),衡量的是预测为正类的样本中有多少是真正的正类。召回率\(Recall=\frac{TP}{TP + FN}\),衡量的是实际正类样本中有多少被正确预测为正类。
    • F1 - score
      • 是精确率和召回率的调和平均数,\(F1 - score=\frac{2\times Precision\times Recall}{Precision + Recall}\),综合考虑了精确率和召回率,用于平衡两者之间的关系。对于回归问题,可以使用均方误差(MSE)、平均绝对误差(MAE)等指标。均方误差\(MSE=\frac{1}{n}\sum_{i = 1}^{n}(y_{i}-\hat{y}_{i})^{2}\),其中\(y_{i}\)是真实值,\(\hat{y}_{i}\)是预测值,\(n\)是样本数量。平均绝对误差\(MAE=\frac{1}{n}\sum_{i = 1}^{n}|y_{i}-\hat{y}_{i}|\)。
  5. 应用场景
    • 分类问题
      • 广泛应用于医疗诊断(如判断患者是否患有某种疾病)、金融风险评估(如判断客户是否会违约)、图像识别(如判断图像中的物体是哪一类)等领域。例如,在医疗诊断中,决策树可以根据患者的症状、检查结果等特征来判断患者是否患有某种疾病。
    • 回归问题
      • 可用于预测房价、股票价格等连续值。比如,根据房屋的面积、房龄、周边配套设施等特征来预测房屋价格。
  6. 决策树的优势和局限性
    • 优势
      • 模型具有很好的可解释性,决策过程可以通过树结构直观地展示出来,易于理解和解释。能够处理离散型和连续型数据,对数据的分布没有严格要求。
    • 局限性
      • 容易过拟合,尤其是在数据量较小或特征维度较高的情况下。对缺失值比较敏感,如果数据中有大量缺失值,可能会影响决策树的构建和性能。并且单棵决策树的预测能力相对较弱,在一些复杂的任务中可能不如深度学习模型等。不过可以通过集成学习方法(如随机森林)来弥补这些不足。

标签:剪枝,样本数,正类,算法,构建,解析,节点,决策树
From: https://www.cnblogs.com/java-note/p/18628100

相关文章

  • 逻辑回归全解析:概念、估计、评估与特征工程及应用大揭秘
    一、基本概念定义与用途逻辑回归主要用于二分类问题,例如预测一个用户是否会购买某产品(是/否)、一封邮件是否是垃圾邮件(是/否)等。它也可以扩展到多分类问题,但本质上是通过组合多个二分类来实现的。逻辑回归模型输出的是事件发生的概率,而不是像线性回归那样直接输出一个数值。......
  • 《探索 HarmonyOS NEXT(5.0):开启构建模块化项目架构奇幻之旅 —— 构建基础特性层》
    从无到有,打造模块化项目。构建一个开箱即用的项目,从Git上拉取下来即可直接进行开发,其中涵盖路由通信、上下拉刷新、网络请求、事件通知、顶部tab封装等功能,项目里调用API为鸿洋大佬的wanAndroidAPI。后期将持续完善,若有不足之处,诚邀各位大佬多提宝贵建议,共同进步成长。为啥要模......
  • 英语四六级备考必备:2015-2024年历年真题+解析全汇总
    前言英语四六级考试是每年大学生最重要的语言能力测试之一。如何在备考中取得高分,除了掌握核心词汇和语法外,真题练习绝对是备考的“王牌利器”。本文为大家整理了从2015年至2024年6月的英语四六级考试真题及解析合集。这份资源不仅涵盖了近十年的考试真题,还配有详细解析,帮助你了......
  • 智能脂肪秤方案pcba设计研发步骤解析
    一、智能脂肪秤的创新之处1.精准测量技术智能脂肪秤采用先进的生物电阻抗分析(BIA)技术,能够准确测量人体的体脂率、肌肉量、骨量等多项身体指标。同时,通过不断优化测量算法和传感器技术,提高了测量的精度和稳定性。2.蓝牙连接与智能应用智能脂肪秤通过蓝牙技......
  • 高级技术文章:使用 Kotlin 和 Unirest 构建高效的 Facebook 图像爬虫
    引言随着大数据和人工智能技术的发展,社交媒体数据的价值日益凸显。Facebook作为全球最大的社交平台之一,拥有海量的用户生成内容。本文旨在指导开发者如何通过编程手段,合法合规地从Facebook获取图像数据,以支持研究和商业分析。Kotlin与Unirest简介Kotlin语言Kotl......
  • Taipy是个好神器!Python+Flask+ React快速构建 AI Web 应用的利器
    随着人工智能在各行业的应用越来越广泛,开发快速、高效的AIWeb应用成为众多互联网企业和开发者共同需求。Taipy,作为一个专为Python数据和AIWeb应用构建而生的工具,正迅速赢得大家的青睐。无论是算法专家还是开发新手,Taipy都提供了简洁高效的解决方案,让AIWeb应用......
  • 机器学习全解析:基础概念、任务类型、算法模型、应用及未来挑战与走向
    一、引言机器学习作为人工智能领域的核心分支,旨在让计算机系统从数据中自动学习模式和规律,以实现对未知数据的预测和决策。在当今数字化时代,机器学习已经广泛应用于各个领域,从图像识别、语音识别到金融预测、医疗诊断等,为解决复杂问题提供了强大的工具和方法。二、机器学习基础......
  • NVR接入录像回放平台EasyCVR如何构建一个高效、透明、可监控的智慧仓库系统?
    在数字化转型的大潮中,智慧仓库的概念应运而生,它代表着物流仓储管理的未来方向。随着直播电商业务的蓬勃发展,传统的仓储物流模式面临着前所未有的挑战,尤其是在订单处理的碎片化问题上。为了应对这些挑战,提升物流仓储运维管理的智能化水平变得尤为迫切。本文将深入探讨如何通过技术......
  • 用 Python 构建一个简单的爬虫:抓取豆瓣电影信息
    用Python构建一个简单的爬虫:抓取豆瓣电影信息爬虫是Python开发者的必备技能之一。本文将带你从零开始,构建一个简单的爬虫,用来抓取豆瓣电影Top250的信息,包括电影名称、评分和简介。目录项目简介环境配置与依赖安装解析目标网站结构编写爬虫代码保存数据到CSV文......
  • 文件解析漏洞靶场实战
    1.IIS6.X安装windows2003和IIS6.X环境,进入inetpub/wwwroot目录下,创建一个.asp后缀的文件创建一个后缀为.jpg的文件,写入一句话,显示当前时间查看IP地址,在浏览器访问.jpg文件2.IIS7.X开启IIS7.X,并修改php.ini里面的配置文件修改windows系统中的IIS服务,并重启PHPstudy......