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

决策树的优缺点

决策树优点
1. 易于理解和解释,因为树木可以画出来被看见
2. 需要很少的数据准备。其他很多算法通常都需要数据规范化,需要创建虚拟变量并删除空值等。但请注意, sklearn中的决策树模块不支持对缺失值的处理。
3. 使用树的成本(比如说,在预测数据的时候)是用于训练树的数据点的数量的对数,相比于其他算法,这是 一个很低的成本。
4. 能够同时处理数字和分类数据,既可以做回归又可以做分类。其他技术通常专门用于分析仅具有一种变量类 型的数据集。
5. 能够处理多输出问题,即含有多个标签的问题,注意与一个标签中含有多种标签分类的问题区别开
6. 是一个白盒模型,结果很容易能够被解释。如果在模型中可以观察到给定的情况,则可以通过布尔逻辑轻松 解释条件。相反,在黑盒模型中(例如,在人工神经网络中),结果可能更难以解释。
7. 可以使用统计测试验证模型,这让我们可以考虑模型的可靠性。
8. 即使其假设在某种程度上违反了生成数据的真实模型,也能够表现良好。
决策树的缺点
1. 决策树学习者可能创建过于复杂的树,这些树不能很好地推广数据。这称为过度拟合。修剪,设置叶节点所 需的最小样本数或设置树的最大深度等机制是避免此问题所必需的,而这些参数的整合和调整对初学者来说 会比较晦涩
2. 决策树可能不稳定,数据中微小的变化可能导致生成完全不同的树,这个问题需要通过集成算法来解决。
3. 决策树的学习是基于贪婪算法,它靠优化局部最优(每个节点的最优)来试图达到整体的最优,但这种做法 不能保证返回全局最优决策树。这个问题也可以由集成算法来解决,在随机森林中,特征和样本会在分枝过 程中被随机采样。
4. 有些概念很难学习,因为决策树不容易表达它们,例如XOR,奇偶校验或多路复用器问题。
5. 如果标签中的某些类占主导地位,决策树学习者会创建偏向主导类的树。因此,建议在拟合决策树之前平衡 数据集。

相关文章:

  • 【VPX630】青翼 基于KU115 FPGA+C6678 DSP的6U VPX通用超宽带实时信号处理平台
  • 首届陕西省商贸服务业“金牌店长”大赛落下帷幕
  • 高等数学啃书汇总重难点(十一)曲线积分与曲面积分
  • Freemarker模板
  • React Native 项目搭建设置或取消git全局代理
  • 影视企业有哪些方式将视频文件快速海外跨国传输国内?
  • Xcode15 模拟器 Rosetta 模式
  • springboot-2.7.3+ES-7.10.0
  • MODBUS通讯
  • Vue3使用Monaco-editor
  • 视频列表:点击某个视频进行播放,其余视频全部暂停(同时只播放一个视频)
  • java实体类全部复制到新类及部分复制到新类
  • 2024最新最全:【Windows10】u盘安装系列教程【附安装包】
  • 【笔记】Arrays.binarySearch()实践,以及需要注意的一些问题点
  • Python画图之HelloKitty
  • 002-读书笔记-JavaScript高级程序设计 在HTML中使用JavaScript
  • Asm.js的简单介绍
  • C++类的相互关联
  • ECMAScript6(0):ES6简明参考手册
  • ERLANG 网工修炼笔记 ---- UDP
  • HashMap ConcurrentHashMap
  • Java 9 被无情抛弃,Java 8 直接升级到 Java 10!!
  • node-glob通配符
  • opencv python Meanshift 和 Camshift
  • Rancher-k8s加速安装文档
  • Redis学习笔记 - pipline(流水线、管道)
  • Spring Boot快速入门(一):Hello Spring Boot
  • storm drpc实例
  • 程序员该如何有效的找工作?
  • 从0到1:PostCSS 插件开发最佳实践
  • 等保2.0 | 几维安全发布等保检测、等保加固专版 加速企业等保合规
  • 反思总结然后整装待发
  • 基于Volley网络库实现加载多种网络图片(包括GIF动态图片、圆形图片、普通图片)...
  • 今年的LC3大会没了?
  • 如何在GitHub上创建个人博客
  • 使用docker-compose进行多节点部署
  • gunicorn工作原理
  • ​2020 年大前端技术趋势解读
  • #android不同版本废弃api,新api。
  • #define 用法
  • #我与Java虚拟机的故事#连载18:JAVA成长之路
  • (12)Hive调优——count distinct去重优化
  • (2)(2.4) TerraRanger Tower/Tower EVO(360度)
  • (delphi11最新学习资料) Object Pascal 学习笔记---第5章第5节(delphi中的指针)
  • (超简单)使用vuepress搭建自己的博客并部署到github pages上
  • (附源码)ssm航空客运订票系统 毕业设计 141612
  • (心得)获取一个数二进制序列中所有的偶数位和奇数位, 分别输出二进制序列。
  • (原創) 如何解决make kernel时『clock skew detected』的warning? (OS) (Linux)
  • (原創) 未来三学期想要修的课 (日記)
  • * 论文笔记 【Wide Deep Learning for Recommender Systems】
  • *** 2003
  • .net MVC中使用angularJs刷新页面数据列表
  • .Net 中的反射(动态创建类型实例) - Part.4(转自http://www.tracefact.net/CLR-and-Framework/Reflection-Part4.aspx)...
  • .NET中的Event与Delegates,从Publisher到Subscriber的衔接!
  • @reference注解_Dubbo配置参考手册之dubbo:reference