连续值的离散化

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

。 H 0 :同一列中所有的概率相等(即对任意的 j, p1 j p2 j prj ) 每列中至少存在两个概率不相等 (即给定 j, 存在 i 和 k, 使得 pij pkj ) H1 : 检验统计量:给定的检验统计量 2 为:

2 i, j
(Oij eij ) 2 eij
由图 5 我们可以看出,最大卡方值出现在数据 126.5 处。所以可以在此断点 处进行第二次分裂,将数据集分为 3 个小区间。 接下来面临的问题是:我们在什么时候停止分裂? 4.2 卡方分裂算法停止准则 对于何时停止卡方分裂的问题,我们有如下停止准则: 当卡方检验显著(即 p-值 )时,继续分裂区间; 当卡方检验不显著(即 p-值 )时,停止分裂区间。 5、卡方合并算法及停止准则 5.1 卡方合并算法(自下而上的合并) 合并算法是把属性的每一个属性值当做一个离散的属性值,然后逐个反复合
图 4 依次插入一个断点的 A、B、C 三种类型葡萄酒酒精含量数据
由图 4 可以看到,最大卡方值出现在数据 129 处, 2 25.0 ,所以我们选择 数据 129 处作为第一次分裂的断点。 然后类似地,可以进行第二次分裂。如图 5 所示:
图 5 依次插入第二个断点的 A、B、C 三种类型葡萄酒酒精含量数据
,
其中, eij
ni C j N
(4)
零分布: 2 的零分布是渐近自由度为 (r 1)(c 1) 的卡方分布。在近似水平 下 的临界域对应于 2 值大于 X1 ,这里 X1 是自由度为 (r 1)(c 1) 的卡方分布的
1 分位数。当 2 值大于 X1 时,拒绝原假设 H 0 ,否则,接受 H 0 。
连续值的离散化
许文烈 成均馆大学 1、为什么要进行离散化? 1.1 什么是连续属性离散化 连续属性的离散化就是在特定的连续属性的值域范围内设定若干个离散化 的划分点, 将属性的值域范围划分为一些离散化区间,最后用不同的符号或整数 值代表落在每个子区间中的属性值。对连续属性的离散化过程,从本质上来看, 就是利用选取的断点来对条件属性构成的空间进行划分的过程。 1.2 连续属性离散化的目的 连续值离散化的目的是为了简化数据结构。 数据通常有这样几种类型:标称型,离散型和连续型。现实生活中的数据往 往来源于复合型, 例如许多数据是数值型与离散型的复合。这就需要有一个统一 的数据类型来进行数据处理。 通过将属性值域划分为区间,数据离散化技术可以用来减少给定连续属性值 的个数。离散属性比连续属性更接近于知识级的表达。对用户和专家而言,离散 属性更易理解、使用和解释。 离散化方法经常作为数据挖掘的工具,而使用离散属性所获得的结果(决策 树、归纳法则)往往更紧凑、简短和精确因此其结果也更易被检查、比较、使用 和重用。 除此之外,一些分类学习算法只能处理离散值。离散化是一干连续属性的量 化的过程, 能显著地扩展许多学习算法的应用范围。 常见的正态假设是连续变量, 离散化减少了对于分布假设的依赖性,因此离散数据有时更有效。 1.3 离散化技术分类 离散化技术可以根据如何进行离散化加以分类,如根据是否使用类信息或根 据进行方向(即自顶向下或自底向上)分类。如果离散化过程使用类信息,则称它 为监督离散化(supervised discretization);否则是非监督的(unsupervised)。 如果首先找出一点或几个点(称作分裂点或割点)来划分整个属性区间, 然后在结 果区间上递归地重复这一过程, 则称它为自顶向下离散化或分裂。自底向上离散 化或合并正好相反, 首先将所有的连续值看作可能的分裂点,通过合并相邻域的 值形成区间, 然后递归地应用这一过程于结果区间。下面对这些离散化算法给出 具体介绍。 2、无监督离散化与监督离散化 根据数据是否包含类别信息可以把它们分成有监督的数据和无监督的数据。 有监督的离散化要考虑类别信息而无监督的离散化则不需要。 无监督离散化方法在离散过程中不考虑类别属性,其输入数据集仅含有待离 散化属性的值。 早期的离散化方法如等频率、等宽度离散化等主要是无监督的离 散化方法。 监督离散化方法是把类别信息带到离散化的过程,其研究主要是围绕量化过 程中所使用的评价函数和终止条件而展开的。 2.1 无监督离散化 已知 X 的值而未知 Y 的值,可以进行聚类。
计算可得 2 8.1 ,自由度为 1,p-值小于 0.005,故拒绝原假设,可以认为 男女人群抽烟比例存在显著差异。 而对于另一个抽样样本, 2 2 列联表如下所示:
计算可得 2 0 ,自由度为 1,p-值等于 1,故接受原假设,可以认为男女 人群抽烟比例不存在显著差异。 4、卡方分裂算法(自上而下)及停止准则 4.1 卡方分裂算法(自上而下的分裂) 分裂算法是把整个属性值区间当做一个离散的属性值,然后对该区间进行划 分,一般是一分为二,即把一个区间分为两个相邻的区间,每个区间对应一个离 散的属性值,该划分可以一直进行下去,直到满足某种停止条件,其关键是划分 点的选取。 例 5:继续以例 3 中葡萄酒酒精含量数据作为数据集进行分析。 首先在数据 121 处插入一个断点,如图 3 所示:
ni Oi1 Oi 2 Oic
将数据排列成以下 r c 列联表中:
类1 总体 1 总体 2

