数据挖掘概念与技术(原书第3版)
第一章课后习题及解答
1.9习题
1.1什么是数据挖掘?在你的回答中,强调以下问题:
(a)它是又一种广告宣传吗?
(b)它是一种从数据库、统计学、机器学习和模式识别发展而来的技术的简单转换或应用吗?
(c)我们提出了一种观点,说数据挖掘是数据库技术进化的结果。你认为数据挖掘也是机器学习研究进化的结果吗?你能基于该学科的发展历史提出这一观点吗?针对统计学和模式识别领域,做相同的事。
(d)当把数据挖掘看做知识发现过程时,描述数据挖掘所涉及的步骤。
答:
狭义的数据挖掘是知识发现过程中的一个步骤,广义的数据挖掘通常用来表示整个知识发现过程,我们一般采用广义的观点:数据挖掘是从大量数据中挖掘有趣模式和知识的过程。数据源包括数据库、数据仓库、WEB、其他信息存储库或动态地流入系统的数据。
a.它不是一种广告宣传,它基于实际的需求,提供从数据中发现知识的工具。
b.数据挖掘不是从数据库、统计学、机器学习和模式识别发展而来的技术的简单转换或应用,它可以看做是信息技术的自然进化,是一些相关学科和应用领域的交汇点。
c. 数据挖掘是数据库技术进化的结果,也是机器学习、统计学和模式识别领域技术进化的结果。
机器学习是一个快速成长的学科,这一领域中的监督学习、无监督学习、半监督学习和主动学习问题,与数据挖掘高度相关,数据挖掘和机器学习有许多相似之处,对于分类和聚类任务,机器学习研究通常关注模型的准确率。除准确率之外,数据挖掘研究非常强调挖掘方法在大型数据集上的有效性和可伸缩性,以及处理复杂数据类型的方法,开发新的非传统的方法。
统计学研究数据的收集、分析、解释和表示。数据挖掘和统计学具有天然联系。(1)统计模型是一组数学函数,它们利用随机变量及其概率分布刻画目标类对象的行为,可以是数据挖掘的结果,也可以是数据挖掘任务的基础。(2)统计学研究开发一些使用数据和统计模型进行预测和预报的工具,描述统计可以帮助理解数据;推理统计学用某种方式对数据建模,可以解释观测中的随机性和确定性,并用来提取关于所考察的过程中或总体的结论。(3)统计假设检验使用实验数据进行统计判决,可以用来验证数据挖掘结果。
模式识别领域
d. 当把数据挖掘看做知识发现过程时,数据挖掘包括以下几个步骤:(1)在数据库中进行数据清理和数据集成;(2)在数据仓库中进行数据选择和数据变换;(3)数据挖掘,使用智能方法提取数据模式;(4)进行模式评估和知识表示
1.2数据库与数据仓库有何不同?它们有哪些相似之处?
生活中常见的数据库应用
答:
数据库系统,也称数据库管理系统(DBMS),由一组内部相关的数据(称做数据库)和一
组管理和存取数据的软件程序组成。关系数据库是表的汇集,可以通过数据库查询访问,是数据挖掘的最常见、最丰富的信息源,因此它是我们数据挖掘研究的一种主要数据形式。
数据仓库是一种用于长期存储数据的仓库,这些数据来自多个数据源,是经过组织的,以便支持管理决策。这些数据在一种统一的模式下存放,并且通常是汇总的。数据仓库提供一些数据分析能力,简称联机分析处理。数据仓库是一个从多个数据源收集的信息存储库,存放在一致的模式下,并且通常驻留在单个站点上。
不同:数据库是由表构成的,数据仓库是由
相同:数据库和数据仓库都可以存储数据,都是数据分析和数据挖掘的信息源。
1.3定义下列数据挖掘功能:特征化、区分、关联和相关性分析、分类、回归、聚类、离点分析。使用你熟悉的现实生活中的数据库,给出每种数据挖掘功能的例子。
答:
特征化:数据特征化是目标类数据的一般特性或特征的汇总。可以通过数据库,用sql查询,得到顾客的概况;
区分:数据区分是将目标类数据对象的一般特性与一个或多个对比类对象的一般特性进行比较。类别由用户指定,两类对象的各类特征数据可以用sql查询。
关联和相关性分析:
分类:它出描述和区分数据类或概念的模型或函数,以便能够使用模型预测类标号未知的对象的类标号。导出模型是基于对训练数据的分析。该模型用来预测类标号未知的对象的类标号。例如决策树模型
回归:它建立连续值的函数模型,可以用来预测缺失的或难以获得的数值数据值。回归分析是一种最常用的数值预测的统计学方法,回归也包含基于可用数据的分布趋势识别。
聚类:对象根据最大化类内相似性、最小化类间相似性的原则进行聚类和分组。可以对客户购买数据,进行k-means分析。
离点分析:数据集中可能包含一些数据对象,它们与数据的一般行为或模型不一致。这些数据对象是离点。我们可以假定一个数据分布或概率模型,使用统计检验来检测离点,或者使用距离度量,将远离任何簇的对象视为离点,基于密度的方法也可以识别局部区域
中的离点。实际应用中,我们可以通过检测一个给定账号与正常的付费相比,付款数额特别大,离点分析可以发现信用卡欺骗性使用。
1.4给出一个例子,其中数据挖掘对于工商企业的成功是至关重要的。该工商企业需要什么数据挖掘功能(例如,考虑可以挖掘何种类型的模式?)这种模式能够通过简单的查询处理或统计分析得到吗?
答:对于银行,发放信用卡时,需要评估持卡人的还款能力,以此确定是否发放及信用卡额度,可以考虑回归方程的数据挖掘模式,这种模式比较麻烦,需要些精力。
1.5解释区分和分类、特征化和聚类、分类和回归之间的区别和相似之处。
答:
数据挖掘功能
区别
相似
区分和分类
目的不同,区分用于将数据对象进行汇总并描述整体特征,分类是通过已有类标号的数据,来预测没有类标号的数据的类标号
数据处理的方法也不同,区分可以通过简单的查询和统计得到结果,分类需要通过数据模型实现。
它们输出的结果都是类别的特征,这些类别都是预先指定的。
特征化和聚类
特征化是对目标类数据的一般特性或特征的汇总。
聚类是对对象进行分类和分组
都可以刻画目标的总体特征
分类和回归
分类预测的是未知类别数据的类别;回归预测的是未知数值数据的数值
都是预测模型;都用的函数
1.6根据你的观察,描述一个可能的知识类型,它需要由数据挖掘方法发现,但未在本章中列出,它需要一种不同于本章列举的数据挖掘技术吗?
答:建立一个周期性的知识类型,在不同的时间段,数据都会进行更新、修改、变化等,这就需要一种新的数据挖掘技术。
1.7离点经常被当做噪声丢弃。然而,一个人的垃圾可能是另一个人的宝贝。例如,信用卡交易中的异常可能帮助我们检测信用卡的欺诈使用。以欺诈检测为例,提出两种可以用来检测离点的方法,并讨论呢哪种方法更可靠。
答:第一种方法,可以假定一个数据分布或概率模型,使用统计检验来检测离点;第二种,可以使用距离度量,将远离任何簇的对象视为离点。可以通过分析一个给定账号的付款金额,如果某一笔金额和正常的付费相比特别大,可能是信用卡欺诈性使用;还可以通过购物地点检测,如果显著偏离平常的购物地点,那么就是异常消费。
1.8描述三个关于数据挖掘方法和用户交互问题的数据挖掘挑战。
答:
(1)如何与数据挖掘系统交互
(2)如何在挖掘中融入用户的背景知识
(3)如何可视化和理解数据挖掘的结果
1.9与挖掘少量数据(例如,几百个元组的数据集合)相比,挖掘海量数据(例如,数十亿个元组)的主要挑战是什么?
答:主要的挑战是数据挖掘算法的运行时间必须是可预计的、短的和可以被应用接受的。
1.10概述在诸如流/传感器数据分析、时空数据分析或生物信息学等某个特定应用领域中的数据挖掘的主要挑战。
答:在生物信息学中,对于某些生物对象,染体序列、生物学网络和染体的3D空间结构可能同时存在。由于数据清理和数据集成的困难性,以及这种数据的多个数据源之间的复杂相互作用,挖掘复杂对象也是一大挑战。