人工智能之决策树学习版.ppt
合集下载
相关主题
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
classifies the given Examples.
Create a Root node for the tree
If all Examples are positive, Return the single‐node tree Root, with label = +
If all Examples are negative, Return the single‐node tree Root, with label = ‐
决策树是一种类似于流程图的结构,其中每个内部节点代表一个属性上的 “测试”(例如,一个硬币的翻转是正面还是反面),每个分支代表测试 的结果,每个叶节点代表一个类标签(在计算所有属性之后做出的决定)。 从根到叶子的路径表示分类规则。
︵。︵
1. 决策树基本概念4
生活中的决策树2(Decision Tree)
香农理论的重要特征是熵(entropy)的 概念,他证明熵与信息内容的不确定程度 有等价关系。
︵。︵
2. 信息论基础12
信息量
消息 xi发生后所含有的信息量,反映了消息 xi发生前的不确定性:
I
( xi
)
log
1 P( xi
)
log
P( xi
)
譬如袋子里有红球和黑球,取红球的概率为0.4,取黑球的概率为0.6。 取出红球的信息量为1.322,取出黑球的信息量0.737。
︵。︵
3. 应用实例及ID3算2法4
决策树剪枝
决策树生成算法递归的产生决策树,直到不能继续下去为止,这样产生的 树往往对训练数据的分类很准确,但对未知测试数据的分类缺没有那么精 确,即会出现过拟合现象。过拟合产生的原因在于在学习时过多的考虑如 何提高对训练数据的正确分类,从而构建出过于复杂的决策树,解决方法 是考虑决策树的复杂度,对已经生成的树进行简化。
︵。︵
3. 应用实例及ID3算2法3
Python程序展示
https://blog.csdn.net/c406495762/article/details/75663451?utm_sourc e=blogxgwz5
三个源文件:
ent.py entgain.py id3.py
计算数据集D类别的信息熵 分别计算各个特征对计算数据集D类别的信息增益 ID3算法
The decision attribute for Root ← A
For each possible va源自文库ue, vi, of A
Add a new tree branch below Root, corresponding to the test A = vi
Let Examplesvi be the subset of Examples that have value vi for A
︵。︵
3. 应用实例及ID3算2法0
ID3算法伪代码
ID3(Examples, Target_attributes, Attributes)
Examples are the training examples. Target_attribute is the attribute whose value is to be
︵。︵ Target_attribute, Attributes ‐ {A})
21
End
Return
应用实例:是否放贷的决策树
ID
年龄
有工作
有房子
信贷情况
类别 (是否放贷)
对特征进行标注(预处理)
1
青年
否
否
2
青年
否
否
3
青年
是
否
4
青年
是
是
5
青年
否
否
一般
否
好
否
好
是
一般
是
一般
否
•年龄:0代表青年,1代表中年, 2代表老年; •有工作:0代表否,1代表是; •有自己的房子:0代表否,1代
决策树算法发展历史(2/2)
1980年,戈登V.卡斯创建CHAID(卡方自动交叉检验)
1979年,J.R. Quinlan 给出ID3算法,在1983年和1986年进行总结和简化
1986年,Schlimmer 和Fisher 于对ID3进行改造,使决策树可以递增式生 成,得到ID4算法。
1988年,Utgoff 在ID4基础上提出了ID5学习算法
If Attributes is empty, Return the single‐node tree Root, with label = most common value
of Target_attribute in Examples
Otherwise Begin
A ← the attribute from Attributes that best classifies Examples
︵。︵
2. 信息论基础13
信息熵
熵 (entropy) 这一词最初来源于热力学。1948年,克劳德·爱尔伍德·香农将热
力学中的熵引入信息论,所以也被称为香农熵 (Shannon entropy),信息熵
(information entropy)。表示系统的不确定性。
公式:
H (X )
E[I (xi )]
相比大多数分类算法,如 kNN 等,决策树易于理解和实现,使用者无需 了解很多背景知识。它能够对数据集合进行分析,挖掘其中蕴含的知识信 息。
︵。︵
1. 决策树基本概念7
决策树算法发展历史(1/2)
决策树算法采用自上至下递归建树的技术,该算法的产生源于CLS系统, 即概念学习系统。
︵。︵
1. 决策树基本概念8
6
中年
否
否
一般
否
表是;
7
中年
否
否
好
否
•信贷情况:0代表一般,1代表
8
中年
是
是
9
中年
否
是
10
中年
否
是
11
老年
否
是
好
是
非常好
是
非常好
是
非常好
是
好,2代表非常好; •类别(是否给贷款):no代表否, yes代表是。
12
老年
否
是
好
是
13
老年
是
否
好
是
14
老年
是
否
非常好
是
15
老年
否
否
︵。︵ 一般
否
3. 应用实例及ID3算2法2
ID3是一种贪心算法:1)从根结点(root node)开始,对结点计算所有可能的特 征的信息增益,选择信息增益最大的特征作为节点的特征。2)由该特征的不同
取值建立子节点,再对子节点递归地调用以上方法,构建决策树;直到所有特征 的信息增益均很小或没有特征可以选择为止;3)最后得到一个决策树。
每次选取的分割数据的特征都是当前的最佳选择,并按照该特征的所有取值来切 分,也就是说如果一个特征有4种取值,数据将被切分4份。
2. 信息论基础16
信息增益计算实例
Y代表性别,取值为男和女;X代表穿着,取值为裙子和裤子。
男
裙子
0.2
裤子
0.2
0.4
女
0.5
0.7
0.1
0.3
0.6
求信息增益:I(X;Y)=H(Y)-H(Y/X)
注意:H(Y/X)代表已知某人穿着,其性别的不确定性
︵。︵
2. 信息论基础17
首先计算条件熵
机器学习中的分类技术一般是用一种学习算法确定分类模型,该模型可以 很好地拟合类标号和属性集之间的映射关系。
常用的分类算法包括:决策树分类法、逻辑回归分类法、神经网络、支持 向量级、朴素贝叶斯分类方法等。
︵。︵
1. 决策树基本概念6
机器学习中的决策树(2/2)
在机器学习中,决策树是一个带有标签的监督式学习预测模型,代表的是 对象属性与对象值之间的一种映射关系。算法ID3,C4.5和C5.0是基于信 息学理论中熵的理论而设计的。
概率越小,信息量越大。出现概率为0,信息量无穷大 概率越大,信息量越小。出现概率为1,信息量为0.
︵。︵
2. 信息论基础11
信息论
1948年10月,香农在《贝尔系统技术学报》 上发表论文《A Mathematical Theory of Communication》,首次建立通讯过程 的数学模型,成为现代信息论研究的开端。
属性测试
属性测试
构建决策树的关键问题: 1. 以何种属性进行测试
2. 以何种顺序进行测试
分支
3. 何时做出决定
决定
决定
︵。︵
1. 决策树基本概念5
机器学习中的决策树(1/2)
连接主义者认为,机器学习分为监督学习,无监督学习和强化学习。监督 学习就是训练样本带有属性标签。监督学习又可分为“回归”和“分类” 问题。
Step1:计算信息熵
Step3:Y条件概率的熵值对X求数学期望 Step2:计算给定X条件下,Y条件概率的熵
︵。︵
2. 信息论基础18
其次计算信息增益
互信息量,也就是随机变量X对随机变量Y的信息增益
︵。︵
2. 信息论基础19
ID3算法简介
ID3由Ross Quinlan在1986年提出。其核心是根据“最大信息熵增益”原则选择 划分当前数据集的最好特征,减少数据的熵(混乱度)。
信息熵计算公式
采用频率替代概率。数据集D为是否放贷的类别, Ck代表该类别的某一取值的出现频率,如不放贷出 现的频次
特征A有n种取值,H(Di)代表在A属性的 第i个取值下,D的条件概率熵H(D/Ai)
信息增益,即特征A对D的信息增益
注意:要计算所有特征(属性)A、B、C…的信息增益,选择信息增益最大的特征作为节点; 然后以该节点的取值为分支,在剩余的特征(属性)中选取信息增益最大的特征作为子节点
2. 信息论基础14
条件熵
条件熵H(X|Y)表示在已知随机变量Y的条件下随机变量X的不确定性。 H(X|Y),其实质是给定Y情况下X条件概率分布的熵,对Y的数学期 望:
n
H ( X | Y y j ) E[I ( X ) | Y y j ] - P(xi | y j ) log2 P(xi | y j ) i 1
1993年,Quinlan 进一步发展了ID3算法,改进成C4.5算法。
另一类决策树算法为CART,与C4.5不同的是,CART的决策树由二元逻 辑问题生成,每个树节点只有两个分枝,分别包括学习实例的正例与反例
︵。︵
1. 决策树基本概念9
决策树重要概念
︵。︵
1. 决策树基本概1念0
信息量
信息的大小可以度量么? 信息量的大小与概率有关!
predicted by the tree. Attributes is a list of other attributes that may be tested by the learned
decision tree. Returns a decision tree that correctly
E[log 2
1
n
]
p(xi )
i 1
p(xi ) log 2
p(xi )
譬如袋子里有红球和黑球,取红球的概率为0.4,取黑球的概率为0.6。
取出红球的信息量为1.322,取出黑球的信息量0.737。取出1个球的加权
平均信息量为1.322*0.4+0.737*0.6。
思考:什么情况下,熵最大?
︵。︵
m
H ( X | Y ) P( y j )H ( X | Y y j ) j 1
︵。︵
2. 信息论基础15
条件熵和互信息量
互信息量,又称信息增益
I(X;Y) H(X ) H(X |Y)
=
m j 1
n i 1
P(xi ,
y
j
)
log(
P(xi , y P(xi )P(
j) yj
)
)
︵。︵
︵。︵
1
1. 决策树基本概念 2. 信息论基础 3. 应用实例及ID3算法 4. 决策树总结 5. 一些思考
目录
︵。︵
2
生活中的决策树1(Decision Tree)
︵。︵
1. 决策树基本概念3
定义
A decision tree is a flowchart-like structure in which each internal node represents a "test" on an attribute (e.g. whether a coin flip comes up heads or tails), each branch represents the outcome of the test, and each leaf node represents a class label (decision taken after computing all attributes). The paths from root to leaf represent classification rules.
If Examplesvi is empty
Then below this new branch add a leaf node with label = most
commonvalue of Target_attribute in Examples
Else below this new branch add the subtreeID3(Examplesvi,