对所有的i

(1)
类c O1c
O2c

类2
O12
O11 O21

总和 n1
n2

O22



总体 r 总和
Or1
C1
Or1
C2
Orc
Cc
nr
N

所有样本的观察总数记做 N 。
N n1 n2 nr
极限表示保证合并两个区间的最大的 值。 设。 合并过程受到 极限的控制,
2 2 2
对于随机数据,应该设定一个非常高的极限,以避免产生过多的分区。该算法的 缺陷在于每次循环只能合并两个区间,当样本集比较大时离散化速度较慢。 例 6:继续以例 3 中葡萄酒酒精含量数据作为数据集进行分析。 首先在所有可能的断点处插入断点,将数据集划分为若干个小的子区间,具 体操作如下图所示:
图 1 A、B、C 三种类型葡萄酒酒精含量数据
注意到横坐标的数据是不连贯的离散的整数,这就为断点的初步选取提供了 空间。断点的初步选取在图 2 中可见:
图 2 插入断点的 A、B、C 三种类型葡萄酒酒精含量数据
这时,很自然的就会产生一个问题,为了利用初步选取的断点,是采用合并 算法还是分裂算法? 3、齐次性的卡方检验 数据:共有 r 个总体,从每个总体中抽取一个随机变量。记第 i 个样本含有的观 测数为 ni , 1 i r 。每个样本的每个观测可以归为 c 个不同类的一类。记 Oij 为 样本 i 的观测归入类 j 的数目,所以,
(2)
第 j 列中的观测数记做 C j ,即 C j 使所有样本在第 j 列中的观测总数。
C j O1 j O2 j Orj
对j 1,2,, c
(3)
i 1,2,, r , j 1,2,, c 。 假设: 记 pij 为随机取到第 i 个总体划分为第 j 类的概率,
并相邻的属性值,直到满足某种停止条件。合并算法的关键有两个要素:一个是 如何确定应该合并的相邻区间,二是最终的停止判断。 卡方合并系统提供了一种统计合理的启发式有监督离散化算法。算法初始时 将每个观察到的数据放到自己的区域中,然后考察 来决定临近区域是否需要
2
合并。 这种方法通过产生期望密度的经验估计来验证两个相邻区间是不相关的假
图 3 插入一个断点的 A、B、C 三种类型葡萄酒酒精含量数据
对其进行卡方检验,列联表如下所示:
计算得到 2 9.4 ,自由度为 2,p-值约为 0.01,故可以拒绝原假设,即三 种不同类型的葡萄酒 A、B、C 在酒精含量方面存在显著差异。 依次在数据中插入一个断点,分பைடு நூலகம்计算插入一个断点时的 2 ,如图 4 所示:
图 6 一次性插入多个断点的 A、B、C 三种类型葡萄酒酒精含量数据
在合并相邻区间的时候,我们面临着一个问题:如何选择第一次合并的区 间?
在如何选择适当的合并区间时,我们依旧采用卡方检验的方法。 首先分别计算在每一个断点处合并相邻区间时的卡方值,考察卡方值来决定 临近区域是否需要合并。具体计算结果如下图所示:
p-值是自由度为 (r 1)(c 1) 的卡方分布随机变量大于 2 的概率,即
p 值 PH0 { 2 tobs } 。当 p-值小于 时,拒绝原假设 H 0 ,否则,接受 H 0 。
例 4:从男女人群中随机抽样,来检验男女人群抽烟比例是否存在差异性。 2 2 列联表如下所示:
图 7 多个断点处计算卡方值的 A、B、C 三种类型葡萄酒酒精含量数据
由上图可知,卡方值在断点 122.5 处最小,于是我们选取此断点的两个邻近 区间进行第一次合并,即合并两个小区间 [121,122.5),[122.5,126.5) 为一个区间
{[121,126 .5)} 。
依次类推,可以继续进行下一次合并,直到满足某停止准则为止。 5.2 卡方合并算法停止准则 对于何时停止卡方合并的问题,我们有如下停止准则: 当卡方检验不显著(即 p-值 )时,继续合并相邻区间: 当卡方检验显著(即 p-值 )时,停止合并。 当然,还有其它一些停止准则可供参考,例如当 X 相同,Y 不同的时候,产 生矛盾,可以停止合并。 6、合并算法与分裂算法之比较 自下而上的合并算法:即是将首先将属性的所有的连续值作为分裂点的集 合,然后通过不断的合并区间删除其中的一些子区间。 ChiMerge 算法首先由 Kerber 于 1992 年提出,随后又改进为卡方算法;其后 由 Tay 和 Shen 提出了修正的卡方算法;后又于 2008 年提出了扩展的卡方算法。 自上而下的分裂算法:即开始时定义一个空的分裂点的集合,然后在离散化 过程中通过分裂区间不断地向集合中添加新的分裂点。 Kurgan 于 2003 年提出了 CAIM,其后又提出了 CACC,又有人于 2008 年提出 了 ameva。 7、信息增益分裂算法 7.1 信息的增益 对于信息 X, I ( X ) E[log
例 1:现有 94 名学生的数学期末成绩,由于数据不包含类别信息,可以利用 无监督的离散化方法进行分析。 常用的无监督离散化方法有:等频算法、等宽算法和(一维)聚类。 等宽算法是最简单的无监管离散化方法,它根据用户指定的区间数目 K ,将 数值属性的值域 [ X min , X max ] 划分为 K 个区间,并使每个区间宽度相等,即都等 于 ( X max X min ) / K 。但是,当存在对于区域来说偏斜极为严重的点时,这种离散 化的方法是不适用的。 等频算法也是将数值属性的值域划分为 K 个小区间,K 同样是用户自定义的 区间数目。 等频算法与等宽算法的不同之处在于, 它不是要求每个区间宽度一样, 而是要求落在每个区间的对象数目相等,也就是说,如果属性的整个取值区间内 共有 M 个点,那么等频区间所划分的 K 个小区域内,每个区域含有 M / K 个邻 近值的点。 K-均值聚类是一种应用广泛的数据聚类算法。在用户指定了离散化产生的区 间数目 K 后,K-均值算法首先从数据集中随机找出 K 个数据作为 K 个初始区间 的重心;然后,根据这些重心的欧式距离,对所有的对象聚类:如果数据 x 距重 心 Gi 最近,则将 x 划归 Gi 所代表的那个区间;然后重新计算各区间的重心,并 利用新的重心重新聚类所有样本。逐步循环,直到所有区间的重心不再随算法循 环而改变为止。 2.2 监督离散化 已知 X 的值和 Y 的值,找到某个函数,利用 X 值对 Y 值做预测。可以建立 回归模型或者分类模型。 例 2:GDP 数据与生活满意程度的关系,由于数据包含类别信息,无监督离 散化方法不再适用,于是应该考虑监督离散方法。 例 3:对产自意大利同一地区的三种不同品种的葡萄酒 A,B 和 C 分别做化 学分析,以确定了三种类型葡萄酒的酒精含量,得到的分析结果作为数据集。详 细数据结果见图 1:
相关文档
最新文档