机器学习-决策树学习
合集下载
相关主题
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
专用于学习布尔函数的ID3算法概要
ID3(Examples,Target_attribute, Attributes)
创建树的Root节点
如果Examples都为正,返回label =+ 的单节点树Root 如果Examples都为反,返回label =- 的单节点树Root 如果Attributes为空,那么返回单节点Root, label=Examples中最普遍的Target_attribute 值 否则开始 AAttributes中分类examples能力最好的属性 Root的决策属性A 对于A的每个可能值vi 在Root下加一个新的分支对应测试A=vi 令Examplesvi为Examples中满足A属性值为vi的子集 如果Examplesvi为空 在这个新分支下加一个叶子节点,节点的label=Examples中最普遍的 Target_attribute值 否则在新分支下加一个子树ID3(Examplesvi,Target_attribute,Attributes-{A}) 结束 返回Root
ID3算法
基本的ID3算法通过自顶向下的构造决策树来进行学习。
构造过程从“哪一个属性将在树的根节点被测试?”这个 问题开始 为了回答使用统计测试来确定每一个实例属性单独分类训 练样例的能力 分类能力最好的属性被选作树的根节点 根节点的每个可能值产生一个分支 训练样例排列到适当的分支 重复整个过程
决策树表示法
决策树
通过把实例从根节点排列到某个叶子节点来分类 实例; 叶子节点即为实例所属的分类; 树上每个节点说明了对实例的某个属性的测试; 节点的每个后继分支对应于该属性的一个可能值。
决策树代表实例属性值约束的合取
(conjunction)的析取(disjunction)式。从树根 到树叶的每一条路径对应一组属性测试的合取, 树本身对应这些合取的析取。
| Sv | Gain(S , A) Entropy(S ) Entropy(Sv ) vValues ( A) | S |
其中,Values(A)是属性A所有可能值的集合,Sv是S 中属性A的值为v的子集。
举例说明
| Sv | Gain(S , A) Entropy(S ) Entropy(Sv ) vValues ( A) | S |
关于某布尔分类的熵函数
S的所有成员属于同一类, Entropy(S)=0; S的正反样例数量相等, Entropy(S)=1; S的正反样例数量不等,熵 介于0和1之间
更一般的熵定义
更一般地,如果目标属性具有c个不同的值,那么S相对 于c个状态的分类的熵定义为:
Entropy S ) pi log2 pi (
概念PLAYTENNIS的决策树
(Outlook=Sunny ∧Humidity=Normal)∨(Outlook=Overcast) ∨ (Outlook=Rain ∧Wind=Weak)
决策树学习的适用问题
通常决策树学习最适合具有以下特征的问题: 实例由“属性-值”对表示 目标函数具有离散的输出值—yes或no 可能需要析取的描述 训练数据可以包含错误 训练数据可以包含缺少属性值的实例—赋给最常见 的值或赋予每个可能值一个概率
i 1
c
其中,pi是S中属于类别i的比例。 如果目标属性具有c个可能值,那么熵最大可能为log2c。
2.用信息增益度量期望的熵降低
信息增益是定义属性分类训练数据的能力的度量标准。 简单地说,一个属性的信息增益就是由于使用这个属 性分割样例而导致的期望熵降低。更精确地讲,一个 属性A相对样例集合S的信息增益Gain(S,A),被定义为:
决策树学习
决策树学习内容
简介 决策树表示法 决策树学习的适用问题 ID3算法
简介
决策树学习是应用最广的归纳推理算法之一。对噪 声数据有很好的健壮性并且能够学习析取表达式。 主要算法:ID3、ASSISTANT、C4.5。 决策树学习是一种逼近离散值目标函数的方法,在 这种方法中学习到的函数被表示为一棵决策树。学 次得到的决策树也能再被表示为多个if-then的规则, 以提高可读性。
决策树学习的适用问题
问题举例
医学中的应用(如根据疾病分类患者、疾病分析 与预测) 根据起因分类设备故障 根据拖欠支付的可能性分类贷款申请
分类问题
核心任务是把样例分类到各可能的离散值对应的 类别
基本的决策树学习算法—ID3算法
大多数决策树学习算法是一种核心算法的变体,ID3 是这种算法的代表。
计算属性的信息增益
相对于目标分类,Humidity比Wind有更大的信息增益。
ID3算法具体操作(1)
ID3算法具体操作(2)
根据训练样例集合计算四个属性的信息增益为:
Gain(S, Outlook) = 0.246 Gain(S, Humidity) = 0.151 Gain(S, Wind) = 0.048 Gain(S, Temperature) = 0.029
根据信息增益标准,属性Outlook在训练样例上提供了 对目标属性PlayTennis的最佳预测。所以,Outlook 被选作根节点的决策属性,并为它的每一个可能值 (Sunny、Overcast、Rain)在根节点下创建分支。
ID3算法具体操作(3)
对每一个新的叶子节点继续这个过程,直到满足以 下两个条件中的任一个: 1)所有的属性已经被这条路径包括; 2)与这个节点关联的所有训练样例都具有相同的目 标属性值。
最佳分类属性
ID3算法的核心问题是选取在树的每个节点要测试的 属性。希望选择的是最有助于分类实例的属性。 定义一个统计属性,称为“信息增益”,用来衡量 给定的属性区分训练样例的能力。 ID3算法在增长树的每一步使用这个信息增益标准从 候选属性中选择属性。
ຫໍສະໝຸດ Baidu
1.用熵(ENTROPY)度量样例的均一性