03 decision tree(决策树)

一、decision tree(决策树)

1. classification problems(纯度)

i . entropy (熵)

​ 作用:衡量一组数据的纯度是否很纯 ,当五五开时他的熵都是最高的,当全是或者都不是时熵为 0

03 decision tree(决策树)_第1张图片

i i . information gain (信息增益)

​ 父节点到子节点的熵的减少称为信息增益,处理分支熵的时候,选择使用熵的加权平均值来衡量熵值的高低,计算信息增益是为了看两阶之间如果增益太小的话则不需要分了
03 decision tree(决策树)_第2张图片

i i i . 多个&连续特征

a)one hot coding(独热编码)

​ **使用:**如果一个特征有多个可能取值,我们可以将多个取值都变为一种特征,然后取值变为0,1是否

b) 连续特征

​ **解决:**如果一个特征有连续的取值,类似体重,可以按照信息熵来划分一个界限

2、regression tree(回归树)

i. how to choosing a spilt

a). 根据方差选择回归树

​ 先计算出根节点的方差,然后计算不同特征分类以后的方差,选择方差差值较大的一个作为划分条件

03 decision tree(决策树)_第3张图片

i i. weaknesses of desicion tree

​ 改变数据集中的一个数据就会对最后的树造成很大的影响,形成一个根据不同条件划分的树

​ 解决:多构建几个树,使用树的合集来共同决策最后的结果,来投票最后的结果

二、决策森林

i. Sampling with replacement(有放回抽样)

​ **作用:**通过有放回的多次抽样,得到多个和原始训练集大小一样的训练集,与原始的相似但不同的新训练集

i i . Random forest algorithm

a) 袋装决策树

使用 : 使用放回抽样来生成新的dataset,用生成的新的dataset来训练模型,得到新的decision tree,一共重复m次,m 的取值一般为64-228,一般是100往后可能会收益递减。

b) random forest algorithm

与上面的不同: 袋装决策树会因为dataset的小的改变而改变根节点和附近的划分特征,而这里会选择从n个feature中选择 k 个特征,从中选择entropy最大feature来进行划分。

为什么比单一的决策树更加健壮: 因为有放回抽样给了很多个具有微小误差的dataset,训练了不同的决策树,对训练集很多小的变化的求平均

i i i. XGBoost (极端梯度增强)

​ **作用:**在前面创建随机森林过程中,对于每次当前dataset中训练错误,在下一次有放回的dataset中都有更大的机会从错误的例子中取出看,进行有针对的错误训练,使得更加 的高效

使用:

03 decision tree(决策树)_第4张图片

三 、Conclusion

1 . 决策树,集成树,神经网络的优缺点

i . 决策树和集成树的优缺点:

  • 能够很好的处理表格数据(结构化数据),类似于房价问题,将数据都可以做成一个表格的形式,然后我们可以做出分类或者回归预测的任务
  • 不建议在视频,图像,音频和文本等非结构化数据使用,神经网络能很好的处理非结构数据

i i .神经网络的优缺点

  • 决策树的训练时间很快,大型的神经网络的训练时间通常都是很慢
  • 能够很好的和transfer learning协同工作
  • 多个机器学习模型协同工作的系统,多个神经网络一起训练比多个决策树更加容易

你可能感兴趣的:(深度学习,决策树,算法,机器学习)