决策树是一种用于分类和回归任务的 非参数监督学习算法。该算法在于基于训练数据生成一个树形的决策结构。树形的决策结构的执行逻辑由根节点、分支、内部节点和叶节点组成。其中每个节点表示一个属性上的判断,每个分支代表一个判断结果的输出,最后的每个叶节点代表一种判别结果。基于树形判别结构,决策树天然地用于解决多分类问题(分类决策树)。决策树同时也能够解决回归问题,回归数值最后由样例所进入的叶子节点内的训练样本取均值可得(回归决策树)。决策树基于属性判断的特点,也使得决策树的输出结果具有非常好的可解释性。
在处理数值特征的分类问题的时候,决策树算法会为每个节点上选择某一个特征和特征阈值建立判断条件和判断输出建立决策树。【生成一棵决策树的关键在于 如何为每个判断节点选取合适的特征和特征阈值 作为数据的划分依据。】
1、信息熵建树的策略
1.1 信息熵简介
在信息论中,信息熵(information entropy,香农熵) 提出用来量化度量一个系统的混乱程度(不确定程度)。熵越大,有数据的不确定性越高;熵越小,有数据的不确定性越低。
H = − ∑ i = 1 k p i ( log ( p i ) ) H = -\sum_{i=1}^{k} p_i(\log(p_i)) H=−i=1∑kpi(log(pi))
p i p_i pi描述了一个系统内某类事件发生的概率,简单理解为系统内一类群体的比例。关于信息熵所度量的系统混乱程度的直观理解
对于包含3个类群( a , b , c a,b,c a,