一、决策树的基本框架
- 决策树是一类基本的机器学习算法。它是基于树状结构来进行决策,从上到下依次进行判断,最终得到模型的决策。
- 一般的,一棵决策树包含一个根节点、若干个内部节点和若干个叶子节点;叶子节点对应决策结果,其他每个节点则对应一个属性测试;每个节点包含的样本集合根据属性测试的结果被划分到子节点中;根节点包含样本全集。从根节点到每个叶子节点的路径对应了一个判断测试序列。
- 决策树的生成是一个递归过程。在决策树的算法中,如果出现下述三种情形之一,会终止继续划分,返回递归结果:1、当前节点包含的样本都是同一类别;2、当前节点能够划分的属性集合为空,或者节点中的样本在属性上的取值相同;3、当前节点不包含任何样本。
- 决策算法的关键或不同在于:如何选择最优的划分属性。一般来说,随着决策树划分过程的不断进行,我们希望决策树的分支节点所包含的样本尽可能是同一类别。
二、基于信息增益的划分
- “熵”(Entropy)是度量样本集合纯度(purity)最常用的一种指标。假定当前样本集合 D D D中第 k k k类样本所占的比例为 p k ( k = 1 , 2 , . . . . ∣ Y ∣ ) p_k(k = 1,2,....|Y|) pk(k=1,2,....∣Y∣),则样本集D的熵可以定义为: E n t r o p y ( D ) = − ∑ k = 1 ∣ Y ∣ p k l o g 2 p k Entropy(D) =- \displaystyle\sum_{k=1}^{|Y|}p_k{log_2}p_k Entropy(D)=−k=1∑∣Y∣pklog2pk; E n t r o p y ( D ) Entropy(D) Entropy(D)的值越小,表示D的纯度越高。
- 假定离散属性 a a a有 V V V个可能的取值 a 1 , a 2 , . . . , a V {a^1,a^2,...,a^V} a1,a2,...,