1、数据挖掘原理与实践蒋盛益答案数据挖掘原理与实践-蒋盛益-答案习题参考答案第 1 章绪论1.1 数据挖掘处理的对象有哪些?请从实际生活中举出至少三种。答:数据挖掘处理的对象是某一专业领域中积累的数据,对象既可以来自社会科学,又可以来自自然科学产生的数据,还可以是卫星观测得到的数据。数据形式和结构也各不相同,可以是传统的关系数据库,可以是面向对象的高级数据库系统,也可以是面向特殊应用的数据库,如空间数据库、时序数据库、文本数据库和多媒体数据库等,还可以是 Web 数据信息。实际生活的例子:电信行业中利用数据挖掘技术进行客户行为分析,包含客户通话记录、通话时间、所开通的服务等,据此进行客户群体划分以
2、及客户流失性分析。天文领域中利用决策树等数据挖掘方法对上百万天体数据进行分类与分析,帮助天文学家发现其他未知星体。类、分类、关联规则挖掘和离群点检测等技术为企业服务。答:(1) 使用聚类发现互联网中的不同群体,用于网络社区发现;第 2 页 共 27 页(2) 使用分类对客户进行等级划分,从而实施不同的服务;(3) 使用关联规则发现大型数据集中间存在的关系,用于推荐搜索。如大部分搜索了“广外”的人都会继续搜索“信息学院”,那么在搜索“广外”后会提示是否进进一步搜索“信息学院”。(4) 使用离群点挖掘发现与大部分对象不同的对象,用于分析针对网络的秘密收集信息的攻击。1.5 定义下列数据挖掘功能:关
3、联、分类、聚类、演变分析、离群点检测。使用你熟悉的生活中的数据,给出每种数据挖掘功能的例子。答:关联是指发现样本间或样本不同属性间的关联。例如,一个数据挖掘系统可能发现的关联规则为:maj or(X, “comput i ng sci ence”)owns(X, “personal comput er”) support =12%, conf i dence=98% 其中,X是一个表示学生的变量。该规则指出主修计算机科学并且拥有一台个人计算机的学生所占比例为 12%,同时,主修计算机专业的学生有 98%拥有个人计算机。分类是构造一系列能描述和区分数据类型或概念的模型(或功能),分类被用作预测目
4、标数据的类的标签。例如,通过对过去银行客户流失与未流失客户数据的分析,得到一个预测模型,预测新客户是否可能会流失。聚类是将数据划分为相似对象组的过程,使得同一组中对象相似度最大而不同组中对象相似度最小。例如,通过对某大型超市客户购物数据进行聚类,将客户聚类细分为低值客户、高值客户以及普通客户等。数据演变分析描述和模型化随时间变化的对象的规律或趋势,尽管这可能包括时间相关数据的特征化、区分、关联和相关分析、分类、或预测,这种分析的明确特征包括时间序列数据分析、序列或周期模式匹配、和基于相似性的数据分析 。离群点检测就是发现与众不同的数据。可用于发现金融领域的欺诈检测。1.6 根据你的观察,描述一
5、个可能的知识类型,它需要由数据挖掘方法发现,但本章未列出。它需要一种不同于本章列举的数据挖掘技术吗?答:建立一个局部的周期性作为一种新的知识类型,只要经过一段时间的偏移量在时间序列中重复发生,那么在这个知识类型中的模式是局部周期性的。需要一种新的数据挖掘技术解决这类问题。1.7 讨论下列每项活动是否是数据挖掘任务:(1)根据性别划分公司的顾客。(2)根据可赢利性划分公司的顾客。(3)计算公司的总销售额。(4)按学生的标识号对学生数据库排序。(5)预测掷一对骰子的结果。(6)使用历史记录预测某公司未来的股票价格。(7)监视病人心率的异常变化。(8)监视地震活动的地震波。(9)提取声波的频率。答:
6、 (1) 不是,这属于简单的数据库查询。(2) 不是,这个简单的会计计算;但是新客户的利润预测则属于数据挖掘任务。(3) 不是,还是简单的会计计算。第 3 页 共 27 页(4) 不是,这是简单的数据库查询。(5) 不是,由于每一面都是同等概率,则属于概率计算;如概率是不同等的,根据历史数据预测结果则更类似于数据挖掘任务。(6) 是,需要建立模型来预测股票价格,属于数据挖掘领域中的预测模型。可以使用回归来建模,或使用时间序列分析。(7) 是,需要建立正常心率行为模型,并预警非正常心率行为。这属于数据挖掘领域的异常检测。若有正常和非正常心率行为样本,则可以看作一个分类问题。(8) 是,需要建立与
7、地震活动相关的不同波形的模型,并预警波形活动。属于数据挖掘领域的分类。(9) 不是,属于信号处理。第 2 章数据处理基础2.1 将下列属性分类成二元的、分类的或连续的,并将它们分类成定性的(标称的或序数的)或定量的(区间的或比率的)。例子:年龄。回答:分类的、定量的、比率的。(a)用 AM 和 PM 表示的时间。(b)根据曝光表测出的亮度。(c)根据人的判断测出的亮度。(d)医院中的病人数。(e)书的 ISBN 号。(f)用每立方厘米表示的物质密度。答:(a)二元,定量,比率;(b)连续,定量 ,比率;(c)分类,定性,标称;(d)连续,定量,比率;(e)分类,定性,标称;(f)连续,定量,比
8、率。2.2 你能想象一种情况,标识号对于预测是有用的吗?答:学生的 I D号可以预测该学生的毕业日期。2.3 在现实世界的数据中,元组在某些属性上缺失值是常有的。请描述处理该问题的各种方法。答:处理遗漏值问题的策略有如下几种。(1) 删除数据对象或属性。一种简单而有效的策略是删除具有遗漏值的数据对象。然而,即使部分给定的数据对象也包含一些信息,并且,如果许多对象都有遗漏值,则很难甚至不可能进行可靠的分析。尽管如此,如果一个数据集只有少量的对象具有遗漏值,则忽略他们可能是合算的。一种相关的策略是删除具有遗漏值的属性。然而,做这件事要小心,因为被删除的属性可能对分析是至关重要的。(2) 估计遗漏值
9、。有时,遗漏值可以可靠地估计。例如,在考虑以较平滑的方式变化的具有少量但大大分散的遗漏值的时间序列,遗漏值可以使用其他值来估计(插值)。作为另一个例子,考虑一个具有许多相似数据点的数据集。在这种情况下,与具有遗漏值的点邻近的点的属性值常常可以用来估计遗漏的值。如果属性是连续的,则可以使用最近邻的平均属性值;如果属性是分类的,则可以取最近邻中最常出现的第 4 页 共 27 页属性值。(3) 在分析时忽略遗漏值。许多数据挖掘方法都可以修改,忽略遗漏值。例如。假定正在对数据对象聚类,需要计算数据对象间的相似性;如果对于某属性,两个对象之一或两个对象都有遗漏值,则可以仅使用没有遗漏值的属性来计算相似性
10、。当然,这种相似性只是紧邻的,但是除非整个属性数目很少,或者遗漏值的数量很大,否则这种误差影响不大。同样的,许多分类方法都可以修改,处理遗漏值。2.4 以下规范方法的值域是什么?(a) min-max 规范化。(b) z-score 规范化。(c) 小数定标规范化。答:(a) new_mi n, new_max ;(b)(-, + );(c)(-1. 0,1. 0)。2.5 假定用于分析的数据包含属性 age,数据元组中 age 的值如下(按递增序):13,15,16,16,19,20,20,21,22,22,25,25,25,25,30,33,33,33,35,35,35,35,36,40,
11、45,46,52,70。(a) 使用按箱平均值平滑对以上数据进行平滑,箱的深度为 3。解释你的步骤。评论对于给定的数据,该技术的效果。(b) 对于数据平滑,还有哪些其它方法?答:(a)已知数据元组中 age 的值如下(按递增序):13,15,16,16,19,20,20,21,22,22,25,25,25,25,30,33,33,33,35,35,35,35,36,40,45,46,52,70,且箱的深度为 3,划分为(等频)箱:箱 1:13,15,16箱 2:16,19,20箱 3:20,21,22箱 4:22,25,25箱 5:25,25,30箱 6:33,33,33箱 7:35,35,3
12、5箱 8:35,36,40箱 9:45,46,52箱 10:70用箱均值光滑:箱 1:15,15,15箱 2:18,18,18箱 3:21,21,21箱 4:24,24,24箱 5:27,27,37箱 6:33,33,33箱 7:35,35,35箱 8:37,37,37箱 9:48,48,48箱 10:70;第 5 页 共 27 页(b)对于数据平滑,其它方法有:(1)回归:可以用一个函数(如回归函数)拟合数据来光滑数据;(2)聚类:可以通过聚类检测离群点,将类似的值组织成群或簇。直观地,落在簇集合之外的值视为离群点。2.6 使用习题 2.5 给出的 age 数据,回答以下问题:(a) 使用
13、min-max 规范化,将 age 值 35 转换到0.0,1.0区间。(b) 使用 z-score 规范化转换 age 值 35,其中,age 的标准偏差为 12.94 年。(c) 使用小数定标规范化转换 age 值 35。(d) 指出对于给定的数据,你愿意使用哪种方法。陈述你的理由。答:(a)已知最大值为 70,最小值为 13,则可将 35 规范化为: 386. 013 - 7013 - 35= ;(b)已知均值为 30,标准差为 12.94,则可将 35 规范化为: 386 . 04 .9 1230 - 35= ;(c)使用小数定标规范化可将 35 规范化为: 35 . 010035=
14、;(d)对于给定的数据,你愿意使用 min-max 规范化。理由是计算简单。2.7 使用习题 2.5 给出的 age 数据(a) 画一个宽度为 10 的等宽的直方图。(b) 为以下每种抽样技术勾画例子:有放回简单随机抽样,无放回简单随机抽样,聚类抽样,分层抽样。使用大小为 5 的样本和层“青年”,“中年”和“老年”。答:(a)如下为宽度为 10 的等宽的直方图:(b)已知样本大小为 5 和层“青年”,“中年”和“老年”,(1)有放回简单随机抽样:30,33,30,25,30(2)无放回简单随机抽样:30,33,33,35,25(3)聚类抽样:16,25,33,35,46(4)分层抽样:25,3
15、5,522.8 以下是一个商场所销售商品的价格清单(按递增顺序排列,括号中的数表示前面数字出现次数)1(2)、5(5)、8(2)、10(4)、12、14(3)、15(5)、18(8)、20(7)、21(4)、25(5)、28、30(3)。请分别用等宽的方法和等高的方法对上面的数据集进行划分。答:(1)等宽方法:划分为 3个数据集,每个数据集的宽度为价格 10。价格在 110之间出现次数为 13;价格在 1120之间出现的次数为 24;价格在 2130之间出现的次数为 13。(2)等高方法:划分为 2 个数据集,每个数据集的高度为出现的次数 4。出现次数 14第 6 页 共 27 页之间的价格为
16、 1、8、10、12、14、21、28、30,共 8 个数据;出现次数 58 之间的价格为 5、15、18、20、25,共 5个数据。2.9 讨论数据聚合需要考虑的问题。答:数据聚合需要考虑的问题有:(1)模式识别:这主要是实体识别问题;(2)冗余:一个属性是冗余的,即它能由另一个表导出,如果属性或维的命名不一致,也可能导致冗余,可以用相关分析来检测;(3)数据值冲突的检测与处理:有些属性因表示比例或编码不同,会导致属性不同。2.10 假定我们对一个比率属性 x 使用平方根变换,得到一个新属性 x*。作为分析的一部分,你识别出区间(a, b),在该区间内,x*与另一个属性 y 具有线性关系。(
17、a)换算成 x, (a, b)的对应区间是什么?(b)给出 y 关联 x 的方程。答:(a)(a2,b2);(b)Y=kx0.5 +C (k, C 是常数)。2.11 讨论使用抽样减少需要显示的数据对象个数的优缺点。简单随机抽样(无放回)是一种好的抽样方法吗?为什么是,为什么不是?答:抽样减少需要显示的数据对象个数的优点是减少处理数据的费用和时间。缺点是不能利用总体的已知信息和代表总体数据的信息。简单随机抽样(无放回)不是一种好的抽样方法,不能充分地代表不太频繁出现的对象类型和每个对象被选中的概率不一样。2.12 给定 m 个对象的集合,这些对象划分成 K 组,其中第 i 组的大小为 m i
18、。如果目标是得到容量为 nm 的样本,下面两种抽样方案有什么区别?(假定使用有放回抽样)(a)从每组随机地选择 nm i /m 个元素。(b)从数据集中随机地选择 n 个元素,而不管对象属于哪个组。答:(a)组保证了可以在每个组里面得到等比例的样本,而(b)组在每个组里面抽取的样本的个数是随机的,不能保证每个组都能抽到样本。2. 13 一个地方公司的销售主管与你联系,他相信他已经设计出了一种评估顾客满意度的方法。他这样解释他的方案:“这太简单了,我简直不敢相信,以前竟然没有人想到,我只是记录顾客对每种产品的抱怨次数,我在数据挖掘的书中读到计数具有比率属性,因此,我的产品满意度度量必定具有比率属
19、性。但是,当我根据我的顾客满意度度量评估产品并拿给老板看时,他说我忽略了显而易见的东西,说我的度量毫无价值。我想,他简直是疯了,因为我们的畅销产品满意度最差,因为对它的抱怨最多。你能帮助我摆平他吗?”(a)谁是对的,销售主管还是他的老板?如果你的答案是他的老板,你做些什么来修正满意度度量?(b)对于原来的产品满意度度量的属性类型,你能说些什么?答: (a) 老板是对的。更好的衡量方法应该如下:不满意率(产品)=每种产品的抱怨次数/ 该产品的总销售量(b) 原来衡量方法的属性类型是没有意义的。例如,两件商品有相同的顾客满意度可能会有不同的抱怨次数,反之亦然。第 7 页 共 27 页2.14 考虑
20、一个文档-词矩阵,其中ijtf 是第 i 个词(术语)出现在第 j 个文档中的频率,而 m 是文档数。考虑由下式定义的变量变换:iij ijdfmtf tf log =其中,idf 是出现 i 个词的文档数,称作词的文档频率(document frequency)。该变换称作逆文档频率变换(inverse document frequency)。(a)如果出现在一个文档中,该变换的结果是什么?如果术语出现在每个文档中呢?(b)该变换的目的可能是什么?答: (a) 如果该词出现在每一个文档中,它的词权就会为 0,但是如果这个词仅仅出现在一个文档中,它就有最大的词权,例如,log m 。(b) 这
21、个变换反映了以下一个现象:当一个词出现在每一个文档中,对于文档与文档之间,该词没有区分能力,但是那些只是某一两篇文档出现的词,其区分文档的能力就较强。2.15 对于下面的向量 x 和 y,计算指定的相似性或距离度量。(a)x=(1,1,1,1),y=(2,2,2,2) 余弦相似度、相关系数、欧几里得。(b) x=(0,1,0,1),y=(1,0,1,0) 余弦相似度、相关系数、欧几里得、Jaccard 系数。(c) x=(2,-1,0,2,0,-3),y=(-1,1,-1,0,0,-1) 余弦相似度、相关系数。答:(a) 余弦相似度、相关系数、欧几里得分别是 0.5,0,2;(b) 余弦相似度
22、、相关系数、欧几里得、Jaccard 系数分别是 0,1,2,0;(c) 余弦相似度、相关系数分别是 0,0。2.16 简单地描述如何计算由以下类型的变量描述的对象间的相异度:(a) 不对称的二元变量(b) 分类变量(c) 比例标度型(ratio-scaled)变量(d) 数值型变量答:(a) 使用 Jaccard 系数计算不对称的二元变量的相异度;(b) 采用属性值匹配的方法(属性值匹配,相似度为 1,否则为 0)可以计算用分类变量描述的对象间的相异度;(c) 对比例标度变量进行对数变换,对变换得到的值采用与处理区间标度变量相同的方法来计算相异度;(d) 可采用欧几里得距离公式或曼哈顿距离公
23、式计算。2.17 给定两个向量对象,分别表示为 p1(22,1,42,10),p2(20,0,36,8):(a) 计算两个对象之间的欧几里得距离(b) 计算两个对象之间的曼哈顿距离(c) 计算两个对象之间的切比雪夫距离(d) 计算两个对象之间的闵可夫斯基距离,用 x=3答:(a) 计算两个对象之间的欧几里得距离45 8 10 36 42 0 1 20 222 2 2 212= + + + = ) ( ) ( ) ( ) ( d第 8 页 共 27 页(b) 计算两个对象之间的曼哈顿距离11 8 10 36 42 0 1 20 2212= + + + = | | | | | | | | d(c)
24、 计算两个对象之间的闵可夫斯基距离,其中参数 r=33 3 3 3 3 312233 8 10 36 42 0 1 20 22 = + + + = | | | | | | | | d2.18 以下表格包含了属性 name,gender,trait-1,trait-2,trait-3,及 trait-4,这里的 name 是对象的 id,gender 是一个对称的属性,剩余的 trait 属性是不对称的,描述了希望找到的笔友的个人特点。假设有一个服务是试图发现合适的笔友。name gender trait-1 trait-2 trait-3 trait-4Keavn M N P P NCarol
25、ine F N P P NErik M P N N P对不对称的属性的值,值 P 被设为 1,值 N 被设为 0。假设对象(潜在的笔友)间的距离是基于不对称变量来计算的。(a) 计算对象间的简单匹配系数;(b) 计算对象间的 Jaccard 系数;(c) 你认为哪两个人将成为最佳笔友?哪两个会是最不能相容的?(d) 假设我们将对称变量 gender 包含在我们的分析中。基于 Jaccard 系数,谁将是最和谐的一对?为什么?答:(a) 计算对象间的简单匹配系数SMC (Keavn, Caroline) = (2+2)/( 0+0+2+2) = 1SMC(Keavn, Erik) = (0+0)
26、/( 2+2+0+0) = 0SMC(Caroline,Erik) = (0+0)/( 2+2+0+0) = 0(b) 计算对象间的 Jaccard 系数Jaccard (Keavn, Caroline) = 2/(2+0+0) = 1Jaccard (Keavn, Erik) = 0/(0+2+2) = 0Jaccard (Caroline,Erik) = 0/(0+2+2) = 0(c) 根据属性的匹配程度,Keavn 和 Caroline 将成为最佳笔友,Caroline 和 Erik 会是最不能相容的。(d) 若将对称变量 gender 包含在分析中,设值 M 被设为 1,值 F 被设
27、为 0,Jaccard (Keavn, Caroline) = 2/(2+1+0) = 2/3Jaccard (Keavn, Erik) = 1/(1+2+2) = 1/5Jaccard (Caroline,Erik) = 0/(0+2+3) = 0因为 Jaccard (Keavn, Caroline)最大,因此,Keavn 和 Caroline 是最和谐的一对。2.19 给定一个在区间0,1取值的相似性度量,描述两种将该相似度变换成区间0,中的相异度的方法。答:取倒数减一: 1) , (1) , ( =q p sq p d第 9 页 共 27 页取对数: ) , ( log( ) , (
28、q p s q p d =第 3 章分类与回归3.1 简述决策树分类的主要步骤。答:决策树生成的过程如下:(1)对数据源进行数据预处理, 得到训练集和测试集;(2)对训练集进行训练;(3)对初始决策树进行树剪枝;(4)由所得到的决策树提取分类规则;(5)使用测试数据集进行预测,评估决策树模型;3.2 给定决策树,选项有:(1)将决策树转换成规则,然后对结果规则剪枝,或(2)对决策树剪枝,然后将剪枝后的树转换成规则。相对于(2),(1)的优点是什么?答:相对于(2),(1)的优点是:由于第一种方法已经将决策树转换成规则,通过规则,可以很快速的评估决策树以及其子树紧凑程度,不能提高规则的估计准确率
29、的任何条件都可以减掉,从而泛化规则;3.3 计算决策树算法在最坏情况下的时间复杂度是重要的。给定数据集 D,具有 m 个属性和|D|个训练记录,证明决策树生长的计算时间最多为 ) log( D D m 。答:假设训练集拥有|D|实例以及 m 个属性。我们需要对树的尺寸做一个假设,假设树的深度是由 log |D| 决定,即 O(log |D|)。考虑一个属性在树的所有节点上所要做的工作量。当然不必在每一个节点上考虑所有的实例。但在树的每一层,必须考虑含有|D|个实例的整个数据集。由于树有 log |D|个不同的层,处理一个属性需要的工作量是) log(D D 。在每个节点上所有属性都要被考虑,因
30、此总的工作量为) log(D D m 。3.4 考虑表 3-23所示二元分类问题的数据集。表 3-23 习题 3. 4数据集A B 类标号T F +T T +T T +T F -T T +F F -F F -F F -T T -T F -(1) 计算按照属性 A 和 B 划分时的信息增益。决策树归纳算法将会选择那个属性?(2) 计算按照属性 A 和 B 划分时 Gini 系数。决策树归纳算法将会选择那个属性?第 10 页 共 27 页答:按照属性 A 和 B 划分时,数据集可分为如下两种情况:A=T A=F+ 4 0- 3 3(1)划分前样本集的信息熵为 E=-0.4log 2 0.4-0.6log 2 0.6=0.9710按照属性 A 划分样本集分别得到的两个子集(A 取值 T 和 A 取值 F)的信息熵分别为:0.985273log7374log74E2 2 T A= =030log3033log33E2 2 F A
copyright@ 2008-2022 冰豆网网站版权所有
经营许可证编号:鄂ICP备2022015515号-1