大数据经典算法CART 讲解

合集下载
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

策树的每个非叶子节点都有两个分支。
CART算法生成的决策树是结构简洁的二叉树。
摘要
递归划分自变量空间
验证数据进行剪枝
模型评价
Hunt算法
设Dt是与节点t相关联的训练记录集, y={y1,y2,…,yc}是类标号。 Hunt算法的递归定义如下: (1)如果Dt中所有记录都属于同一个类yt,则t是 叶子节点。 (2)如果Dt中包含属于多个类的记录,则选择一 个属性测试条件,将记录划分成较小的子集。 对于测试条件的每一个输出创建一个子女结 点,并根据测试结果将Dt中的记录分布到子 女结点中。然后,对于每个子女结点,递归 调用该算法。
剪枝
当分类回归树划分得太细时,会对噪声数据产 生过拟合作用。因此我们要通过剪枝来解决
前剪枝:停止生长策略
后剪枝:在允许决策树得到最充分生长的基础上, 再根据一定的规则,自下而上逐层进行剪枝。
剪枝方法
2
最小误差剪枝
代价复杂性
1
悲观误差剪枝
3
代价复杂性剪枝
模型评价
减少在冒险因素或损失因素方面的不确定性。 不仅包括不同模型的比较,而且还要对模型产 生结果的商业价值进行比较。模型评价的角度 有:
GINI (t ) 1 [ p( j t )]
j
2
p ( j t ) 是结点t中类j的相对频率 最大值:(1 - 1/nc),记录在所有类中等分布 最小值:0,所有记录属于同一个类
如何划分训练记录
如何表示测试条件
根据属性类型的不同: Байду номын сангаас称属性 序数属性 连续属性 根据分割的数量 二元划分 多元化分
离异或已婚 单身 Gini(t1)=1-(5/6)²-(1/6)²=0.2778 5 2 Gini(t2)=1-(2/4)²-(2/4)²=0.5 否 1 2 Gini=6/10×0.2778+4/10×0.5=0.3667 是
是 否
100 120 125 220 55 65 72 80 87 92 97 110 122 172 230 ≤ > ≤ > ≤ > ≤ > ≤ > ≤ > ≤ > ≤ > ≤ > ≤ > ≤ > 0 3 0 3 0 3 0 3 1 2 2 1 3 0 3 0 3 0 3 0 3 0 0 7 1 6 2 5 3 4 3 4 3 4 3 4 4 3 5 2 6 1 7 0
60
70
75
85
90
95
Gini 0.420 0.400 0.375 0.343 0.417 0.400 0.300 0.343 0.375 0.400 0.420
测试条件效果
• 为确定测试条件划分,比较父节点(划分前)的 不纯度和子女结点的不纯度,差越大测试效果就 越好

不变值
决策树停止生长条件
选择最佳分割点
数值型变量
对记录的值从小到大排序,计算每个值作为临界点 产生的子节点的异质性统计量。能够使异质性减小程 度最大的临界值便是最佳的划分点。
分类型变量
列出划分为两个子集的所有可能组合,计算每种组合下 生成子节点的异质性。同样,找到使异质性减小程度最大 的组合作为最佳划分点。
有房 无房 否 是 3 0 4 3
单身或已婚 离异 Gini(t1)=1-(6/8)²-(2/8)²=0.375 6 1 Gini(t2)=1-(1/2)²-(1/2)²=0.5 否 2 1 Gini=8/10×0.375+2/10×0.5=0.4 是
单身或离异 已婚 Gini(t1)=1-(3/6)²-(3/6)²=0.5 3 4 Gini(t2)=1-(4/4)²-(0/4)²=0 否 3 0 Gini=6/10×0.5+4/10×0=0.3 是
一递归划分自变量空间
tid 有房者 婚姻状况 年收入 拖欠贷款者
1 2 3 4 5 6 7 8 9 10 是 否 否 是 否 否 是 否 否 否 单身 已婚 单身 已婚 离异 已婚 离异 单身 已婚 单身 125K 100K 70K 120K 95K 60K 220K 85K 75K 90K 否 否 否 否 是 否 否 是 否 是
(第四组)分类与回归树算法(CART)
分类与回归
分类 ——划分离散变量
回归——划分连续变量
什么是CART
分类与回归树
welcome to use these PowerPoint templates, New CART采用一种二分递归分割的技术,将当前 Content design, 10 years experience 的样本集分为两个子样本集,使得生成的决
Gini(t1)=1-(3/3)²-(0/3)²=0 Gini(t2)=1-(4/7)²-(3/7)²=0.4849 Gini=0.3×0+0.7×0.4898=0.343
单身 已婚 离异 Gini(t1)=1-(2/4)²-(2/4)²=0.5 Gini(t2)=1-(0/4)²-(4/4)²=0 4 1 Gini(t3)=1-(1/2)²-(1/2)²=0.5 否 2 0 1 Gini=4/10×0.5+4/10×0+2/10×0.5=0.3 是 2
分险
收益
利润
Thank you!
节点达到完全纯度
树的深度达到用户所要的深度
节点中样本个数少于用户指定个数
异质性指标下降的最大幅度小于用户指定的幅度
决策树(Hunt算法)
有房者 拖欠贷款者=否 是 拖欠贷款者=是 否 拖欠贷款者=否
有房者 是 拖欠贷款者=否 单身 离异 年收入 <80K 拖欠贷款者=否 否 婚姻状况 是 已婚 拖欠贷款者=否 拖欠贷款者=否 ≥80K 拖欠贷款者=是 单身 离异 拖欠贷款者=是 婚姻状况 已婚 拖欠贷款者=否 有房者 否
训 练 集
如何以递归方式建立决策树?
决策树
如何划分训练记录? 如何表示属性测试条件? 如何确定最佳划分? 如何构建测试条件效果最好的树?
如何确定最佳划分
贪婪法:根据子女结点类分布的一致性程度来 选择最佳划分 度量结点的不纯度 Gini 熵 误分类误差
不纯度度量——GINI
对于一个给定的结点t:
相关文档
最新文档