首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何计算昆兰C4.5算法中数值属性的阈值?

如何计算昆兰C4.5算法中数值属性的阈值?
EN

Stack Overflow用户
提问于 2013-04-19 04:25:37
回答 2查看 6.2K关注 0票数 5

我试图找出C4.5算法如何确定数值属性的阈值。我已经研究过,但我无法理解,在大多数地方,我发现这些信息:

首先根据考虑的属性Y的值对训练样本进行排序。这些值只有有限的数目,所以让我们将它们按排序顺序表示为{v1,v2,…。、vm}.位于vi和vi+1之间的任何阈值都具有相同的效果,即将情况划分为属性Y的值位于{v1、v2、…的情况下。,以及值为{vi+1、vi+2、…的、vm}.因此,在Y上只有m-1可能的分裂,所有这些都应该被系统地检查以获得一个最优的分裂。 通常选择每个区间的中点:(vi +vi+1)/2作为代表阈值。C4.5为每个区间{ vi,vi+1}选择一个较小的值vi,而不是中点本身。

我正在学习一个Play / not Play (价值表)的例子,并且不明白当状态是晴天时,如何得到属性湿度的数字75 (树生成),因为到阳光状态的湿度值​​是{70,85,90,95}。

有人知道吗?

EN

回答 2

Stack Overflow用户

发布于 2013-04-19 11:15:57

正如生成的树映像所暗示的那样,您将按顺序考虑属性。你的75个例子属于outlook =阳枝。如果您按照outlook = sunny对数据进行筛选,您将得到下表。

代码语言:javascript
复制
outlook temperature humidity    windy   play
sunny   69           70         FALSE   yes
sunny   75           70         TRUE    yes
sunny   85           85         FALSE   no
sunny   80           90         TRUE    no
sunny   72           95         FALSE   no

正如你所看到的,湿度的阈值是"< 75“。

j4.8是ID3算法的继承者。它利用信息增益和熵来决定最优分割。根据维基百科

代码语言:javascript
复制
The attribute with the smallest entropy 
is used to split the set on this iteration. 
The higher the entropy, 
the higher the potential to improve the classification here.
票数 4
EN

Stack Overflow用户

发布于 2016-01-25 04:47:48

我不完全确定J48,但假设它基于C4.5,它将计算所有可能的拆分的增益(即基于特性的可能值)。对于每一次分割,计算信息增益,选择信息增益最大的分割。在{70,85,90,95}的情况下,计算{70,85,90,95}对{70,85,90,95} vs {70,85,90,95}的信息增益,并选择最佳的信息增益。

昆兰关于C4.5的书是一个很好的起点(https://goo.gl/J2SsPf)。特别见第25页。

票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/16097189

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档