c5算法生成决策树的研究
决策树算法 课程思政

决策树算法课程思政决策树算法是一种常用的机器学习算法,在各个领域都有广泛的应用。
而课程思政作为大学生的必修课程,对于我们的思维方式、价值观和道德观念等方面都有着重要的影响。
本文将从决策树算法的基本原理、应用案例以及如何将决策树算法应用于课程思政等方面展开讨论。
一、决策树算法的基本原理决策树算法是一种基于树形结构的有监督学习算法,它通过对数据集进行划分,构建一棵树形结构来进行决策。
决策树的每个内部节点表示一个特征属性,每个分支代表该特征属性的一个取值,而每个叶节点则表示一个类别。
根据样本的特征值,沿着决策树从根节点到叶节点的路径,就可以得到对样本的分类结果。
决策树算法的主要步骤包括特征选择、决策树的生成和决策树的修剪。
特征选择是指根据某个准则选择最佳的划分属性,常用的准则有信息增益、信息增益比和基尼指数等。
决策树的生成是通过递归的方式,根据选择的特征属性进行划分,直到所有样本都属于同一类别或无法继续划分为止。
决策树的修剪是为了避免过拟合,通过剪枝操作来简化决策树的复杂度。
二、决策树算法的应用案例决策树算法在很多领域都有广泛的应用,例如医学诊断、金融风控和智能推荐等。
下面以医学诊断为例,介绍决策树算法的应用。
在医学诊断中,医生需要根据患者的症状和体征来判断患者患的是哪种疾病。
使用决策树算法可以通过构建一棵决策树来辅助医生进行诊断。
首先,根据已有的病例数据,选择合适的特征属性进行划分,例如体温、血压和呼吸频率等。
然后,根据特征属性的取值,将患者分到不同的类别,例如感冒、肺炎和流感等。
最后,根据决策树的分类结果,医生可以给出相应的治疗方案。
三、决策树算法与课程思政的应用将决策树算法应用于课程思政可以帮助学生更好地理解和运用思政知识。
首先,可以通过构建决策树来帮助学生解决思政问题。
例如,对于一个道德问题,可以根据不同的特征属性进行划分,例如利益关系、公平原则和伦理道德等,从而得到不同的判断结果。
这样可以帮助学生系统地分析和解决复杂的思政问题。
C5.0算法在RoboCup传球训练中的应用研究

