9.吴恩达机器学习——决策树

一、决策树模型

决策树(Decision Tree)是一种经典的监督学习算法,主要用于分类和回归任务。其核心功能是通过递归地将数据集划分为更纯净的子集,来构建一个树状模型,从而实现预测和决策。

这里有一个数据集,通过耳朵,脸部,是否有胡须来判断是否是猫

决策树模型如下

其他决策树模型

二、决策树的构建步骤

  1. 确定根节点使用特征
  2. 专注于左子树,确定左子树的起始节点
  3. 直到分出全是猫的集合之后,左子树结束迭代
  4. 接着同上构建右子树

三、决策树决策点构建方法

1.如何选择节点特征来进行分割

关键:选择的决策点特征可以将集合以最大纯度划分

2.何时停止分割(达到叶节点)

  • 直到节点中数据全为同一类
  • 限定树的最大深度
  • 进一步分割的信息增益小于某个阈值
  • 节点例子数量低于某个阈值

四、纯度的测量——熵

熵函数为H(p1),上图坐标图横轴为p1,纵轴为熵值,这里p1我们设置为集合中的猫所占整体的比例,以下是熵函数的表达

五、选择分割:信息增益

信息增益衡量的是在决策树中通过分割获得的熵减少量

我们对集合做不同的决策分割,计算左右子树的熵值,进一步对其利用固定公式求加权平均,再利用根节点本身的熵值减去所得到的值,就是熵减量,也就是信息增益

p表示左分支中正样本比例,w表示左分支样本占全部样本比例

六、独热编码

对于一个特征有多个取值情况,我们需要对这个特征的不同取值进行编码,1代表符合特征,0代表不符合,这样就能对“耳形”特征进行编码,这就是独热编码

对于连续值特征,其本质也是通过计算信息增益来判断分割效果,取连续值特征的某一个值来进行计算即可,其余步骤同离散值特征的使用

七、回归树

  • 将决策树应用与回归问题中,在构建过程中,我们不在尝试减少熵值,反而,我们尝试减少所选择特征分割的到的集合中的连续值的方差,在这里我们要计算加权平均差
  • 我们选择加权平均差减少最多的为最佳分割特征

八、决策树的集成

1.集成决策树

单个的决策树在解决实际问题时,对数据十分敏感,当其中一个数据发生改变时,可能会引起特征分裂发生改变。为了解决这个问题,我们需要构建多个决策树

如图所示构建的三颗决策树,得到不同结果,让后让树进行投票,其中判断是猫的数目更多,所以最终结果就是猫

构建多个决策树会使得你的决策树算法更加鲁棒

2.有放回采样

我们将构建多个与原始训练集略有不同的随机训练集,如下:

  • 将10只猫狗放入样本袋中
  • 随机抽取作为一个训练集中的训练样本
  • 有放回采样可以保证我们样本的随机性,以及“一致性”

3.随机森林树

  • 首先构建一个B个决策树的集成树(里面每个决策树的数据集来自于有放回抽样得到的数据集)
  • 对上面的集成树进行修改,尝试在每个节点随机化特征选择得到随机森林:例如,当到了某一个点有n个特征可以选择进行分裂时,我们可以从n个特征集合里面随机选择k(n很大时,k一般取根号n)个特征作为我们的分裂备选,然后选择这k个特征中信息增益最高的作为分裂特征。这样就可以得到随机森林算法。算法的优势是:在进行抽样时,就已经模拟了一部分的数据变化,意味着数据集的一些小的改动并不会太大影响整个随机森林算法的结果。

九、XGBoost

XGBoost 本质上是梯度提升框架的工程优化版本,其基本思想是序贯集成多个弱学习器(通常为CART回归树),每个新树通过拟合前序模型的负梯度(残差)来逐步降低整体损失。

类似于刚才的集成树的做法,只是在训练第二个决策树时,这里采用的训练数据集更有可能选择之前的决策树分类错误的样本(而不是1/m),即将更多的注意力放在尚未处理好的例子子集上,并使用下一个决策树来尝试处理这些问题。

XGBoost就是这样一个算法,它内置了正则化以防止过拟合。下面是代码实现XGBoost的示例:

十、决策树VS神经网络

1、决策树和集成树

  • 在表格(结构化)数据上表现良好
  • 不建议用于非结构化数据(图像、音频、文本)
  • 速度快
  • 小型决策树可能具有人类可解释性

2、神经网络

  • 在所有类型的数据上表现良好,包括表格(结构化)数据和非结构化数据
  • 可能比决策树慢
  • 可与迁移学习一起使用
  • 当构建多个模型协同工作的系统时,可能更容易将多个神经网络组合在一起

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/1169341.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

2026年周边比较好的汽车维修批发口碑推荐榜,汽车维修/轿车轮胎/汽车保养/卡车轮胎/大车轮胎,汽车维修批发排行榜 - 品牌推荐师

随着汽车保有量持续攀升,汽车后市场服务需求呈现多元化、专业化趋势。消费者对维修技术、服务效率及配件质量的关注度显著提升,而区域化服务网络的覆盖能力成为影响采购决策的关键因素。据行业数据显示,2025年国内汽…

赣州市章贡南康赣县信丰大余雅思培训辅导机构推荐:2026权威出国雅思课程中心学校口碑排行榜 - 苏木2025

对于身处赣州市章贡区、南康区、赣县区、信丰县、大余县等地的雅思考生而言,备考之路常伴随几大核心难题:优质师资地域分布不均,线下课程时间地点不灵活,难以获取个性化的精准学习方案,以及在“语言培训”与“留学…

创新创业教育中心项目申报管理系统信息管理系统源码-SpringBoot后端+Vue前端+MySQL【可直接运行】

摘要 随着高等教育改革的深入推进,创新创业教育已成为高校人才培养的重要组成部分。传统的项目管理方式依赖人工操作,存在效率低下、数据易丢失、信息不透明等问题,亟需通过信息化手段提升管理效率。本项目旨在开发一套创新创业教育中心项目申…

10.吴恩达机器学习——无监督学习01聚类与异常检测算法

从本节开始,正式进入无监督学习课程部分一、什么是聚类聚类(Clustering)是机器学习领域的一种无监督学习方法,其核心目标是将数据集中的样本划分为若干个子集(称为簇,Cluster),使得同…

3 款神器让程序员效率狂飙,早用早躺赢

在科技飞速发展的 2026 年,人工智能已深度融入软件开发的各个环节,AI 开发工具成为程序员提升效率、突破瓶颈的关键助力。面对琳琅满目的工具市场,选择适合自身需求的 AI 开发工具,能让开发工作事半功倍。以下为大家介绍 2026 年必…

2026年 半导体精密温控系统厂家推荐排行榜,控温模块/安防镜头控温/高清摄像头控温,专家级0.05℃精准控温技术深度解析 - 品牌企业推荐师(官方)

2026年半导体精密温控系统厂家推荐排行榜:控温模块/安防镜头控温/高清摄像头控温,专家级0.05℃精准控温技术深度解析 在半导体制造、高端光学成像、精密仪器仪表以及前沿科研领域,温度的细微波动往往是决定成败的关…

内网渗透实战指南:一次完整的域渗透全流程(网络安全自学必备)

在开始域渗透之前,先来简单了解下域的一些概念 域(Domain)是一个有安全边界的计算机集合(安全边界的意思是,在两个域中,一个域中的用户无法访问另一个域中的资源) 工作组的分散管理模式不适合大…

区块链“速度与安全”终极对决:以太坊、Solana、Polygon的生态攻防战

引言:区块链的“军备竞赛”进入深水区当比特币用“数字黄金”敲开区块链世界的大门后,公链(Public Blockchain)的竞争早已超越单纯的技术参数比拼,演变为一场关于生态、扩展性与用户体验的全方位战争。2025年的公链战场…

2025年驼奶粉品牌实力榜单:最好的驼奶粉/ 驼粉/ 什么牌子的驼奶好/驼奶粉品牌精选 - 品牌推荐官

随着大健康产业的持续深化与消费者对高品质营养食品需求的提升,以骆驼奶为代表的高端特色乳品市场迎来了快速发展的机遇期。数据显示,近年来驼奶粉市场规模年均增长率显著,尤其在对健康、天然、功能性有更高认知度的…

