机器学习笔记 - 决策树基本算法

原创 2017年02月13日 21:39:41

顾名思义, 决策树是基于树结构来进行决策的, 这也是人类面临决策问题时的一种很自然的处理机制. 比如, 我们对”这是好瓜吗?”这个问题进行决策时, 通常会进行一系列的判断, 先看它是什么颜色, 如果是青绿色, 再看它的根蒂是什么形态, 如果是蜷缩, 再看它敲起来是什么声音, 最终我们得到判断, 这是个好瓜。 决策树的形态大致如下图所示
决策树
基本算法:

输入: 训练集 D={(x1,y1),(x2,y2),...,(xm,ym)}
属性集 A={a1,a2,...,ad}
过程: 函数 TreeGenerate(D,A)
1: 生成节点node
2: if D中样本全属于同一类别 C; then
3: 将node标记为C类叶结点; return
4: end if
5: if A= OR D中样本在A上取值相同; then
6: 将node标记为叶结点, 其类别标记为D中样本数最多的类; return
7: end if
8: 从A中选择最优划分属性 a
9: for a的每个值av do
10: 为node 生成一个分支; 令 Dva上取值为av的样本子集;
11: if Dv= then
12: 将分支结点标记为叶结点, 其类别标记为D中样本数最多的类; return
13: else
14: TreeGenerate(Dv,A{a}) 为分支结点
15: end if
16:end for

输出:以node为根结点的决策树

Reference

  1. 机器学习 - 周志华 清华大学出版社
版权声明:本文为博主原创文章,未经博主允许不得转载。

决策树详解(-)

决策树学习基本算法:输入:训练集 D=(x1,y1),(x2,y2)......(xm,ym)D={(x_1,y_1),(x_2,y_2)......(x_m,y_m)}; 输出:属性集 A=a1,...
  • yc1203968305
  • yc1203968305
  • 2017年09月23日 21:00
  • 178

决策树

决策树算法 决策树在构造过程中不需要任何领域知识或参数设置,因此在实际应用中,对于探测式的知识发现,决策树更加适用。 1、ID3,C4.5,CART算法 2、C4.5Rule的泛化能力通常优于C...
  • MarinkaWang
  • MarinkaWang
  • 2016年04月21日 16:46
  • 1255

周志华《Machine Learning》学习笔记(5)--决策树

上篇主要介绍和讨论了线性模型。首先从最简单的最小二乘法开始,讨论输入属性有一个和多个的情形,接着通过广义线性模型延伸开来,将预测连续值的回归问题转化为分类问题,从而引入了对数几率回归,最后线性判别分析...
  • u011826404
  • u011826404
  • 2016年12月13日 09:45
  • 1858

机器学习算法第一篇:决策树学习(一)

本篇是我学习决策树的一个入门,主要介绍最经典的决策树算法  ID3 决策树是由昆兰提出的一种作为分类的算法;它的特点主要是形象,简单易懂,不需要较多的专业领域知识;缺点则是根据不同算法各有不同;本篇先...
  • datarunner
  • datarunner
  • 2016年01月17日 13:39
  • 815

机器学习笔记(四)决策树

4.决策树 4.1基本流程 决策树(decisiontree)基于树结构进行决策,符合人的思维机制,是一类常见的机器学习方法。一般的,一棵决策树包含一个根结点、若干个内部结点和若干个叶结点。叶结点...
  • fjssharpsword
  • fjssharpsword
  • 2017年02月04日 10:34
  • 2664

机器学习笔记:ID3算法建立决策树(二)

在《机器学习笔记:ID3算法建立决策树(一)》中记录了ID3算法的计算公式和步骤,现在用例子记录一下ID3构建决策树的过程。 对以下数据进行分类: - 是否能飞? 是否有羽毛? 是小...
  • Bactryki28
  • Bactryki28
  • 2016年09月23日 15:55
  • 842

《机器学习》学习笔记之决策树

近日在学习周志华教授的《机器学习》一书,决定做这么一个学习笔记,记录自己入门的过程。         文章只是对部分内容的总结,个人浅薄之见,如有错误,欢迎指正。 决策树,顾名思义,以树的结...
  • zz31Derek
  • zz31Derek
  • 2016年07月27日 18:13
  • 204

Apache Spark MLlib学习笔记(五)MLlib决策树类算法源码解析 1

从这章开始分析spark MLlib的decision tree的源码实现。 首先看下官方给的java使用决策树的例子,路径是/home/yangqiao/codes/spark/examples/...
  • qiao1245
  • qiao1245
  • 2015年04月08日 16:41
  • 1743

决策树学习算法

一、介绍 决策树是一种常见的机器学习方法。决策树顾名思义就是基于树结构来进行决策的,这恰是人类面临决策问题时一种很自然最常见的处理机制。例如:我们去超市买瓜,如何判断这个瓜是否是好瓜?面对这样一个问题...
  • u014182497
  • u014182497
  • 2017年04月27日 14:45
  • 743

Apache Spark MLlib学习笔记(七)MLlib决策树类算法源码解析 3

上篇已经分析到Spark MLlib库的决策树最终实现使用了random forrest的run方法,这篇将对run方法进行详细的剖析和解释。 上篇提到input先被转换成Metadata处理,因此...
  • qiao1245
  • qiao1245
  • 2015年04月10日 20:57
  • 1408
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:机器学习笔记 - 决策树基本算法
举报原因:
原因补充:

(最多只允许输入30个字)