与人类 足球 比赛 的环境 最为相近 , 于分布式 人工智 能 的研 对
1 引言
R b C p R bt r u ) 即机 器人世界 杯足球 锦标 o o u ( o o l C p , Wo d
究具 有极其重要 的意义。
仿真球 队的设计 是一个非常复杂 的问题 , 每个 球员是一 个 A e t如果仅仅 考虑 2 名 A e t gn , 2 gn 在场 上的位置 、 速度 以及 身体朝 向等 三个因素 , 上 的状 态数 量就 会很 多 , 场 如果再 加
张 家旺 , 光胜 , 伟 韩 张
( 北京工业大学 电子信息 与控制工程学 院, 北京 10 2 0 0 2) 摘要: 针对 于 R b C p比赛 中出现 的传 球精 度不 够 准确 的问题 , oou 通过 对决 策树 学 习方 法的探 讨 , 文 提 出了一 种用 于 该 R b C p 真球队中 A e t oo u 仿 gn 学习传球技能的一种决策树方 法。 C . 即I 3 将 5 0 D 的改进算法应用到 A e t g n传球能力 的训练 中, 它 使得 A e t g n 能够根据场上的具体情况 , 把球成功传给 队友。 gn 在得 到球 的控制权之后 , Aet 首先确定传球成功率最大的球 员, 然后并不直接执行传球 的动作 , 而是调整 A e t gn 自身的准备动作以达到传 球的最佳状态 , 最后进行传球 的行为 。 真结果 表 仿 明, 该方法有效地提高 了 A e t gn 的传球能 力。 关键词 : 策树 ; 器人世 界杯足球锦标赛 ; 决 机 传球
ABS TRACT : e l a n n t o s b s d o c so r e a e d s u s d i r e o s l e t e p o l m h t Th e r i g me h d a e n De ii n T e r i c s e n o d r t o v h r b e t a p s i g b l i b Cu a s i o r c s .A r i i g a g rt m o e“ a s n a l i t ”o e a e t n a sn a l n Ro o p g me s n tp e ie ta n n l o h f rt i h P s i g B l y ft g n si l Ab i h t e Ro o p S mu ao e g e i r s n e n t i a e . I ma e g n s d tr i e t a a sn a lt ih h b Cu i l t rL a u s p e e t d i h s p p r t k s a e t ee m n h t p s i g b o wh c l ta e mmae i t e b s c o c c o d n o t e c r e t sa u n t e fed W h n a e t h s c n r l d b l a d t s h e t h ie a c r i g t h u r n tt s i h l . i e g n a o t l a n o e l
基于C5.0算法的森林资源变化检测方法研究——以山东省徂徕山林区为例

时相 图像 加 上邻 近 相 关 分析 图像 作 为数 据 源 训 练 规 则 , 生成 变化 检 测 图。试 验 结 果 表 明 , 于 基
C . 算法 的 决策树 分类 可 以有 效 的进行 森林 变化 检 测 , 5O 并且 加入 邻 近 相 关分析 图像后 的 变化检 测
精度 达到 最 高 。
W ANG Zhih .LI S — i .ZH ANG — i — ui him ng Yiwe
( . n t u e f Fo et su csI f r t n T c n q e ,C i ee a e f Fo ety,B ii g l 0 9 ,C ia 1 I si t o d my o rsr t o e n 0 0 1 hn j
b s d on C5. l ort a e 0 a g ihm o f r s ha e de e to s a ple . Th e if r nt d t c i n me h s t o e t c ng t c i n wa p i d r e d fe e e e to t od we e r
林、 阔叶林 等森 林 资源 的 变化 进 行 研 究 。将 基 于 C . 算 法 的 决 策 树 分 类 方 法 应 用 于 森林 变化 检 50 测 , 对 3种检 测方 案进行 试验 比较 : 1 以单 一 时相 图像作 为数 据 源并各 自分 类 , 类后 作 比较提 并 () 分
取 变 化 信 息 ;2 以 两 时 相 图 像 的 原 始 波 段 数 据 作 为 数 据 源 训 练 规 则 , 生 成 变 化 检 测 图 ; 3 以 两 () 并 ()
16 8
西 北 林 学 院 学 报
消 长交 替 的动 态过 程 之 中 。所 以 , 林 的管 理 者 总 森
《决策树与随机森林》课件

交叉验证
使用交叉验证来评估模型的泛化能力,以避 免过拟合。
随机森林的参数调整
1 2
决策树数量
调整决策树的数量,以找到最优的模型性能。
特征子集大小
调整在每一步分裂中选择的特征子集大小,以找 到最优的模型性能。
3
决策树深度
调整决策树的深度限制,以防止过拟合或欠拟合 。
05
决策树与随机森林的应用场景
分类问题
THANKS
感谢观看
随机森林的优缺点
可解释性强
每棵决策树都可以单独解释,有助于理解模型的工作原理。
鲁棒
对异常值和噪声具有较强的鲁棒性。
随机森林的优缺点
对参数敏感
随机森林中的参数如树的数量、特征选择比例等对模型性能影响较大。
可能产生过拟合
当数据集较小或特征过多时,随机森林可能产生过拟合。
04
随机森林算法
随机森林的生成
决策树的基本原理
特征选择
选择最能划分数据集的特征进行分裂,以减少决 策树的深度和复杂度。
剪枝
通过去除部分分支来降低过拟合的风险,提高模 型的泛化能力。
决策规则
将每个叶子节点映射到一个类别或值,根据该节 点所属类别或值进行预测。
决策树的优缺点
优点
易于理解和解释,分类效果好,对异常值和缺失值容忍度高 。
在构建每棵决策树时,随 机选择一部分特征进行划 分,增加模型的泛化能力 。
多样性
通过生成多棵决策树,增 加模型的多样性,降低过 拟合的风险。
集成学习
将多棵决策树的预测结果 进行汇总,利用投票等方 式决定最终输出,提高分 类任务的准确率。
随机森林的优缺点
高效
能够处理大规模数据集,计算效率高 。
决策树算法的使用方法和优化技巧

决策树算法的使用方法和优化技巧决策树算法是一种可用于解决分类和回归问题的机器学习算法。
通过树状结构的决策流程,它能够对不同的输入变量进行分类或预测输出值。
本文将介绍决策树算法的基本使用方法,并探讨一些优化技巧,以提高算法的性能和准确度。
一、决策树算法的基本使用方法1. 数据准备和处理:在使用决策树算法之前,需要进行数据的准备和处理。
首先,需要对数据集进行清洗,处理丢失的数据、异常值和重复值。
然后,将数据集拆分为训练集和测试集,用训练集来构建决策树模型,并使用测试集来评估模型的性能。
2. 特征选择和划分:特征选择是决策树算法中一个重要的步骤。
在选择特征时,我们需要考虑特征的信息增益或基尼指数,以确定哪个特征对分类问题更加重要。
然后,根据选择的特征,将数据集划分为不同的分支节点。
3. 构建决策树模型:在构建决策树模型时,可采用递归的方式进行。
例如,使用ID3、C4.5或CART算法来生成决策树。
在递归过程中,根据选择的特征和划分的数据集,不断生成新的节点和分支,直到满足停止条件为止。
4. 决策树的剪枝:为了防止决策树过拟合训练数据,需要进行决策树的剪枝。
剪枝可以通过预剪枝或后剪枝来实现。
预剪枝是在构建决策树时,根据一定的规则进行剪枝,例如限制决策树的最大深度或节点数目。
后剪枝是先构建完整的决策树,然后根据交叉验证的结果进行剪枝。
5. 决策树模型的评估:为了评估决策树模型的性能,可以使用一些指标,例如准确度、精确度、召回率和F1值。
这些指标可以帮助我们了解模型对不同类别的分类能力,并选择最合适的模型。
二、决策树算法的优化技巧1. 特征工程:特征工程是提高决策树算法性能的关键一步。
通过对原始特征进行变换、组合、删除或添加新的特征,可以提高决策树模型的表达能力。
例如,可以利用二值化、标准化、one-hot编码等技术对特征进行处理,以便更好地适应决策树算法的要求。
2. 处理缺失值:决策树算法通常能够处理缺失值。
决策树

预修剪技术
预修剪的最直接的方法是事先指定决策树生长的最 大深度, 使决策树不能得到充分生长。 目前, 许多数据挖掘软件中都采用了这种解决方案, 设置了接受相应参数值的接口。但这种方法要求 用户对数据项的取值分布有较为清晰的把握, 并且 需对各种参数值进行反复尝试, 否则便无法给出一 个较为合理的最大树深度值。如果树深度过浅, 则 会过于限制决策树的生长, 使决策树的代表性过于 一般, 同样也无法实现对新数据的准确分类或预测。
决策树的修剪
决策树学习的常见问题(3)
处理缺少属性值的训练样例 处理不同代价的属性
决策树的优点
可以生成可以理解的规则; 计算量相对来说不是很大; 可以处理连续和离散字段; 决策树可以清晰的显示哪些字段比较重要
C4.5 对ID3 的另一大改进就是解决了训练数据中连续属性的处 理问题。而ID3算法能处理的对象属性只能是具有离散值的 数据。 C4.5中对连续属性的处理采用了一种二值离散的方法,具体 来说就是对某个连续属性A,找到一个最佳阈值T,根据A 的取值与阈值的比较结果,建立两个分支A<=T (左枝)和 A>=T (右枝),T为分割点。从而用一个二值离散属性A (只 有两种取值A<=T、A>=T)替代A,将问题又归为离散属性的 处理。这一方法既可以解决连续属性问题,又可以找到最 佳分割点,同时就解决了人工试验寻找最佳阈值的问题。
简介
决策树算法是建立在信息论的基础之上的 是应用最广的归纳推理算法之一 一种逼近离散值目标函数的方法 对噪声数据有很好的健壮性且能学习析取(命题 逻辑公式)表达式
信息系统
决策树把客观世界或对象世界抽象为一个 信息系统(Information System),也称属性--------值系统。 一个信息系统S是一个四元组: S=(U, A, V, f)
决策树(详细易懂,很多例子)
No
Married 80K
?
10
NO
MarSt
Single, Divorced
Married
< 80K
TaxInc
NO > 80K
NO
YES
Apply Model to Test Data
Refund
Yes
No
Test Data
Refund Marital Taxable Status Income Cheat
fm (x) : x j wm0
其中 wm0 是适当选择阈值。该决策节点将输入空间一份
为二:Lm x | x j wm0 和
,称为一个二元
划分。
决策树根据所选取的属性是数值型还是离散型,每次将 数据划分成两个或n个子集。然后使用对应的子集递归地 进行划分,直到不需要划分,此时,创建一个树叶节点标
//一个划分 (11)if si为空 then (12)加上一个叶结点,标记为标记samples中最普通的类;
No
Married 80K
?
10
NO
MarSt
Single, Divorced
Married
< 80K
TaxInc
NO > 80K
NO
YES
Apply Model to Test Data
Refund
Yes
No
Test Data
Refund Marital Taxable Status Income Cheat
information gain)
▪ 停止分割的条件
一个节点上的数据都是属于同一个类别 没有属性可以再用于对数据进行分割
算法:Generate_decision_tree由给定的训练数据产生一棵决策树 输入:训练数据集samples,用离散值属性表示;候选属性的集合attribute_list。 输出:一棵决策树 方法: (1)创建结点N; (2)if samples 都在同一个类C then (3)返回N作为叶结点,用类C标记; (4)if attribute_list 为空 then (5)返回N作为叶结点,标记samples中最普通的类;
基于信息增益的决策树
基于信息增益的决策树信息增益(information gain)是数据挖掘中一种用于构建决策树的重要指标。
基于信息增益构建的决策树能够有效地帮助我们理解数据集,并做出正确的分类和预测。
在这篇文章中,我们将详细探讨基于信息增益的决策树算法,包括算法原理、实现步骤以及优缺点等内容。
一、算法原理信息增益是基于信息论的度量,用于衡量在知道一个特征值的情况下,对分类的不确定性减少量。
信息增益越大,说明使用这个特征进行划分可以让我们获得更多的信息,从而更好地进行分类。
1.根据给定的数据集,计算每个特征的信息增益。
2.选择信息增益最大的特征作为当前节点进行划分。
3.递归地对每个子节点重复上述步骤,直到所有样本都被正确分类或者达到预设的停止条件。
在计算信息增益时,我们需要用到熵(entropy)这一概念。
熵是表示数据的不确定性的度量,熵越大,数据的不确定性越高。
在决策树算法中,我们希望通过选择特征进行划分,让数据集的熵最小化,从而实现更好的分类效果。
具体而言,计算信息增益的步骤如下:1.计算整个数据集的熵。
2.对每个特征值进行划分,并计算每个划分的熵。
3.计算信息增益,即整个数据集的熵减去每个特征值划分后的熵之和。
信息增益的计算公式如下:信息增益=整个数据集的熵-每个特征值划分后的熵之和。
二、实现步骤1.构建决策树的节点结构,包括特征名称、特征值、子节点等信息。
2.根据给定的数据集计算整个数据集的熵。
3.对每个特征值进行划分,计算每个划分的熵。
4.计算信息增益,选择信息增益最大的特征作为当前节点进行划分。
5.递归地对每个子节点重复上述步骤,直到所有样本都被正确分类或者达到停止条件。
6.构建完整的决策树模型。
在实现决策树算法时,我们可以使用递归的方式构建决策树节点,并在每次划分节点时选择信息增益最大的特征进行划分。
通过不断重复这一过程,我们可以构建出一个完整的决策树模型,用于分类和预测数据。
三、优缺点1.稳定性好:信息增益是一种稳定的指标,能够有效地对数据集进行分类。
C4_5算法在保险客户流失分析中的应用
年龄 文化
转化后客户信息表
职业 险种 是否失效 (有效) ! (有效) ! (失效) " (中止) # (失效) " (有效) ! 总数
年收入
’( ’! ’% ’! ’(
)( )( )! )! )% )!
*+ *( *! *! *% *#
,% ,! ,! ,( ,% ,+ $$$
/ / 0 1ຫໍສະໝຸດ . # ( ! ( +A34B,0C5: ;GDA>5CL ;BGL= 6=68QD7D, 7=DGL6=;C , ’,$# 689>L7AB5, EC;7D7>= ALCCD, 6AAL7ZGAC->L7C=ACE 7=EG;A7>=
随 着 我 国 加 入 ./0 后 , 我 国 保 险 市 场 将 逐 步 对 外 开 放 , 保险市场的竞争将更加激烈。 客户是保险公司生存和发展的根 基, 而吸引客户、 保持客户、 避免客户流失是保险公司提高竞争 力的关键。 数据挖掘在保险领域有着广泛的应用, 通过挖掘, 可 发现购买某一保险险种的客户的特征, 从而可以向那些具有同 样特征却没有购买该保险险种的客户进行推销; 还可找到流失 客户的特征, 在那些具有相似特征的客户还未流失之前, 采取 针对性的措施避免客户的流失。 论文利 用 数 据 挖 掘 中 的 面 向 属 性 归 纳 和 分 类 决 策 树 ’,$# 算法, 对保险公司的客户基本信息进行分析, 找出了客户流失 的特征, 可帮助保险公司有针对性地改善客户关系, 避免客户 流失。 推断隐藏在项目之间的相互关联的规则。 分类是按照一组数据 对象的特征给出其划分的过程, 要求有已知分类的样本数据作 为训练集, 经过对训练集的学习得到关于分类的规律, 从而对 新数据进行分类。 聚类是利用聚类技术识别一组数据对象的内 在规则, 将对象聚合成相似的类, 以导出数据的分布规律。 聚类 与分类的差别在于它不需要训练样本,是一种无监督的学习。 序列模式的目的也是为了挖掘数据之间的联系, 但它主要关注 于分析挖掘和时间顺序相关的模式。 利用决策树方法进行数据挖掘, 一般有如下步骤: 数据预 处理、 决策树挖掘操作, 模式评估和应用。
决策树算法的比较研究
4 决策树构造 C R 算法实现 - 2 AT 设 D 表 41 是 — 的训练数据 , 其中 9 个元组属 于类 p y ys 而其余 5 1 = e, a 个元组属于类 p yn。首先计算 D l =o a 的不纯度 GnD=一9 4 一 / ) i()l(1) ( 1 i / 5 = 4
对| 集D 元组分 所需的 望信息Io )一 羔Pl2 J I I 中 练 类 期 n( = : gp , fD o ()
基 于 按 属 性 A划 分 对 D的元 组 分 类所 需 要 的 期 望 信 息 I o = n( f D)
『 D
… I l
×, D ) j7 j 。信息增益定义 为原来 的信息需求 与新的需 求( 2 即
8 9 1 0 1 1 1 2 1 3 1 4
Sn y u n O e c s V ra t o e c s v ra t
8 5 8 3 7 2 8 0 7 1
8 5 8 6 9 0 9 0 9 1 9 5 9 6
F ALS E F ALS E TRUE TRUE TRUE F S AL E F S AL E
I D
1
o t o ul k o
o e c s v rat
t mp r t r e e au e
5 4
h mi i u dt y
6 5
wi d ny
T RUE
2
3 4
rlv an
6 5
6 9
7 0
7 0 7 0
T RUE
FAL E S T RUE
对属性 A 划分 之后得 到的) 间的差 即 G i A = n ( 一 no ( 。 之 a () I o n f D) I A D) f C . 使 用 分 裂 信 息 值 将 信 息 增 益 规 范 化 , [l o ( ) 4 5 in A D = tf
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
C4.5算法生成决策树 1、基础知识 当我们需要对一个随机事件的概率分布进行预测时,我们的预测应当满足全部已知的条件,而对未知的情况不要做任何主观假设。在这种情况下,概率分布最均匀,预测的风险最小。因为这时概率分布的信息熵最大,所以称之为“大熵法”最大熵法在数学形式上很漂亮,但是实现起来比较复杂,但把它运用于金融领域的诱惑也比较大,比如说决定股票涨落的因素可能有几十甚至上百种,而最大熵方法恰恰能找到一个同时满足成千上万种不同条件的模型。 目前,针对分类问题已有了若干不同领域方法的算法,例如统计学、机器学习、神经网络和粗糙集理论等。其中从机器学习中引出的决策树方法是一种较为通用并被深入研究的分类方法,由于决策树分类算法是一种直观快速的分类方法,它的分类过程不需要背景知识、并且清晰、易于理解,因此有很大的实用价值。目前已经形成了多种决策树算法。如CLS、ID3、CHAID、CART、FACT、C4.5、Gini、SEE5、SLIQ、SPRINT等。 在决策树分类算法中,最常用的、最经典的是C4.5算法,它继承了ID3算法的优点并对ID3算法进行了改进和补充。C4.5算法采用信息增益率作为选择分支属性的标准,克服了ID3算法中信息增益选择属性时偏向选择取值多的属性的不足,并能够完成对连续属性离散化的处理,还能够对不完整数据进行处理。根据分割方法的不同,目前决策的算法可以分为两类:基于信息论(Information Theory)的方法和最小GINI指标(Lowest GINI index)方法。对应前者的算法有ID3、C4.5,后者的有CART、SLIQ和SPRINT。 C4.5算法是以信息论为基础,以信息熵和信息增益度为衡量标准,从而实现对数据的归纳分类。 2、算法 以下图数据为例,介绍用C4.5建立决策树的算法。 表1
ID3算法最初假定属性都是离散值,但在实际应用中,很多属性值都是连续的。C4.5对ID3不能处理连续型属性的缺点进行了改进。如果存在连续型的描述性属性,首先将连续型属性的值分成不同的区间,即“离散化”。 对上表中将实际耗电量分为10个区间(0—9) (300~320,320~340,340~360,360~380,380~400,400~420,420~440,440~460,460~480,480~500) 因为最终是要得到实际的耗电量区间,因此“实际耗电量”属于“类别属性”。“室外温
度”、“室内温度”、“室外湿度”、“风力大小”、“机房楼层”、“机房朝向”、“机房开启设备总额定功率”属于“非类别属性”。 表2
室外温度 室内温度 室外湿度 风力大小 机房楼层 机房朝向(0:阴,1:阳) 机房开启设备总额定功率(千瓦) 23 17 65 4 1 0 500 24 17 62 2 2 1 450 27 18 60 3 -1 0 300 24 19 58 3 2 0 300 25 18 52 2 1 1 450 26 18 50 5 -1 1 500 30 19 45 2 2 1 450 28 18 43 3 1 0 450 27 18 48 3 -1 0 500 29 18 40 4 1 0 500
室外温度 室内温度 室外湿度 风力大小 机房楼层 机房朝向(0:阴,1:阳) 机房开启设备总额定功率(千瓦) 实际耗电量 (区间) 23 17 65 4 1 0 500 5 24 17 62 2 2 1 450 7 27 18 60 3 -1 0 300 0 24 19 58 3 2 0 300 0 25 18 52 2 1 1 450 5 26 18 50 5 -1 1 500 4 通过表2知,实际耗电量区间的个数为: 表3 序号 区间值 个数 1 0 2 2 4 1 3 5 3 4 6 1 5 7 2 6 9 1 总计 10
定义1:若存在n个相同概率的消息(Massage),则每个消息的概率p是1/n,一个消息传递的信息量为22log()log()pn。若有16个事件,则2log(16)4,则需4个比特来代表一个消息。 例如:表3中,区间为0的信息量为:22log2/10log10=3.322
定义2:若给定的概率分布12,,npppp,则由该分布传递的信息量称为P的熵。即 1212222log()log()log()nnIPpppppp
注意:概率分布越均匀,其信息量越大)。
定义3:若一个记录的集合T根据类别属性的值被分成互相独立的类12,,,kCCC则识别T的一个元素所属哪个类所需要的信息量是infoTIP,其中P是12,,kCCC的概率分布,即 12||/||,||/||,||/||,KPCTCTCT
例如:表3中,得到实际耗电量区间的信息量为(以下单位为比特,下同): 222
222
2/10log(2/10)1/10log(1/10)3/10log(3/10)()1/10log(1/10)2/10log(2/10)1/10log(1/10)InfoTIP
=2.446
30 19 45 2 2 1 450 9 28 18 43 3 1 0 450 6 27 18 48 3 -1 0 500 5 29 18 40 4 1 0 500 7 非类别属性 类别属性 定义4:若我们先根据非类别属性X的值将T分成集合12,,nTTT,则确定T中一个元素类的信息量可通过确定iT的加权平均值来得到,即Info(iT)的加权平均值为: 1,||/||niiiInfoXTTTINFOT
例如:属性“室内温度”的值有“17、18、19”,分类见下表: 表4 序号 室内温度 个数 所属的区间(个数 1 17 2 5(1) 7(1) 2 18 6 0(1) 4(1) 5(2) 6(1) 7(1) 3 19 2 0(1) 9(1) 总计 10
P(17)=(1/2,1/2) P(18)=(1/6,1/6,2/6,1/6,1/6) P(19)=(1/2,1/2) 则每个温度的信息量为:
22(17)171/2*log(1/2)1/2*log(1/2)InfoIP=1.000
222
22
1/6*log(1/6)1/6*log(1/6)2/6*log(2/6)(18)181/6*log(1/6)1/6*log(1/6)InfoIP
=2.252
22(19)191/2*log(1/2)1/2*log(1/2)InfoIP=1.000
2/10(17)6/10(18)2/10(19)(,)InfoInfoInInffooT室内温度=1.751
定义5:将增益Gain(X,T)定义为: 。所谓增益,就是指在应用了某一测试之后,其对应的可能性丰富程度下降,不确定性减小,这个减小的幅度就是增益,其实质上对
应着分类带来的好处)。 上式的增益值为:,,GainXTInfoTInfoT室内温度=2.446-1.751=0.695 以上是ID3计算信息增益的方法,C4.5算法对此进行了改进。C4.5算法采用信息增益率作为选择分支属性的标准,克服了ID3算法中信息增益选择属性时偏向选择取值多的属性的不足。若我们一个属性D,据其取值将T分成集合T1、T2……Tn,当每一个集合中所有记录得出的结果相同,即同时取值为“是”或“否”时,Info(D,T) 为0,此时增益Gain(D,T)取最大值。因此用增益比值来代替,即: (,)(,)(,)GainDTGainRatioDTSplitInfoDT
由于T是以类型属性D的值为基准进行的分割,故SplitInfo(D,T) 是信息量。 举例:根据表4,得到:
222,2/10*log(2/10)6/10*log(6/10)2/10*log(2/10)SplitInfoT室内温度
=1.371,则(,)GainRatioDT0.695/1.371=0.507 可利用函数Gain的定义将属性进行排列,并可构造一棵决策树,其中每一个节点都是属性中具有最大增益的属性,从而不必考虑来自于根的路径。 3、选择连续变量的阈值(测试条件) 到连续数据的分支的阈值点如何确定呢?很简单,把需要处理的样本(对应根节点)或样本子集(对应子树)按照连续变量的大小从小到大进行排序,假设该属性对应的不同的属性值一共有N个,那么总共有N-1个可能的候选分割阈值点,每个候选的分割阈值点的值为上述排序后的属性值链表中两两前后连续元素的中点,那么我们的任务就是从这个N-1个候选分割阈值点中选出一个,使得前面提到的信息论标准最大。在EXCEL中,对室外温度(第二步)详细介绍了如何分割阈值点并进行计算。 4、树的终止 树的建立实际上是一个递归过程,那么这个递归什么时候到达终止条件退出递归呢?有两种方式,第一种方式是如果某一节点的分支所覆盖的样本都属于同一类的时候,那么递归