创作

完善资料让更多小伙伴认识你,还能领取20积分哦, 立即完善>

3天内不再提示

建立决策树的逻辑

zenRRan 来源:深度学习自然语言处理 作者:深度学习自然语言 2020-10-10 10:44 次阅读

一个小故事

zenRRan二十出头了,到了婚配的年龄啦。又因为家是名门望族,所以一堆人抢着想来应聘配偶的职位。但是zenRRan比较挑剔,必须达到他的要求才能有机会成为他的另一半,要求为:

1. 性别女,非女性不要

于是刷刷刷走了一半人,剩下的全部为女性。

2.身高必须要在150-165cm

于是又走了一堆人,剩下的为160-165cm之间的女生。

3.性格要温柔贤惠

听到这些,又走了一些人,最后留下的极为最后的应聘候选人。

上述过程可以用树来表示:

像上面的这样的二叉树状决策在我们生活中很常见,而这样的选择方法就是决策树。机器学习的方法就是通过平时生活中的点点滴滴经验转化而来的。

建立决策树的逻辑

正如上述树状图所示,我们最终会通过特征:

性别,身高,性格

得到了4种分类结果,都存在于叶子节点。

非女生,身高不符合的女生,身高符合性格不符合的女生,都符合的最佳候选人。

现在我们来回想下上面的建立决策的流程:

首先在一群给定数据(应聘者)中,我们先通过一个特征(性别)来进行二分类。当然选取这个特征也是根据实际情况而定的,比如zenRRan选取第一个条件为性别的原因是,来的男的太多了,比例占的有点大,所以先给他分成类放到一边,剩下的更加好分类而已。

然后,对叶子节点(那些还想继续分类的节点们)继续进行上述的流程。

那么怎么选取特征作为当前的分类依据呢?有两种方法:

信息熵和基尼系数。

信息熵

熵这个概念想必大家都不陌生,熵用来表示数据的确定性程度。研究一个词,就要从他的来源说起,熵,来自热动力学,表示原子或者一个事物的稳定程度,温度越高,原子越活跃,越不稳定;反而温度越低,就越稳定,越保持不动。所以慢慢的这个概念被用到各个方向,也就有了新的定义词汇,但是它的本意没变,就是稳定程度大小的表示。

那么在决策树里面,我们用的是一种熵,信息熵,来表示类别的稳定程度。

公式为:

注:p为一个类的占比

什么意思呢?具体用数字表示下:

比如一个分类结果由三个类组成,占比为1/3 1/31/3,那么它们的信息熵为:

如果占比为1/10 2/10 7/10,那么它的信息熵为:

那再举一个极端情况,也就是我们想要得到的类,只包含一种情况,其他的比例为0,那么比如占比情况为:1 0 0,那么它的信息熵为:

我们会发现一个分类结果里,里面的类别比例越是接近,信息熵也就越大,反之越是趋向于一个值,越是小,会达到0。

如果将所有的情况考虑在内的话,就能绘成一个图(为了好画,以该分好的类别里有两种事物为例):

我们会发现,当占比为0.5的时候,也就是另一个事物的占比也是0.5的时候信息熵最高,当倾向于一个事物的时候,信息熵最小,无限接近并达到0。

为什么都占比一样的时候信息熵最大呢?也就是说最不稳定呢?因为当每个事物都占比一样的时候,一个小事物进来,不清楚它到底属于哪一类;如果只有一类事物或者一类事物居多数,那么也就比较明确该属于哪类,也就稳定,确定了。

那么怎么用呢?

我们通过计算机分类,因为有很多种分类情况,不是每一次分类都是直接将同一类分到一个类别里,而是将该分好的两个类的信息熵总和最小为依据,不断地通过暴力寻找最佳选择。然后递归进行对分好类的数据进行再分类。

基尼系数

基尼系数和信息熵在这里具有同样的性质。先看看它的公式:

公式看不出什么特色之处,就继续用数字展示下:

比如依然是三分类,类别占比为1/3 1/3 1/3,基尼系数为:

类别占比为1/10 2/10 7/10,基尼系数为:

如果是极端情况下占比为1 0 0,那么基尼系数为;

我们根据公式其实就能看出来,平方的函数为凸函数,而该公式在都相等的时候值最大。

代码实现

再重说下流程:

通过对每个特征进行尝试分类,记录当前分类最小的信息熵(或基尼系数)的特征为当前分类结果。

选取一些点,初始化数据:

X为二维平面的数据点,Y为类别。

数据点分布情况:

信息熵函数:

