数据分析-决策树

news2024/10/6 3:26:49

我们生活中遇到很多问题其实把他们抽象成一个数学模型,都可以抽象为一个决策树。(比如打篮球)
我们总是会经历两个阶段:构造、剪枝

构造

什么是构造呢?构造就是生成一棵完整的决策树。简单来说,构造的过程就是选择什么属性作为节点的过程,那么在构造过程中,会存在三种节点:根节点:就是树的最顶端,最开始的那个节点。在上图中,“天气”就是一个根节点;内部节点:就是树中间的那些节点,比如说“温度”、“湿度”、“刮风”;叶节点:就是树最底部的节点,也就是决策结果。

构造中遇到的问题

  • 选择哪个属性作为根节点;
  • 选择哪些属性作为子节点;
  • 什么时候停止并得到目标状态,即叶节点。

减枝

主要是帮助我们的决策树进行瘦身操作,避免选择情况太多,需要很多不必要的考量,比如说我们中午要吃米饭,我们肯定需要考虑炒什么菜,但是我们不需要担心菜怎么种出来,要是所有商店都没有菜怎么办。
在这里插入图片描述

当然在构造的时候也会出现,欠拟合、和过拟合两种情况如上图1or图3.

过拟合

样本较少就会出现过拟合的情况,因为我们训练数据是有限的,但是在实际应用中我们会遇到千奇百怪的数据,在这样的情况下我们的模型就不行了,这也是我们在工作中需要多次上线切换不同环境的原因,先上测试环境,然后测试环境正常,我们上拟生产环境,生产环境正常我们再到正式生产环境,这样保证上线最大的不出错率。
训练的时候也是让训练器有着更好的泛化能力。

剪枝

剪枝可以分为“预剪枝”(Pre-Pruning)和“后剪枝”(Post-Pruning)
在构建的时候进行剪枝,称为预减枝,我们最简单的斐波那契数列可以通过预减枝,来进行优化速度。
后剪枝:再生成决策树之后再进行剪枝,通常会从叶子节点开始,逐步向上每个节点进行评估。

总结

在这里插入图片描述

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

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

相关文章

【MySQL基础】MySQL多表操作详解

序号系列文章4【MySQL基础】MySQL表的七大约束5【MySQL基础】字符集与校对集详解6【MySQL基础】MySQL单表操作详解7【MySQL基础】运算符及相关函数详解文章目录前言MySQL多表操作1,多表关系1.1,一对一1.2,一对多1.3,多对多2&#…

Prometheus 配置身份认证

Prometheus 版本 2.41.0 平台统一监控的介绍和调研直观感受PromQL及其数据类型PromQL之选择器和运算符PromQL之函数Prometheus 配置身份认证 Prometheus 使用默认方式安装是不带有身份证认证和TLS,需要单独配置开启。 Prometheus 配置文件为yaml格式,并…

【自然语言处理】文本表示(一):One-Hot、BOW、TF-IDF、N-Gram

文本表示(一):One-Hot、BOW、TF-IDF、N-Gram1.One-Hot 编码 One-Hot 编码,又称 “独热编码”,是比较常用的文本特征提取方法。这种方法把每个词表示为一个很长的向量。这个向量的维度是词表大小,只有一个维…

4. 基础语法

1. 标识符 a. 第一个字符必须是字母表中字母或下划线 _; b. 标识符的其他的部分由字母、数字和下划线组成; c. 标识符对大小写敏感; 在 Python 3 中,可以用中文作为变量名,非 ASCII 标识符也是允许的; 2.…

【JavaGuide面试总结】计算机网络·中

【JavaGuide面试总结】计算机网络中1.说说断开连接 - TCP 四次挥手2.为什么要四次挥手?3.为什么不能把服务器发送的 ACK 和 FIN 合并起来,变成三次挥手?4.如果第二次挥手时服务器的 ACK 没有送达客户端,会怎样?5.为什么…

第五届字节跳动青训营 前端进阶学习笔记(五)CSS进阶

文章目录前言CSS的重要特性1.选择器特指度(1)选择器优先级(2)选择器特指度2.继承(1)默认继承(2)显式继承3.初始值4.CSS属性值的计算过程布局(Layout)1.布局相…

搜索?——P3956 [NOIP2017 普及组] 棋盘

传送门: [NOIP2017 普及组] 棋盘 - 洛谷 思路: 将棋盘的每一个格子看做一个点,建一个无向图用来跑最短路. 这道题本应用搜索来做,但是转换成最短路好像简单点 建图: 1.对于已经有颜色的格子,在扫描四个方向的格子对相同颜色的建条长度为0…

