数据挖掘概念与技术第三版部分习题答案.docx
《数据挖掘概念与技术第三版部分习题答案.docx》由会员分享,可在线阅读,更多相关《数据挖掘概念与技术第三版部分习题答案.docx(19页珍藏版)》请在冰豆网上搜索。
![数据挖掘概念与技术第三版部分习题答案.docx](https://file1.bdocx.com/fileroot1/2023-2/1/714f25d4-3210-47b0-949a-20c1dd337d3a/714f25d4-3210-47b0-949a-20c1dd337d3a1.gif)
数据挖掘概念与技术第三版部分习题答案
1.4数据仓库和数据库有何不同?
有哪些相似之处?
答:
区别:
数据仓库是面向主题的,集成的,不易更改且随时间变化的数据集合,用来支持管理人员的决策,数据库由一组内部相关的数据和一组管理和存取数据的软件程序组成,是面向操作型的数据库,是组成数据仓库的源数据。
它用表组织数据,采用ER数据模型。
相似:
它们都为数据挖掘提供了源数据,都是数据的组合。
1.3定义下列数据挖掘功能:
特征化、区分、关联和相关分析、预测聚类和演变分析。
使用你熟悉的现实生活的数据库,给出每种数据挖掘功能的例子。
答:
特征化是一个目标类数据的一般特性或特性的汇总。
例如,学生的特征可被提出,形成所有大学的计算机科学专业一年级学生的轮廓,这些特征包括作为一种高的年级平均成绩(GPA:
Gradepointaversge)的信息,还有所修的课程的最大数量。
区分是将目标类数据对象的一般特性与一个或多个对比类对象的一般特性进行比较。
例如,具有高GPA的学生的一般特性可被用来与具有低GPA的一般特性比较。
最终的描述可能是学生的一个一般可比较的轮廓,就像具有高GPA的学生的75%是四年级计算机科学专业的学生,而具有低GPA的学生的65%不是。
关联是指发现关联规则,这些规则表示一起频繁发生在给定数据集的特征值的条件。
例如,一个数据挖掘系统可能发现的关联规则为:
major(X,“computingscience”)?
owns(X,“personalcomputer”)
[support=12%,confidence=98%]其中,X是一个表示学生的变量。
这个规则指出正在学习的学生,12%
(支持度)主修计算机科学并且拥有一台个人计算机。
这个组一个学生拥有一台个人电脑的概率是98%(置信度,或确定度)。
分类与预测不同,因为前者的作用是构造一系列能描述和区分数据类型或概念的模型(或功能),而后者是建立一个模型去预测缺失的或无效的、并且通常是数字的数据值。
它们的相似性是他们都是预测的工具:
分类被用作预测目标数据的类的标签,而预测典型的应用是预测缺失的数字型数据的值。
聚类分析的数据对象不考虑已知的类标号。
对象根据最大花蕾内部的相似性、最小化类之间的相似性的原则进行聚类或分组。
形成的每一簇可以被看作一个对象类。
聚类也便于分类法组织形式,将观测组织成类分
层结构,把类似的事件组织在一起。
数据演变分析描述和模型化随时间变化的对象的规律或趋势,尽管这可能包括时间相关数据的特征化、区分、关联和相关分析、分类、或预测,这种分析的明确特征包括时间序列数据分析、序列或周期模式匹配、和基于相似性的数据分析
2.3假设给定的数据集的值已经分组为区间。
区间和对应的频率如下。
年龄频率
1~5
200
5~15
450
15~20
300
20~50
1500
50~80
700
80~110
44
计算数据的近似中位数值。
解答:
先判定中位数区间:
N=200+450+300+1500+700+44=3194;N/2=1597∵200+450+300=950<1597<2450=950+1500;∴20~50对应中位数区间。
∴median=32.97岁。
2.2假定用于分析的数据包含属性age。
数据元组的age值(以递增序)是:
13,15,16,16,19,20,20,21,22,22,25,25,25,25,30,33,33,35,35,35,35,36,40,45,46,52,70。
答:
(a)该数据的均值是什么?
中位数是什么?
均值=(13+15+16+16+19+20+20+21+22+22+25+25+25+25+30+33+33+35+35+35+35+36+40+45+46+52+70)/27
=29.96
中位数应是第14个,即x14=25=Q2。
(b)该数据的众数是什么?
讨论数据的峰(即双峰、三峰等)。
这个数集的众数有两个:
25和35,发生在同样最高的频率处,因此是双峰众数。
(c)数据的中列数是什么?
数据的中列数是最大数和最小数的均值。
即:
midrange=(70+13)/2=41.5。
(d)你能(粗略地)找出数据的第一个四分位数(Q1)和第三个四分位数(Q3)吗?
数据集的第一个四分位数应发生在25%处,即在(N+1)/4=(27+1)/4=7处。
所以:
Q1=20。
而第三个四分位数应发生在75%处,即在3×(N+1)/4=21处。
所以:
Q3=35
(e)给出数据的五数概括。
一个数据集的分布的5数概括由最小值、第一个四分位数、中位数、第三个四分位数、和最
大值构成。
它给出了分布形状良好的汇总+并且这些数据是:
13、20、25、35、70。
(f)画出数据的盒图。
(g)分位数—分位数图与分位数图的不同之处是什么?
分位数图是一种用来展示数据值低于或等于在一个单变量分布中独立的变量的粗略百分比。
这样,他可以展示所有数的分位数信息,而为独立变量测得的值(纵轴)相对于它们的分位数(横轴)被描绘出来。
但分位数—分位数图用纵轴表示一种单变量分布的分位数,用横轴表示另一单变量分布的分位数。
两个坐标轴显示它们的测量值相应分布的值域,且点按照两种分布分位数值展
示。
一条线(y=x)可画到图中+以增加图像的信息。
落在该线以上的点表示在y轴上显示的值的
分布比x轴的相应的等同分位数对应的值的分布高。
反之,对落在该线以下的点则低。
2.4假设医院检测随机选择的18个成年人年龄和身体脂肪数据,得到如下结果:
(a)计算年龄和脂肪百分比的均值、中位数和标准差.
年龄均值=(23+23+27+27+39+41+47+49+50+
52+54+54+56+57+58+58+60+61)/18=836/18=46.44,
中位数=(50+52)/2=51,
标准差=方差的平方根=开根号(1/n[∑(Xi)2-1/n(∑Xi)2])=开根号1/18[2970.44]=12.85.脂肪百分比均值=28.78,中位数=30.7,标准差=8.99.
(b)绘制年龄和脂肪百分比的盒图
q-q
(d)根据z-score
图
规范化来规范化这两个属性(
P46)
散布图
(c)根据这两个属性,绘制散布图,各q-q图
(e)计算相关系数(皮尔逊积矩系数).这两个变量是正相关还是负相关?
ra,b=∑(ai-A)(bi-B)/NσAσB=(∑(aibi)-NAB)/NσAσB=(∑(aibi)-18*46.44*28.78)/18*12.85*8.99=0.82
相关系数是0.82。
变量呈正相关。
3.3使用习题2.4给出的age数据回答下列问题:
(a)使用分箱均值光滑对以上数据进行光滑,箱的深度为3。
解释你的步骤。
评述对于给
定的数据,该技术的效果。
(b)如何确定数据中的离群点?
(c)对于数据光滑,还有哪些其他方法?
解答:
(a)使用分箱均值光滑对以上数据进行光滑,箱的深度为3。
解释你的步骤。
评述对于给定的数据,该技术的效果。
用箱深度为3的分箱均值光滑对以上数据进行光滑需要以下步骤:
步骤1:
对数据排序。
(因为数据已被排序,所以此时不需要该步骤。
)
步骤2:
将数据划分到大小为3的等频箱中。
箱1:
13,15,16
箱4:
22,25,25
箱7:
35,35,35
箱2:
16,19,20
箱5:
25,25,30
箱8:
36,40,45
箱3:
箱6:
箱9:
20,21,22
33,33,35
46,52,70
步骤3
:
计算每个等频箱的算数均值。
步骤4
:
用各箱计算出的算数均值替换每箱中的每个值。
箱1:
44/3,44/3,44/3
箱2:
55/3,55/3,
55/3
箱3
:
21,21,21
箱4:
24,24,24
箱5:
80/3,80/3,80/3箱6:
101/3
101/3,101/3
箱7:
35,35,35
箱8:
121/3,121/3
,121/3
箱9
:
56,56,56
(b)如何确定数据中的离群点?
聚类的方法可用来将相似的点分成组或“簇”,并检测离群点。
落到簇的集外的值可以被视
为离群点。
作为选择,一种人机结合的检测可被采用,而计算机用一种事先决定的数据分布来区分可能的离群点。
这些可能的离群点能被用人工轻松的检验,而不必检查整个数据集。
(c)对于数据光滑,还有哪些其他方法?
其它可用来数据光滑的方法包括别的分箱光滑方法,如中位数光滑和箱边界光滑。
作为选择,等宽箱可被用来执行任何分箱方式,其中每个箱中的数据范围均是常量。
除了分箱方法外,可以使用回归技术拟合成函数来光滑数据,如通过线性或多线性回归。
分类技术也能被用来对概念分层,这是通过将低级概念上卷到高级概念来光滑数据。
3.5如下规范化方法的值域是什么?
答:
(a)min-max规范化。
值域是[new_min,new_max]。
(b)z-score规范化。
值域是[(old_min-mean)/σ,(old_max-mean)/σ],总的来说,对于所有可能的数据集的值域是(-∞,+∞)。
(c)小数定标规范化。
值域是(-1.0,1.0)。
3.7使用习题2.4给出的age数据,回答以下问题:
(a)使用min-max规范化将age值35变换到[0.0,1.0]区间。
(b)使用z-score规范化变换age值35,其中age的标准差为12.94岁。
(c)使用小数定标规范化变换age值35。
(d)对于给定的数据,你愿意使用哪种方法?
陈述你的理由。
解答:
3.9假设12个销售价格记录组已经排序如下:
5,10,11,13,15,35,
50,55,72,92,204,215。
使用如下每种方法将其划分成三个箱。
(a)
等频(等深)划分。
(b)等宽划分。
(c)聚类。
解
答:
(a)等频(等深)划分。
bin1
5,10,11,13
bin1
15,35,50,55
bin172,91,204,215
(b)等宽划分。
每个区间的宽度是:
(215-5)/3=70
bin1
5,10,11,13,15,35,50,55,72
bin1
91
bin1
204,215
(c)聚类。
我们可以使用一种简单的聚类技术:
用2个最大的间隙将数据分成3个箱。
bin1
5,10,11,13,15
bin1
35,50,55,72,91
bin1
204,215
3.11使用习题2.4给出的age数据,
(a)画出一个等宽为10的等宽直方图;
(
b解答:
(a)画出一个等宽为10的等宽直方图;)
为
如
下
每
种
抽
样
技
术
勾
(画b例元组:
SRSWOR
(n=5)
SRSWR
(n=5)
T4
16
T7
20
T6
20
T7
20
T10
22
T20
35
T11
25
T21
35
T26
52
T25
46
聚类抽样:
设起始聚类共有6类,可抽其中的m类。
Sample1
Sample2
Sample3
Sample4
Sample5
Sample6
T1
13
T6
20
T11
25
T16
33
T21
35
T26
52
T2
15
T7
20
T12
25
T17
33
T22
36
T27
70
T3
16
T8
21
T13
25
T18
35
T23
40
T4
16
T9
22
T14
25
T19
35
T24
45
T5
19
T10
22
T15
30
T20
35
T25
46
Sample2Sample5
T6
20
T21
35
T7
20
T22
36
T8
21
T23
40
T9
22
T24
45
T10
22
T25
46
T1
13
young
T10
22
young
T19
35
middleage
T2
15
young
T11
25
young
T20
35
middleage
T3
16
young
T12
25
young
T21
35
middleage
T4
16
young
T13
25
young
T22
36
middleage
T5
19
young
T14
25
young
T23
40
middleage
T6
20
young
T15
30
middleage
T24
45
middleage
T7
20
young
T16
33
middleage
T25
46
middleage
T8
21
young
T17
33
middleage
T26
52
middleage
T9
22
young
T18
35
middleage
T27
70
senior
T4
16
young
T12
25
young
T17
33
middleage
T25
46
middleage
T27
70
Senior
4.3假定数据仓库包含三维:
time,doctor和patient;和两个度量:
count和charge;其中,charge是医生对病人一次诊治的收费。
(a)列举三种流行的数据仓库建模模式答:
三类模式一般用于建模数据仓库架构的星形模型,雪花模型和事实星座模型。
(b)使用(a)列举的模式之一,画出上面的数据仓库的模式图
.area_id,
4department)
假和avg_grade
(C)由基本方体[day,doctor,patient]开始,为列出2004年每位医生的收费总数,应当执行
哪些OLAP操作?
沿课程(course)维从course_id“上卷”到department。
沿时间(time)维从day“上卷”到year。
取time=2004,对维time作“切片”操作
沿病人(patient)维从个别病人“上卷”到全部病人。
(d)为得到同样结果,写一个SQL查询。
假定数据存放在关系数据库中,其模式为
fee(day,month,year,doctor,hospital,patient,count,charge)。
答:
SQL查询语句如下:
selectdoctor,SUM(charge)fromfee
whereyear=2004
groupbydoctor
major,status,university),course(course_name,,semester(semester,year)和instructor(dept,rank);2个度量:
count在最低概念层,度量avg_grade存放学生的实际课程成绩。
定在较高概念层,avg_grade存放给定组合的平均成绩。
(a)
为该数据仓库画出雪花形模式图。
(解答c:
)a)为该数据仓库画出雪花形模式图。
雪花模式如图所示。
b)由基本方体[student,course,semester,instructor]开始,为列出
BigUniversity每个学生的CS课程的平均成绩,应当使用哪些特殊的OLAP操作。
这些特殊的联机分析处理(OLAP)操作有:
i.沿课程(course)维从course_id“上卷”到department。
ii.沿学生(student)维从student_id“上卷”到university。
iii.取department=“CS”和university=“BigUniversity”,沿课程(course)维和学生(student)维切片。
iv.沿学生(student)维从university下钻到student_name。
c
这个立方体)将包含54=625个方体。
如果每维有
5
层
4.5假定数据仓库包含4维:
date,spectator,location,和game,和两个度量:
count和charge;其中,charge是观众在给定的日期观看节目的付费。
观众可以是学生、成年人或老年人,每类观众有不同的收费标准。
(a)画出该数据仓库的星形模式图。
答:
星形模式图如下:
b.由基本方体[date,spectator,location,game]开始,为列出2004年学生观众在GM_Place的总付费,应执行的OLAP操作:
沿时间(date)维从date_id“上卷”到year。
沿时间(game)维从game_id“上卷”到全部。
沿时间(location)维从location_id“上卷”到location_name。
沿时间(spectator)维从spectator_id“上卷”到status。
以status="students",locationname="GMPlace"andyear=2004作转轴操作
4.6数据仓库可以用星形模式或雪花模式建模。
简略讨论这两种模式的相似点和不同点,然后分析它们的相对做优、缺点。
哪种模式更实用,给出你观点并陈述你的理由。
答:
星形模式或雪花模式的相似点是它们包含一个事实表和一些维表。
它们主要的不同在于,雪花模式的维表可能是规范化形式,以便减少了冗余,这种表易于维护并节省存储空间。
然而,与巨大的事实表相比,这种空间的节省可以忽略。
此外,由于执行查询需要更多的连接操作,雪花形结构可能降低浏览的性能,这样,系统的性能可能相对的受到影响。
星型模式的优点是简单、这使得它更有效,但它需要更多的空间。
因此,只要空间的要求不是太大时,星形模式比雪花模式更好,因为通常效率比空间具有更高的优先级。
在工业上,有时可能将数据从一个雪花模式非规范化为星型模式以加快处理速度,另一种选择是保持雪花模式的维表,然后相同数据的当前用户折叠为星形。
4.9
4.11
5.15.2
5.4
10
假定基本方体有三维A,B,C,其单元数如下:
|A|=1000000,|B|=100,|C|=1000.假定每维均等地分块成部分。
(a)假定每维只有一层,画出完整的立方体的格。
答:
完整的立方体的格如下图
b)如果每个立方体单元存放一个4字节的度量,若立方体是稠密的,所计算的立方体有多大?
答:
所计算的立方体大小如下:
all:
1
A:
1,000,000;B:
100;C:
1,000;小计:
1,001,100
AB:
1,000,000*100=100,000,000;BC:
100*1,000=100,000;AC:
1,000,000*1,000=1,000,000,000;
小计:
1,100,100,000
ABC:
1,000,000*100*1,000=100,000,000,000
总和:
1+1,001,100+1,100,100,000+100,000,000,000=101,101,101,101*4=404,404,404,404字节C)指出空间需求量最小的立方体中的块计算次序,并计算2-D平面计算所需要的内存空间总量。
答:
顺序计算,需要最少数量的空间B-C-A.如图所示:
计算二维平面需要的总主内存空间是:
总空间=(100×1,000)+(1,000,000×10)+(100×10,000)=20,100,000单元*4字节/单元=80,400,000字节
6.3Apriori算法使用子集支持性质的先验知识。
(a)证明频繁项集的所有非空的子集也必须是频繁的。
|D|
答:
设s是一个频繁项集,min_sup是最小支持度阀值,任务相关的数据D是数据库事务的集合,是D有事务量,则有Support_count(s)=min_sup×|D|;
再设s'是s的非空子集,则任何包含项集s的事务将同样包含项集s',即:
support_count(s')supportcount(s)=min_sup×|D|.
所以,s'也是一个频繁项集。
(b)证明项集s的任意非空子集s'的支持至少和s的支持度一样大。
答:
设任务相关的数据D是数据库事务的集合,|D|是D的事务量,由定义得:
设s'是s的非空子集,由定义得:
由(a)可知:
support(s')support(s)
由此证明,项集s的任意非空子集s'的支持至少和s的支持度一样大。
c)给定频繁项集l和l的子集s,证明规则的置信度不可能大于
答:
设s是l的子集,则
设s'是s的非空子集,则
由(b)可知:
support_count(s')supportcount(s),
此外,confidence(s')(l-s'))confidence(s)(l-s))
所以,规则的置信度不可能大于。
6.6设数据库有5个事务。
设min