基尼系数函数:

二者使用一个即可。

下面是一个分类核心的流程:

文字描述为:

对数据点的特征0维进行尝试分类,先按照0维数据排序,然后取每相邻的中点值,然后以0维该值分界线,处于分界线两侧的数据分别求信息熵(或基尼系数),如果比之前的小,这就保存该值和当前维度。然后选取第1维进行相同操作,最终的最小信息熵(或基尼系数)最小对应的值为本次分类的结果。

但是这个仅仅是一层分类,如果还子节点还有要分类的数据,继续上述操作即可。

分类代码:

分类效果流程图:

决策树第一层分类结果为:

当前线为最佳值,1维的数据就是分过的,但是没有当前的值好,也就没显示。

现在已经分出了两类,左边的红色和右边的绿色+蓝色。那么还要对上述的右边进行分类,获取该数据,并且继续进行分类,分类流程图为:

最终得出的分类结果为上述两条线。其中粉色为第一层分类,紫色为第二层分类。

批判性思维看决策树

看到上述的分类结果,其实你心里也想到了决策树的缺点了,就是分类总是横平竖直的,不能是曲线。

比如

该四个数据的分类最佳理想条件下应该为上述紫色线条,但是决策树的结果为;

如果存在数据在:

明明应该属于蓝色点的,但是被划分到红色点里。

所以可以看出,决策树对数据的要求是是苛刻的。

另一个问题是,决策树的学习问题,从上述代码实现过程能够看出来,可以说是暴力求解了。

责任编辑:lq

  • 二叉树
    +关注

    关注

    0

    文章

    43

    浏览量

    11059
  • 机器学习
    +关注

    关注

    64

    文章

    6262

    浏览量

    119327
  • 决策树
    +关注

    关注

    2

    文章

    76

    浏览量

    12478

原文标题:【机器学习】决策树的理论与实践

文章出处:【微信号:zenRRan,微信公众号:深度学习自然语言处理】欢迎添加关注!文章转载请注明出处。

