[关闭]
@Libaier 2016-08-03T04:17:12.000000Z 字数 1528 阅读 1445

决策树

分类 回归 有监督学习


主要思想

决策树(Decision tree)由一个决策图和可能的结果(包括资源成本和风险)组成, 用来创建到达目标的规划。决策树建立并用来辅助决策,是一种特殊的树结构。决策树是一个利用像树一样的图形或决策模型的决策支持工具,包括随机事件结果,资源代价和实用性

产生背景

ID3 1986年提出
C4.5 1993年提出
CART 1984年提出

应用场景

核心理解

决策树表示给定特征条件下类的条件概率分布。

主要推导

ID3

信息熵

条件熵
使用特征对数据集进行分类,假定特征

信息增益

C4.5

信息增益会偏袒取值较多的特征

可以使用增益率解决这一问题

CART

CART可以用来分类,也可以用来做回归。

此种决策树每次都进行二分

1. 回归

最小化平方误差。

选择第j个变量和他的取值s作为划分,c代表类中实例输出结果均值。

2. 分类

基尼指数定义:

通过判断特征是否取某一特定值把数据集分为两类:

在所有可能的特征和划分中选择基尼指数最小的做划分。

求解算法

与推导过程类似,使用贪心的策略迭代求解。

伪代码

  1. 输入:数据集D(N个样本),特征集合X
  2. 过程:
  3. genarateTree(D,Xi)
  4. 生成节点node
  5. if D中所有样本属于同一类别
  6. node标记为此类别/回归为均值 return
  7. end if
  8. if X为空集或者D中样本在X上取值相同
  9. node标记为D中较多的样本的类/回归为均值 return
  10. end if
  11. 选择最优划分Xi
  12. for Xi = 所有的可能取值
  13. X中去掉Xi这一维,命名为X
  14. D’为Xi取当前值的样本子集
  15. genarateTree(D’,X’)
  16. end for
  17. 输出:完整的决策树

复杂度分析

to be done

大数据下改进

评价

算法改进

参考资料

  1. wiki

  2. 机器学习常见算法个人总结

添加新批注
在作者公开此批注前,只有你和作者可见。
回复批注