基于PMU相量测量单元进行电力系统电压幅值和相角状态估计Matlab代码

✅作者简介:热爱科研的Matlab仿真开发者,擅长数据处理、建模仿真、程序设计、完整代码获取、论文复现及科研仿真。 🍎 往期回顾关注个人主页:Matlab科研工作室 👇 关注我领取海量matlab电子书和数学建模资料 &#…

DeFi 2.0流动性革命:动态博弈算法如何重构万亿级质押经济?

引言:流动性困局与DeFi 2.0的破局之道2020年“DeFi Summer”的狂欢中,流动性挖矿以高收益点燃了加密市场,但随之而来的“流动性吸血鬼”效应却让协议陷入恶性循环——早期用户通过通胀代币套利离场,留下协议因流动性枯竭而衰败。这…

10 分钟搞定 10 小时的活!

在电商平台运维场景中,当运维人员需要完成 “统计近一个月各地区订单销售额与用户购买频次” 这类常规需求时,传统流程往往意味着至少半小时的 SQL 语句编写与反复调试。但借助飞算 JavaAI 的 SQL chat 功能,这一需求的解决周期被压缩至几分钟…

2026 网络安全挑战何解?AI 驱动攻防变革,零信任 + 量子安全破局关键

2026年网络安全趋势深度解析:AI驱动攻防变革,零信任与量子安全成破局关键 2026年,网络安全行业正式步入“AI原生攻防”与“体系化韧性建设”并行的新阶段。随着生成式AI、AI Agent的规模化应用,攻击手段从“精准试探”升级为“自…

考虑需求侧响应的智慧楼宇多时间尺度调度策略【综合能源】Matlab代码

✅作者简介:热爱科研的Matlab仿真开发者,擅长数据处理、建模仿真、程序设计、完整代码获取、论文复现及科研仿真。 🍎 往期回顾关注个人主页:Matlab科研工作室 👇 关注我领取海量matlab电子书和数学建模资料 &#…

基于DistFlow潮流的配电网故障重构(输入任意线路)Matlab代码

✅作者简介:热爱科研的Matlab仿真开发者,擅长数据处理、建模仿真、程序设计、完整代码获取、论文复现及科研仿真。 🍎 往期回顾关注个人主页:Matlab科研工作室 👇 关注我领取海量matlab电子书和数学建模资料 &#…

【知识科普】TLS协议深入解读

文章目录 概述 一、定义与目的二、组成与架构三、工作流程四、版本与安全性五、应用场景六、优势与特点 与SSL之间的异同点 相同点不同点 相关文献 概述 TLS(Transport Layer Security,传输层安全性协议)是一种为网络通信提供安全及数据完…

当AI能迅速实现想法时,发现用户真实需求变得更为关键——某知名安卓数字健康工具的需求洞察

a.内容描述 核心功能定位:一款专注于帮助用户减少屏幕成瘾、培养更健康数字习惯的开源安卓生产力工具。关键应用场景:适用于希望控制手机使用时长、避免特定应用或内容(如短视频、评论区)干扰,以及希望通过视觉提示&am…

实用指南:Flutter 与开源鸿蒙(OpenHarmony)性能调优实战:从启动速度到帧率优化的全链路指南

实用指南:Flutter 与开源鸿蒙(OpenHarmony)性能调优实战:从启动速度到帧率优化的全链路指南2026-01-16 17:42 tlnshuju 阅读(0) 评论(0) 收藏 举报pre { white-space: pre !important; word-wrap: normal !imp…

swing 摆幅

swing 摆幅 推荐阅读 引言 正文 Author: JiJi \textrm{Author: JiJi} Author: JiJi Created Time: 2026.01.16 \textrm{Created Time: 2026.01.16} Created Time: 2026.01.16

什么是DNS协议?

DNS协议也可以称为DNS服务,全称是Domain Name System,即域名系统,和HTTP协议一样,也是一个位于应用层的协议(服务),它是基于运输层的UDP协议的,关于网络协议的分层介绍,见…