收藏 人收藏

    评论

    相关推荐

    博世推进质量管理领域智能化发展

    质量部通过数据挖掘、分析及建模,助力质量管理与控制,预测产品失效曲线,排查产品失效原因,并建立起生产....
    的头像 科技绿洲 发表于 06-24 11:13 191次 阅读

    新思科技DesignDash解决方案帮助开发者更智慧地设计芯片

    新思科技的DesignDash数据可见性和机器学习(ML)引导设计优化解决方案正是为此而设计的。De....
    的头像 科技绿洲 发表于 06-23 15:22 168次 阅读
    新思科技DesignDash解决方案帮助开发者更智慧地设计芯片

    开源软件-phpword2vec PHP调用word2vec实现机器学习

    ./oschina_soft/gitee-phpword2vec.zip
    发表于 06-23 14:59 7次 阅读
    开源软件-phpword2vec PHP调用word2vec实现机器学习

    1chipML微控制器数值运算/机器学习库

    ./oschina_soft/1chipML.zip
    发表于 06-23 09:20 10次 阅读
    1chipML微控制器数值运算/机器学习库

    使用RISC-V和内存结构的开放式计算

      RISC-V由超过一百个组织的成员开发,包括一个软件和硬件创新者的协作社区,他们可以使 ISA ....
    的头像 星星科技指导员 发表于 06-22 15:55 246次 阅读
    使用RISC-V和内存结构的开放式计算

    什么是机器学习? 机器学习基础入门

    本文旨在为硬件和嵌入式工程师提供机器学习(ML)的背景,它是什么,它是如何工作的,它为什么重要,以及 TinyML 是如何适应的...
    发表于 06-21 11:06 561次 阅读
    什么是机器学习? 机器学习基础入门

    TensorFlow Quantum量子机器学习框架

    ./oschina_soft/quantum.zip
    发表于 06-21 10:27 13次 阅读
    TensorFlow Quantum量子机器学习框架

    一个机器人操纵系统的框架—— DiffSkill

    这个算法会像“老师”一样解决机器人完成任务必须采取的每一步。然后训练一个“学生”机器学习在什么时间段....
    的头像 传感器技术 发表于 06-21 10:13 155次 阅读

    渊亭科技获评机器之心AI趋势重塑先锋称号

    继2021年,渊亭科技荣登机器之心Pro ·「2021 AI 趋势先锋 Insight」专业品牌榜,....
    的头像 科技绿洲 发表于 06-21 09:26 557次 阅读

    在AI网络边缘最小化算法足迹和训练

      在过去的几年里,人工智能/机器学习算法取得了突破性的进展和非常迅速的进展。许多努力都集中在将 A....
    的头像 星星科技指导员 发表于 06-20 14:26 131次 阅读

    三种常见数据积累场景及解决相关障碍的技术和策略

      缺乏数据可能会给您的预测性维护系统带来重大问题。幸运的是,工程团队可以采用多种解决方案来获取、组....
    的头像 星星科技指导员 发表于 06-17 16:03 308次 阅读

    可解释机器学习

    可解释机器学习
    发表于 06-17 14:41 19次 阅读

    微软智能云满足企业在多云环境中改进业务运营和创建开发流程需求

     作为最早提出混合云的厂商之一,微软全球混合云战略也不断更新——从最开始打通了公有云与私有云,允许在....
    的头像 科技绿洲 发表于 06-17 11:50 542次 阅读

    OpenMLDB面向机器学习应用的数据库

    ./oschina_soft/gitee-OpenMLDB.zip
    发表于 06-17 11:15 15次 阅读
    OpenMLDB面向机器学习应用的数据库

    解决自动驾驶的关键挑战

      完全自动驾驶汽车的路线图已经成熟,并且已经经历了从基本驾驶辅助系统开始的多个自动驾驶级别。显然,....
    的头像 星星科技指导员 发表于 06-17 11:08 211次 阅读
    解决自动驾驶的关键挑战

    EMLL高性能端侧机器学习计算库

    ./oschina_soft/EMLL.zip
    发表于 06-17 10:28 17次 阅读
    EMLL高性能端侧机器学习计算库

    机器学习在高度自动驾驶中的机遇和挑战

      DNN 计算一个所谓的Q-函数,该函数预测要针对特定​​状态执行的最优动作 a s。换句话说,D....
    的头像 星星科技指导员 发表于 06-17 10:06 215次 阅读
    机器学习在高度自动驾驶中的机遇和挑战

    渊亭科技再上榜福建省科技小巨人称号

    近日,福建省科学技术厅公示《拟入围2022年福建省科技小巨人企业名单》,继2020年成功入围,今年渊....
    的头像 科技绿洲 发表于 06-17 09:59 233次 阅读

    机器学习技术的理论背景及可用神经网络类型

      主成分分析 (PCA)是一种数据降维技术,它将一组可能相关的特征转换为一组称为主成分的线性不相关....
    的头像 星星科技指导员 发表于 06-17 09:57 3145次 阅读
    机器学习技术的理论背景及可用神经网络类型

    机器学习功能安全的算法选择标准

      最近的成就推动了基于机器学习的功能在高度自动驾驶中的应用。最初的原型确实产生了有希望的结果,并在....
    的头像 星星科技指导员 发表于 06-17 09:51 201次 阅读
    机器学习功能安全的算法选择标准

    TensorFlow-DirectML TensorFlow的GPU范围扩展

    ./oschina_soft/tensorflow-directml.zip
    发表于 06-17 09:18 21次 阅读
    TensorFlow-DirectML TensorFlow的GPU范围扩展

    5G技术为自动驾驶汽车铺平道路

      5G 网络将帮助车辆密切关注附近的汽车、骑自行车的人和行人,同时充当高级驾驶员辅助系统 (ADA....
    的头像 星星科技指导员 发表于 06-16 16:25 385次 阅读

    浅谈量子计算开发人员面临的挑战

    IBM 要在 2030 年达到 100,000 量子比特的里程碑,需要每年增长 90%。到 2023....
    的头像 要长高 发表于 06-16 15:38 531次 阅读
    浅谈量子计算开发人员面临的挑战

    地图数据为自动驾驶的扩展范围

      当车辆中的最新数据可用时,反馈回路关闭。汽车可以利用从之前的驾驶或其他车辆收集的所有数据。这实际....
    的头像 星星科技指导员 发表于 06-16 15:11 239次 阅读

    InterpretML机器学习可解释性

    ./oschina_soft/interpret.zip
    发表于 06-16 09:51 11次 阅读
    InterpretML机器学习可解释性

    Kompute通用GPU计算框架

    ./oschina_soft/kompute.zip
    发表于 06-16 09:07 17次 阅读
    Kompute通用GPU计算框架

    最佳的10名Python机器学习库

    根据官方介绍,Awkward Array用于嵌套的、大小不一的数据,包括任意长度的列表、记录、混合的....
    的头像 人工智能与大数据技术 发表于 06-15 11:44 260次 阅读

    如何利用智能技术提升重型移动设备的性能与效率

      为了应对这些挑战,嵌入式解决方案必须提供连接性和可配置性以及高计算处理、图形、存储和带宽。车载/....
    的头像 星星科技指导员 发表于 06-15 10:14 279次 阅读
    如何利用智能技术提升重型移动设备的性能与效率

    HumanDetectionUsingDepth基于深度图的人体检测

    ./oschina_soft/gitee-HumanDetectionUsingDepth.zip
    发表于 06-15 09:23 9次 阅读
    HumanDetectionUsingDepth基于深度图的人体检测

    星环科技TDH社区版可实现上百亿条数据管理分析

    信息技术领域自主可控是保障国家信息安全的基础条件,推动信息技术领域软硬件产品的国产化进程已上升至国家....
    的头像 科技绿洲 发表于 06-14 17:14 629次 阅读

    想要使用AI却不会AI建模吗

    人类经历了三次工业革命,无论是蒸汽机、电力还是电子信息技术,每一次革命都给人类的生产力带来了几十倍的....
    的头像 科技绿洲 发表于 06-14 14:29 738次 阅读

    物联网结合机器学习(ML)的应用场景

    本篇博客文章介绍了物联网结合机器学习(ML)的应用场景,以及如何基于Silicon Labs(亦称“....
    的头像 SiliconLabs 发表于 06-13 16:26 392次 阅读

    HLearn高性能机器学习库

    ./oschina_soft/HLearn.zip
    发表于 06-13 10:32 21次 阅读
    HLearn高性能机器学习库

    机器学习概述、工作原理及重要性

    本文旨在为硬件和嵌入式工程师提供机器学习(ML)的背景,它是什么,它是如何工作的,它为什么重要,以及....
    发表于 06-12 09:27 73次 阅读

    KUBERNETES的工作原理是什么

    Kubernetes 提供了一个框架,用于部署、管理、扩展和切换分布式容器,这些容器是随依赖项和配置....
    的头像 科技绿洲 发表于 06-10 13:19 291次 阅读

    什么是数据科学 企业如何依赖数据科学

    数据可以指单独的事实,或者统计后的数据,还可以是各种信息的汇总,通常以数字表示。数据管理的重要性始于....
    的头像 瑞萨电子 发表于 06-10 11:16 231次 阅读

    iWave Systems用于物联网应用中

      凭借对各种神经网络的支持,Xilinx/Deephi 核心平台不断发展,集成了新的先进算法,以提....
    的头像 星星科技指导员 发表于 06-10 07:39 237次 阅读

    量子计算技术将增强我们的技术格局

      软件将需要更新。抗量子加密算法可能需要更多的计算能力——也许更多数量级。例如,一项提议的 RSA....
    的头像 星星科技指导员 发表于 06-10 07:22 331次 阅读

    普诺飞思传感器Metavision实现更快速且节能机器触觉感知

    今天,人工智能技术的发展已经成功将视觉和听觉等人类重要的感官功能结合到机器人技术中,但赋予机器人予人....
    的头像 科技绿洲 发表于 06-09 16:33 955次 阅读

    云端机器学习平台PAI最新的创新实践

    在今年 3 月的 GTC 2022 大会上,阿里云带来了推理优化/部署、深度学习编译器、大模型部署、....
    的头像 NVIDIA英伟达 发表于 06-09 09:52 203次 阅读

    意法半导体发布车规级惯性测量单元ASM330LHHX

    意法半导体新发布了集成机器学习(ML)内核的车规级惯性测量单元(IMU)ASM330LHHX,使智能....
    的头像 意法半导体中国 发表于 06-09 09:12 201次 阅读

    时识科技推出成熟人才培育机制 赋能传统产业不同赛道

    “目前,SynSense时识科技中国+瑞士五个城市的办公地点已经汇聚了来自十个国家的高科技人才,博士....
    的头像 科技绿洲 发表于 06-08 16:25 555次 阅读

    揭开人工智能和机器学习的神秘面纱

      从日常使用的可穿戴设备收集的人体生理信号成为新的数字生物标志物,可以提供我们健康的全面图片,这一....
    的头像 星星科技指导员 发表于 06-08 10:28 287次 阅读
    揭开人工智能和机器学习的神秘面纱

    渊亭科技DataExa系列通过统信服务器操作系统兼容性认证测试

    近日,渊亭科技自主研发的智能防务体系产品及DataExa系列人工智能产品的8款产品,通过了统信服务器....
    的头像 科技绿洲 发表于 06-07 11:24 253次 阅读

    普诺飞思Metavision Intelligence套件赋能高效定制解决方案

    全球领先的神经拟态视觉系统发明者普诺飞思(Prophesee)宣布,即日起免费提供 Metavisi....
    的头像 科技绿洲 发表于 06-06 17:53 455次 阅读

    用于加速嵌入式视觉和推理的开放标准

      OpenCL 在整个行业中广泛使用,为计算、视觉和机器学习库、引擎和编译器提供最低的“接近金属”....
    的头像 星星科技指导员 发表于 06-06 16:29 425次 阅读
    用于加速嵌入式视觉和推理的开放标准

    COM-HPC成为边缘服务器设计领域

      COM HPC 不会替代而是扩展现有的 PICMG COM Express 模块标准,新的解决方....
    的头像 星星科技指导员 发表于 06-06 16:14 337次 阅读

    边缘智能满足智能连接传感器和资产的增长数据需求

      对于越来越多的企业来说,数据收集已经超越了数据处理。网络边缘功能不足或不存在的数据管理系统所错失....
    的头像 星星科技指导员 发表于 06-06 15:37 279次 阅读

    软体人工电感受器:未来的非接触式传感器

    对更多功能的人机互动的要求需要超越传统的直接接触模式的感应系统。作者从鲨鱼的电接收策略中获得初步灵感....
    的头像 要长高 发表于 06-06 15:30 917次 阅读
    软体人工电感受器:未来的非接触式传感器

    新思科技正式推出全新DesignDash设计优化解决方案

    新思科技(Synopsys)近日正式推出全新DesignDash设计优化解决方案,以扩展其EDA数据....
    的头像 科技绿洲 发表于 06-06 15:30 258次 阅读

    K-MEANS聚类算法概述及工作原理

    K-means 是一种聚类算法,且对于数据科学家而言,是简单且热门的无监督式机器学习(ML)算法之一....
    的头像 NVIDIA英伟达 发表于 06-06 11:53 326次 阅读

    机器学习简介与经典机器学习算法人才培养

    上课时间安排: 2022年05月27日 — 2022年05月30日 No.1 第一天 一、机器学习简介与经典机器学习算法介绍 什么是机器学习...
    发表于 04-28 18:56 4472次 阅读

    浅谈模拟在机器学习领域的重要性

    电子设计行业正在发生相当大的变化,这主要是由于传感器的激增以及生成和收集更多信息的需求。这导致拥有更多传感器,并且这些传...
    发表于 03-28 15:15 1248次 阅读

    浅谈模拟在机器学习领域的重要性

    电子设计行业正在发生相当大的变化,这主要是由于传感器的激增以及生成和收集更多信息的需求。这导致拥有更多传感器,并且这些传...
    发表于 03-15 18:05 2482次 阅读

    怎样去解决工控系统及装备M9连接线加工工艺原因导致的问题呢

    工控系统及装备M9连接线加工工艺原因导致的问题,4.3.1        拉丝或喷砂后再进行折弯,容易在...
    发表于 02-28 13:03 585次 阅读

    机器学习的基础内容汇总

    提示:文章写完后,目录可以自动生成,如何生成可参考右边的帮助文档文章目录前言一、pandas是什么?二、使用步骤1.引入库2.读入...
    发表于 02-28 06:12 525次 阅读

    实验室将人工智能和机器学习推向前沿

    今天,Silicon Labs 发布了分别用于蓝牙和多协议操作的2.4 GHz 无线 soc 的 bg24和 mg24系列,以及一个新的软件工具包。这...
    发表于 02-26 11:09 29399次 阅读
    实验室将人工智能和机器学习推向前沿

    Modbus-RTU协议包括哪些呢

    Modbus-RTUModbus 一个工业上常用的通讯协议、一种通讯约定。Modbus协议包括RTU、ASCII、TCP。其中MODBUS...
    发表于 02-16 07:43 1074次 阅读

    oled屏幕的通信方式分为几种

    oled显示oled屏幕的通信方式分为2种:1、iic通信方式它是由数据线 SDA 和时钟 SCL 构成的串行总线, 可发送和接收数据。在...
    发表于 02-16 07:03 1038次 阅读

    LD3320语音识别模块+MP3-TF-16P模块实现语音交互功能的过程

    LD3320语音识别模块+MP3-TF-16P模块实现语音交互功能利用LD3320语音识别模块可以实现非特定人声语音控制单片机io口动作...
    发表于 02-15 06:35 1974次 阅读