【机器学习】回归树生成过程及举例理解

在线体验各类最新模型,更有模型 免费Token 额度领取!
立即体验
简介: 【8月更文挑战第6天】本文介绍了回归树的生成过程,并通过一个打高尔夫球时间预测的例子详细解释了如何选择分支节点和评估标准方差,以及如何确定停止条件来构建最终的树模型。

在这里插入图片描述

1 基本概念

回归树(Regression Tree),就是用树模型做回归问题,每片叶子都输出一个预测值。预测值一般时叶子节点所含训练集元素输出的均值。(除了使用均值可以作为预测值,也可以使用其他方法,例如线性回归)

举例理解,以下是一个打高尔夫球的时间表。根据天气、适度、温度、风来预测打高尔夫的时间长短。

在这里插入图片描述

右边的回归树叶子节点值,就是取样本数的均值。

2 回归树分支标准

回归树的选择分支节点的评价指标是标准方差(Standard Deviation)。回归树使用某一种特征将原集合分为多个子集,用标准方差衡量子集中的元素是否相近,越小表示越相近。

第一步:首先计算根节点的标准方差

在这里插入图片描述

第二步:计算每个特征的条件标准方差,选择(根节点标准方差-特征的条件标准方差)最大的特征作为下一个分支节点

outlook的条件标准方差计算如下

在这里插入图片描述

同理计算其他特征的标准方差

在这里插入图片描述

第三步:计算根节点标准方差与特征的条件标准方差的差,选择差值最大的特征为下一个分支节点。重复以上工程,直到满足停止条件。停止条件包括

1、当某个分支的变化系数小于某个值

2、当前节点所包含的元素个数小于某个值

第四步:设定变化系数小于10%和所包含元素个数小于3个为停止条件

1、计算Outlook中Overcat的变化系数及所包含元素个数

在这里插入图片描述

Overcat的变化系数为8%。小于10%,即停止继续分支。

2、计算Outlook中Sunny的变化系数及所包含元素个数

在这里插入图片描述

从左边的表i个中,知道变化系数为28%,且样本数为5个,则需要继续分支。再来计算下一个特征的(Sunny节点标准方差-特征的条件标准方差),从右边的表格知道,Windy这个特征的差值最大,则以Windy作为Sunny节点之后的新节点。分支得到以下的树结构。

在这里插入图片描述

此时Windy的True节点,只有两个样本数了,小于3个。满足了停止的条件。

3、计算Outlook中Rainy的变化系数及所包含元素个数

在这里插入图片描述

从左边的表可知,Rainy分支的变化系数CV=22%,需要继续分支。再来计算下一个特征的(Rainy节点标准方差-特征的条件标准方差),从右边的表格知道,Temp这个特征的差值最大,则以Temp作为Rainy节点之后的新节点。分支得到以下的树结构。

在这里插入图片描述

使用Temp分支后,三个分支所包含是元素个数小于设定的3。则停止继续分支。叶子节点每条分支样本的均值,即为生成的回归树。

目录
相关文章
|
数据安全/隐私保护
|
机器学习/深度学习 人工智能 自然语言处理
图解机器学习 | GBDT模型详解
GBDT是一种迭代的决策树算法,将决策树与集成思想进行了有效的结合。本文讲解GBDT算法的Boosting核心思想、训练过程、优缺点、与随机森林的对比、以及Python代码实现。
9797 2
图解机器学习 | GBDT模型详解
|
8月前
|
机器学习/深度学习 数据可视化 算法
Python | 网格搜索参数优化的XGBoost+SHAP可解释性分析回归预测及可视化算法
本教程将推出Python实现的XGBoost回归预测,结合网格搜索调参与SHAP可解释性分析,涵盖数据处理、模型训练、可视化及结果保存,助力科研论文提升模型可解释性,附完整代码与保姆级环境配置指南。
1187 1
|
6月前
|
人工智能 搜索推荐 数据库
从零搭建RAG系统:原理剖析+代码实践,解锁大模型“记忆力”新姿势
RAG(检索增强生成)为大模型配备“外接大脑”,通过连接专属知识库,提升回答准确性。广泛应用于医疗、法律、客服等领域,兼具专业性与可解释性。本文详解其原理、实战步骤与优化技巧,助你快速构建个性化AI助手。
2203 12
|
6月前
|
人工智能 前端开发 开发工具
从 ReAct 到 Ralph Loop:AI Agent 的持续迭代范式
Ralph Loop是一种AI编程范式,通过Stop Hook拦截机制强制模型持续迭代,直至满足可验证的完成条件(如测试通过、输出特定标记),解决AI“半途而废”问题。它依赖外部状态(Git、文件系统)实现自我参照循环,支持无人值守的AFK开发,已集成于Claude Code等主流工具。
从 ReAct 到 Ralph Loop:AI Agent 的持续迭代范式
|
前端开发 JavaScript
JavaScript异步编程:从Callback到Async/Await的进化
JavaScript异步编程:从Callback到Async/Await的进化
|
数据采集 Web App开发 JSON
微博采集评论区数据工具,微博爬取博主粉丝ID抓取,微博提取评论ID博主粉丝列表
这个代码实现了完整的微博数据采集功能,包括评论采集、粉丝ID抓取和评论用户粉丝列表获取
|
12月前
|
存储 数据采集 NoSQL
什么是数据仓库?数据库与数据仓库有什么关系?
数据仓库与数据库有何区别?数据仓库主要用于存储历史数据,支持企业分析决策;而数据库则负责管理实时业务数据,保障日常运作。两者在数据来源、处理方式、存储结构等方面差异显著,但又相辅相成,共同助力企业高效管理数据、提升运营与决策能力。
|
机器学习/深度学习 算法 数据挖掘
深入理解SVM中的核函数及其应用
深入理解SVM中的核函数及其应用
955 0
|
网络协议 程序员
为什么TCP需要三次握手?一文讲透!
TCP三次握手是TCP协议建立连接的关键步骤,确保客户端和服务端同步状态并确认彼此的存在。过程分为三步:1) 客户端发送SYN包请求连接;2) 服务端回应SYN/ACK包确认收到并提供初始序列号;3) 客户端发送ACK包确认服务端的序列号,双方进入连接状态。此机制确保了双向通信的可靠性和资源的有效利用,避免了失效请求导致的问题。