实用机器学习笔记十一:决策树
前言:
本文是个人在 B 站自学李沐老师的实用机器学习课程【斯坦福 2021 秋季中文同步】的学习笔记,感觉沐神讲解的非常棒 yyds。
决策树:
决策树即是使用树状结构来做决策。可以分为分类树和回归树。如下图:左边为分类的例子,输出就是类别,标签等。右边为回归例子,输出不再是类别了,而是具体的数据,目的就是预测出房价。
优点:
可解释性。决策树是为数不多的可以解释的机器学习算法,我们可以看到具体的决策过程,到底走哪个分支。
可以处理数值型和类别型的特征。如果是数值类的特征,决策节点是看输入值是大于还是小于某个数值。如果是类别类的特征,决策节点是看输入值是不是这个类型。
缺点:
鲁棒性不强。决策树是根据数据进行不断分类决策点生成的,如果数据里面夹杂噪音或者是分布变了,那么决策树也会发生改变,决策节点里面的数据也会改变。解决方案:集成学习来帮忙,生成特别复杂的大量的数,把数据的各种情况都列出来。
复杂的决策树会过拟合。原因:分支太多,太精细。解决方案:剪枝,有两种方案:在训练过程中就剪枝,另一个是在训练完成后再进行剪枝。
不容易并行计算。决策树实际上就是 if else 的语句。并且是从顶向下进行不断分支的,因此无法使用并行计算,这就增加了训练时间,并且在部署时也无法使用并行计算。
如何提升决策树的稳定性:
随机森林。可以训练多个决策树来提升鲁棒性和稳定性。
每一个树是独立训练的。
如果是分类问题,分类结果使用投票的方式。如果是回归问题,预测结果使用多个决策树的结果平均值。
随机的含义:
在训练每一个决策树时,训练集都是从原始训练集中有放回的随机采样得到的,训练集中会有重复的数据。训练出的决策树是不完全一样的。
在训练每一个决策树时,特征也是随机采样的,但是特征是不重复的。
Gradient Boosting 决策树:
顺序训练多棵树。
时间步 t=1 开始,表示前面训练出来的的 t-1 颗树的和。
在残差数据上:训练一个新的树。可知:不是在原始数据上进行训练,特征值不变,但是标号变了,标号变为了残差(也就是训练好的模型没有预测好的这一部分),是原始标号—训练好的树对数据的预测值。如果比较好的话,就会使这个残差不断变小。
L 表示 F 函数的预测值和真实值的均方误差。=,意思就是说使这个残差一直拟合负梯度,负梯度就是梯度下降。
版权声明: 本文为 InfoQ 作者【打工人!】的原创文章。
原文链接:【http://xie.infoq.cn/article/13eadf2dbf9c1a010d1edbfbc】。文章转载请联系作者。
评论