【目标检测】目标检测究竟发展到了什么程度?聊聊这22年!

目录:目标检测的发展历程一、引言二、背景三、目标检测发展脉络3.1 传统目标检测算法3.1.1 Viola Jones Detector3.1.2 HOG Detector3.1.3 DPM Detector3.1.4 局限性3.2 Anchor-Based中的Two-stage目标检测算法3.2.1 RCNN3.2.2 SPPNet3.2.3 Fast RCNN3.2.4 Faster R…

Allegro如何设置Net Group操作指导

Allegro如何设置Net Group操作指导 Allegro除了可以对一组网络设置Bus以外,同样支持创建Net Group,如下图 功能和Bus的功能类似,并且同一个Net Group里面的网络可以形成一个shape形式的Group,方便查看 具体创建方法操作如下 打开规则管理器选择Electrical

MySQL窗口函教-开窗聚合函数(SUM()、AVG()、MAX()、MIN()、COUNT())

MySQL窗口函教-开窗聚合函数(SUM()、AVG()、MAX()、MIN()、COUNT())和传统的聚合函数区别?最大的区别在于,一个操作列,一个是依次操作行,最终显示出每一行,最后的效果就是呈现叠加的效果-- 开窗…

Windows环境下安装配置Mosquitto服务及入门操作介绍

文章目录一、概念梳理二、下载与安装三、关于配置文件的一些重要说明四、配置登录账号和密码参考: 博客一、概念梳理 Mosquitto是一款实现了消息推送协议MQTT 3.1的开源消息代理软件,提供轻量级的、支持可订阅/可发布的消息推送模式,是设备与…

mf10ccwm芯片说明部分译文

MF10-N是一种通用的双二阶状态变量滤波器,其中心频率与应用于时钟输入(fCLK)的方波的频率成正比。通过将引脚12连接到适当的直流电压,滤波器中心频率fO可以等于fCLK/100或fCLK/50。通过使用晶体时钟振荡器可以非常精确地设置&…

《深入浅出计算机组成原理》学习笔记 Day5

动态链接1. 静态链接与动态链接2. 地址无关3. PLT 和 GOT参考1. 静态链接与动态链接 静态链接(Static Link)是通过合并代码段的方法来使程序装载至内存; 动态链接(Dynamic Link)则是链接加载到内存中的共享库&#xf…

数据结构之栈与队列详解

文章目录前言一、栈1.栈的概念及定义2.栈的实现(1)栈的结构(2)StackInit(初始化)(3)StackPush(压栈)(4)StackPop(出栈&…

与众不同的异域年夜饭体验,你最中意哪一款?

年夜饭,中国人一年中最重要的一顿团圆聚餐,不仅丰富多彩,还充满了各种吉祥寓意。如果你选择的是出境旅游过春节,那么一次异域年夜饭体验也可以让你的旅行充满乐趣,收获与众不同的别样回忆。今天就跟着小旅城去看看&…

1597_AURIX_TC275_GPIO简介

全部学习汇总: GreyZhang/g_TC275: happy hacking for TC275! (github.com) 左上角画出来的这个寄存器可以进行输入输出的控制。从右边上下拉设备这里可以看得出来,输入输出其实都是可以配置的。当端口配置为输入的时候,逻辑图中的输出驱动会…

使用文本编辑器编写Java源代码

使用文本编辑器编写Java源代码 编写JavaJavaJava应用程序,可以使用任何一个文本编辑器来编写程序的源代码,然后使用JDKJDKJDK搭配的工具进行编译和运行,在这里,我将介绍一个使用简单的文本编辑器来开发一个JavaJavaJava应用程序的…

【创业分享】2022年,仅赚几万,但却很踏实?

大家好,欢迎来到停止重构的频道。本期,我们停一下技术讨论,反思一下2022年的变化以及展望一下2023年。回顾2022这是我们以正式商业主体创业的第一年。总的来说,除了不赚钱和软件产品还没做出来以外,其实还不错。自媒体…

Linux常用命令——tcpreplay命令

在线Linux命令查询工具(http://www.lzltool.com/LinuxCommand) tcpreplay 将PCAP包重新发送,用于性能或者功能测试 补充说明 简单的说,tcpreplay是一种pcap包的重放工具,它可以将用ethreal、wireshark工具抓下来的包原样或经过任意修改后…

Spark Core 编程入门,常用算子介绍

RDD的创建 如下代码,Spark RDD编程的入口对象是SparkContext对象(不论何种编程语言),只有构建出SparkContext,基于它才能执行后续的API调用和计算 本质上,Spark Context对编程来说,主要功能就是创建第一个RDD出来 # …