当前位置: 首页 > news >正文

决策树(续)

  1. 决策树主要算法

    • ID3 算法
      • 核心指标:信息增益,指某个属性带来的熵增,信息增益越大,使用该属性划分的 “纯度提升” 越大,故以此选择划分属性。
      • 特点:对可取值数目较多的属性有所偏好,例如在极端情况下,最优划分可能是 “编号” 这类属性。
      • 示例数据:包含天气、温度、湿度等属性及 “是否出去玩” 的标签(7 条样本)。
    • C4.5 算法
      • 核心指标:信息增益率,计算公式为信息增益 ÷ 自身熵,用于优化 ID3 对多值属性的偏好问题。
      • 示例数据:与 ID3 算法使用相同的 7 条样本数据(天气、温度等属性及 “是否出去玩” 标签)。
    • CART 算法
      • 核心指标:基尼指数 Gini (D),反映从数据集 D 中随机抽取两个样本,其类别标记不一致的概率。
      • 纯度关系:样本属于某类别的概率 p 越大,Gini (D) 越小,数据集 D 的纯度越高
  2. 连续值的处理方法

    • 采用贪婪算法,步骤如下:
      • 排序:对连续值进行排序(如示例中 Taxable Income 排序为 60、70、75、85、90、95、100、120、125、220)。
      • 确定分界点:若进行二分,可能有多个分界点(如 10 个值有 9 个分界点)。
      • 离散化:将连续值分割为不同区间(如分割成 TaxIn≤80 和 TaxIn>80,或 TaxIn≤97.5 和 TaxIn>97.5)。
  3. 决策树剪枝策略

    • 剪枝原因:决策树过拟合风险大,理论上可完全分开数据,需通过剪枝优化。
    • 预剪枝
      • 定义:边建立决策树边进行剪枝的操作,更实用。
      • 方法:限制树的深度、叶子节点个数、叶子节点包含的样本数、信息增益量等。
    • 后剪枝
      • 定义:建立完决策树后进行剪枝操作。
      • 衡量标准:最终损失 = 自身的 GINI 系数值 +α× 叶子节点数量。
        • α 越大,模型越不易过拟合,但可能影响结果准确性;
        • α 越小,更注重结果好坏,过拟合风险可能较高。
  4. 决策树代码实现

    • 核心函数:DecisionTreeClassifier()
    • 关键参数表格
    • 参数说明
      criterion可选 gini(基尼系数)或 entropy(信息熵)
      splitter可选 best(在所有特征中找最好切分点)或 random(在部分特征中找)
      max_features可选 None(使用所有特征)、log2、sqrt、N(指定数量)
      max_depthint 或 None(默认 None),设置树的最大深度,推荐 5-20 之间,深度越大越易过拟合

http://www.dtcms.com/a/338877.html

相关文章:

  • 大数据技术栈 —— Redis与Kafka
  • 字符串与算法题详解:最长回文子串、IP 地址转换、字符串排序、蛇形矩阵与字符串加密
  • 磨砂玻璃登录页面使用教程 v0.1.1
  • 【Linux仓库】进程创建与进程终止【进程·柒】
  • 通过C#上位机串口写入和读取浮点数到stm32的片内flash实战4(通过串口下发AD9833设置值并在上位机显示波形曲线)
  • 基于单片机智能点滴输液系统
  • 元素的width和offsetWidth有什么区别
  • java八股文-中间件-参考回答
  • Win11家庭版docker安装MaxKB
  • 【论文阅读】DETR3D: 3D Object Detection from Multi-view Images via 3D-to-2D Queries
  • 边缘智能体:Go编译在医疗IoT设备端运行轻量AI模型(中)
  • 【HTML】3D动态凯旋门
  • 【SpringBoot】15 核心功能 - Web开发原理 - 请求处理 - 常用请求参数注解
  • 【SpringBoot】Dubbo、Zookeeper
  • 【完整源码+数据集+部署教程】鳄梨表面缺陷检测图像分割系统源码和数据集:改进yolo11-MLCA
  • C语言第九章字符函数和字符串函数
  • Go语言快速入门指南(面向Java工程师)
  • 基于SpringBoot+Vue的养老院管理系统的设计与实现 智能养老系统 养老架构管理 养老小程序
  • 外网-内网渗透测试(文件上传漏洞利用)
  • MySQL事务篇-事务概念、并发事务问题、隔离级别
  • 链表基本运算详解:查找、插入、删除及特殊链表
  • 线段树结合矩阵乘法优化动态规划
  • 如何让你的知识分享更有说服力?
  • 云计算核心技术之云存储技术
  • 【React】简单介绍及开发环境搭建
  • JVM 面试精选 20 题(续)
  • react-quill-new富文本编辑器工具栏上传、粘贴截图、拖拽图片将base64改上传服务器再显示
  • 叉车结构设计cad+三维图+设计说明书
  • 浅看架构理论(一)
  • Parallels Desktop 26 技术预览版免激活下载适配Tahoe 26