首先,C4.5是决策树算法的一种。决策树算法作为一种分类算法,目标就是将具有p维特征的n个样本分到c个类别中去。相当于做一个投影,c=f(n),将样本经过一种变换赋予一种类别标签。决策树为了达到这一目的,可以把分类的过程表示成一棵树,每次通过选择一个特征pi来进行分叉。

那么怎样选择分叉的特征呢?每一次分叉选择哪个特征对样本进行划分可以最快最准确的对样本分类呢?不同的决策树算法有着不同的特征选择方案。ID3用信息增益,C4.5用信息增益率,CART用gini系数。

下面主要针对C4.5算法,我们用一个例子来计算一下。

上述数据集有四个属性,属性集合A={ 天气,温度,湿度,风速}, 类别标签有两个,类别集合L={进行,取消}。

1. 计算类别信息熵

类别信息熵表示的是所有样本中各种类别出现的不确定性之和。

C4.5算法详解(非常仔细)相关推荐

  1. c4.5算法 程序语言,决策树之C4.5算法详解-Go语言中文社区

    决策树之C4.5算法详解 主要内容 C4.5算法简介 分裂属性的选择--信息增益率 连续型属性的离散化处理 剪枝--PEP(Pessimistic Error Pruning)剪枝法 缺失属性值的处理 ...

  2. 决策树C4.5算法详解

    版权声明:本文为博主原创文章,未经博主允许不得转载. https://blog.csdn.net/zjsghww/article/details/51638126 首先,C4.5是决策树算法的一种.决 ...

  3. Popular Cows POJ - 2186(tarjan算法)+详解

    题意: 每一头牛的愿望就是变成一头最受欢迎的牛.现在有 N头牛,给你M对整数(A,B),表示牛 A认为牛B受欢迎.这种关系是具有传递性的,如果 A认为 B受欢迎, B认为 C受欢迎,那么牛 A也认为牛 ...

  4. md5与des算法有何不同_Python算法详解:为什么说算法是程序的灵魂?

    算法是程序的灵魂,只有掌握了算法,才能轻松地驾驭程序开发.软件开发工作不是按部就班,而是选择一种最合理的算法去实现项目功能.算法能够引导开发者在面对一个项目功能时用什么思路去实现,有了这个思路后,编程 ...

  5. LDA主题模型(算法详解)

    LDA主题模型(算法详解) http://blog.csdn.net/weixin_41090915/article/details/79058768?%3E 一.LDA主题模型简介 LDA(Late ...

  6. java制作海报一:java使用Graphics2D 在图片上写字,文字换行算法详解

    文章目录 前言 一.直接上代码 1. 写字方法 2. 换行算法 二. 叙述换行算法 前言 代码都上传到GitHub了,这里仅仅是贴出来主要部分,GitHub传送门:https://github.com ...

  7. 隐马尔可夫模型之Baum-Welch算法详解

    隐马尔可夫模型之Baum-Welch算法详解 前言 在上篇博文中,我们学习了隐马尔可夫模型的概率计算问题和预测问题,但正当要准备理解学习问题时,发现学习问题中需要EM算法的相关知识,因此,上一周转而学 ...

  8. Apollo6.0代码Lattice算法详解——Part5: 生成横纵向轨迹

    Apollo6.0代码Lattice算法详解--Part5: 生成横纵向轨迹 0.前置知识 1.涉及主要函数 2.函数关系 3.部分函数代码详解 3.1 lattice_planner.cc中代码部分 ...

  9. 离线强化学习(Offline RL)系列3: (算法篇) Onestep 算法详解与实现

    [更新记录] 论文信息: David Brandfonbrener, William F. Whitney, Rajesh Ranganath, Joan Bruna: "Offline R ...

最新文章

  1. android studio无线真机调试
  2. Oracle中Cursor介绍
  3. jquery实现输入框动态增减的实例代码
  4. bzoj1565: [NOI2009]植物大战僵尸
  5. RG-IS2700G工业交换机ERPS技术解析
  6. 基于python及图像识别的围棋棋盘棋子识别1——定位棋盘位置
  7. centos7 firefox 安装 java plugin方法
  8. 第六次作业——潘芊睿
  9. tkinter模块 视窗设计相关操作
  10. crypto-music is frequency(INS‘hAck CTF 2018)
  11. Cobalt Strike上线微信机器人提醒
  12. linux 文件名带日期,在linux中追加日期到文件名
  13. 继承 extends
  14. Flink SQL 自定义 Connector
  15. 轴承轮廓测量解决方案
  16. b站网页版改html,网页版b站怎么设置弹幕?网页bilibili怎么设置停止播放和调倍速?...
  17. python-体质指数BMI计算
  18. Model Compression and Hardware Acceleration for Neural Networks A Comprehensive Survey
  19. 百度宋勋超:百度大规模知识图谱构建及智能应用
  20. 促销活动的2个环节与7个关键点

热门文章

  1. 到底什么是RedCap?
  2. Vue.js+ElementUI+vant生成动态表单配置
  3. 最详细步骤加注释jq简单实现购物车选中并计算价格
  4. 【工作流的微服务启动出现空指针问题】
  5. SQL int 转 char
  6. C++中int 转char
  7. Android布局中gravity、layout_gravity与layout_centerHorizontal属性区别介绍
  8. 车厢调度(判断是否为合法的出栈序列)
  9. delphi XE同步对话框、异步对话框、平台特性对话框单元FMX.DialogService.pas
  10. linux忘记密码无法登陆/修改密码