决策树是一种树结构,可用于分类和回归,属于有监督无参数学习方法。基于信息学理论中熵的概念,决策树的经典算法有ID3、C4.5、Cart等算法。这里只记录算法原理,其他的不会赘述。
基本公式
名称 | 公式 |
---|---|
基尼系数 | |
熵 | |
条件熵 | |
信息增益 | |
样本属性值的信息量 | |
信息增益率 |
ID3算法
ID3算法的核心是在决策树各级节点上选择属性时,用信息增益衡量不纯度,使得在每一个非节点进行测试时能获得关于被测试记录最大的类别信息。
ID3原理
ID3特点
优点:ID3算法理论清晰,方法简单,学习能力强。
不足之处:信息增益计算依赖特征数目较多的特征,但属性取值多的属性不一定最优;是非递增算法;是单变量决策树;抗噪性差。
C4.5算法
C4.5的核心与ID3算法一样,不同的是衡量不纯度的指标采用信息增益率。
C4.5特点
优点:分类规则易于理解,准确率较高。
不足之处:构造树的过程中,需要对数据集进行多次扫描排序,效率低。
CART算法
CART与前两个算法不同,它衡量不纯度的指标是基尼系数。CART预测变量量 的类型既可以是连续型变量量也可以是分类型变量量数据应以其原始形式处理,不不需要离散化⽤用于数值型预测时,并没有使用回归,而是基于到达叶结点的案例例的平均值做出预测。
二叉递归划分:条件成立向左,反之向右。对于连续变量:条件是属性⼩于等于最优分裂点;对于分类变量量:条件是属性属于若干类。相⽐多路路分裂导致数据碎片化的速度慢,允许在一个属性上重复分裂,即可以在一个属性上产生⾜足够多的的分裂。两路分裂带来的树预测性能提升足以弥补其相应的树易读性损失。
CART算法的流程:
CART特点
优点:变量可以是离散也可是数值,效率高,可以回归分析也可以分类。
不足之处:对连续性的字段比较难预测;对有时间顺序的数据,需要很多预处理的工作;当类别太多时,错误可能就会增加的比较快;一般的算法分类的时候,只是根据一个字段来分类。