Decision Tree
决策树学习的三个步骤:特征选择、决策树的生成、决策树的修剪
决策树的结点:内部结点表示一个特征或属性,叶节点表示一个分类
决策树的路径或其对应的if then
规则集合满足性质:互斥且完备
决策树学习本质上是从训练数据集中归纳出一组分类规则
与训练集不相矛盾的决策树可能有很多,我们需要的是一个与训练数据矛盾较小且分化能力较强的决策树
关于剪枝:我们需要对已生成的树自下而上进行剪枝,将树变得简单,从而使其具有更好地泛化能力
- 具体地,就是去掉过于细分的叶结点,使其退回到父节点甚至更高的结点
决策树的生成只考虑局部最优,而决策树的剪枝则考虑全局最优
特征选择的准则:信息增益或信息增益比
- 信息增益 (information gain)
- 信息论中,熵(entropy)是表示随机变量不确定性的度量
- 熵越大,随机变量的不确定性就越大
- 信息增益表示得知特征X的信息而使得类Y的信息不确定性减少的程度
- g(D,A) = H(D) - H(D|A) 【特征A对训练集D的信息增益】
- H(D) 和 H(D|A) 是经验熵
- 信息论中,熵(entropy)是表示随机变量不确定性的度量
- 信息增益比
- 以信息增益划分训练集的特征,存在偏向于选择取值较多的特征的问题
- 信息增益比,把特征的取值数量纳入考虑范围
- gR(D,A) = g(D,A) / HA(D)
决策树的剪枝
- 将已生成的树进行简化的过程称为剪枝
- loss / cost function
- Ca(T) = C(T) + α|T|
- C(T)表示模型对训练数据的预测误差
- |T|表示模型复杂度
- Ca(T) = C(T) + α|T|
- 若剪枝后的子树的损失函数更小,则进行剪枝
- 剪枝可以由一种动态规划的算法实现
决策树的生成算法:ID3 C4.5 CART
-
ID3
- 在决策树各个结点上应用信息增益准则选择特征,递归地构建决策树
- 只有树的生成而没有剪枝,故容易过拟合
-
C4.5
- 在ID3上做了改进,用信息增益比来选择特征
-
CART Classification And Regression Tree
- 在给定输入随机变量X条件下,输出随机变量Y的条件概率分布
- 假设决策树是二叉树,左分支是“是”,右分支是“否”
- CART算法由以下两步组成
- 决策树生成:基于训练集生成决策树,生成的树要尽可能大
- 分类树用基尼系数选择最优特征,同时决定该特征的最优二值切分点
- 基尼系数 Gini(D) 表示集合D的不确定性
- 基尼系数 Gini(D,A) 表示经A = a分割后集合D的不确定性
- 基尼系数和熵之半很接近,都可以近似地代表分类误差率
- 分类树用基尼系数选择最优特征,同时决定该特征的最优二值切分点
- 决策树剪枝:用验证集数对已生成的树进行剪枝并且选择最优子树
- 计算子树的损失函数 Ca(T) = C(T) + α|T|
- 通过交叉验证法在独立的验证集上对子树序列进行测试,每棵子树对应一个参数α,从中选择最优子树
- 决策树生成:基于训练集生成决策树,生成的树要尽可能大
-
reference
- 统计学习方法(李航)第5章
标签:剪枝,特征,信息,生成,学习,增益,统计,决策树 来源: https://blog.csdn.net/Torres_10/article/details/89060614
本站声明: 1. iCode9 技术分享网(下文简称本站)提供的所有内容,仅供技术学习、探讨和分享; 2. 关于本站的所有留言、评论、转载及引用,纯属内容发起人的个人观点,与本站观点和立场无关; 3. 关于本站的所有言论和文字,纯属内容发起人的个人观点,与本站观点和立场无关; 4. 本站文章均是网友提供,不完全保证技术分享内容的完整性、准确性、时效性、风险性和版权归属;如您发现该文章侵犯了您的权益,可联系我们第一时间进行删除; 5. 本站为非盈利性的个人网站,所有内容不会用来进行牟利,也不会利用任何形式的广告来间接获益,纯粹是为了广大技术爱好者提供技术内容和技术思想的分享性交流网站。