简介
基于树的学习算法模型的精确率高,容易解释。与线性模型不同,基于树的模型能够很好的表达非线性关系
什么是决策树?它是如何工作的?
决策树是一种监督学习算法,输入和输出变量可以是离散值或连续值。在决策树中,我们根据输入变量中最具有区分性的变量,把数据集或样本分割为两个或两个以上的子集合
决策树中的一些术语
- 根节点:它标识整个样本,会被进一步分割成两个或多个子集合
- 拆分:将一个节点分割为两个或多个子节点的过程
- 决策节点:当一个子节点进一步分裂成子节点的时候,被称为决策节点
- 叶子/终端节点:不会被分割的节点称为叶子或终端节点
- 剪枝:拆分的反过程,通过移除决策节点的子节点
- 分支/子树:整个树的子部分称为分支或子树
- 父节点和孩子节点
优点:
- 理解和解释起来简单
- 需要准备的数据量不大,其他的技术往往需要很大的数据集
- 算法时间的复杂度是用于训练决策树的数据点的对数
- 能够处理数值型和类别型数据
- 相对对神经网络,解释性比较强
缺点:
- 决策树可以创建复杂的树但是没有推广的依据,可能会造成过拟合
- 决策树的结果可能不稳定,数据中一个很小的变化可能导致生成一个完全不同的树
- 学习最优决策树问题是NP问题,决策树的学习算法是基于启发式的,如贪婪算法,每次寻找每个节点上的局部最优决策,这样的算法不能保证返回全局最优决策树
- 决策树很可能在某些类别占主导地位时创建有偏异的树,因此建议用平衡的数据训练决策树
参考
https://blog.youkuaiyun.com/hit0803107/article/details/69260498
https://blog.youkuaiyun.com/xuxiatian/article/details/54340428