第11讲数据挖掘概述ChapterIntroductiontoDataMining.ppt
《第11讲数据挖掘概述ChapterIntroductiontoDataMining.ppt》由会员分享,可在线阅读,更多相关《第11讲数据挖掘概述ChapterIntroductiontoDataMining.ppt(116页珍藏版)》请在三一文库上搜索。
1、第11讲 数据挖掘概述 Chapter 11 Introduction to Data Mining,徐从富(Congfu Xu), PhD, Asso. Professor 浙江大学人工智能研究所 2005年5月17日第一稿 2006年10月30日第二次修改,浙江大学研究生人工智能引论课件,内容提纲,数据挖掘介绍 数据挖掘系统 数据挖掘算法 国际会议和期刊 课后研读的论文 主要参考资料,数据挖掘介绍,数据挖掘的由来 数据挖掘的应用 基本概念区分 数据挖掘基本内容 数据挖掘基本特征 数据挖掘的其他主题,数据挖掘的由来,背景 网络之后的下一个技术热点 数据爆炸但知识贫乏 从商业数据到商业信息的进
2、化,背景,人类已进入一个崭新的信息时代 数据库中存储的数据量急剧膨胀 需要从海量数据库和大量繁杂信息中提取有价值的知识,进一步提高信息的利用率 产生了一个新的研究方向:基于数据库的知识发现(Knowledge Discovery in Database),以及相应的数据挖掘(Data Mining)理论和技术的研究,随着大数据库的建立和海量数据的不断涌现,必然提出对强有力的数据分析工具的迫切需求。但现实情况往往是“数据十分丰富,而信息相当贫乏。” 快速增长的海量数据收集、存放在大型数据库中,没有强有力的工具,理解它们已经远远超出人的能力。因此,有人称之为:“数据坟墓”。 由于专家系统工具过分依
3、赖用户或专家人工地将知识输入知识库中,而且分析结果往往带有偏差和错误,再加上耗时、费用高,故不可行。,数据矿山,信息金块,数据挖掘工具,网络之后的下一个技术热点,大量信息在给人们带来方便的同时也带来了一大堆问题: 信息过量,难以消化 信息真假难以辨识 信息安全难以保证 信息形式不一致,难以统一处理,数据爆炸但知识贫乏,随着数据库技术的迅速发展以及数据库管理系统的广泛应用,人们积累的数据越来越多。目前的数据库系统可以高效地实现数据的录入、查询、统计等功能,但无法发现数据中存在的关系和规则,无法根据现有的数据预测未来的发展趋势。缺乏挖掘数据背后隐藏的知识的手段,导致了“数据爆炸但知识贫乏”的现象。
4、,从商业数据到商业信息的进化,KDD的出现,基于数据库的知识发现(KDD)一词首次出现在1989年举行的第十一届AAAI学术会议上。 1995年在加拿大蒙特利尔召开了第一届KDD国际学术会议(KDD95)。 由Kluwers Publishers出版,1997年创刊的Knowledge Discovery and Data Mining是该领域中的第一本学术刊物。,数据挖掘,数据库技术,统计学,高性能计算,人工智能,机器学习,可视化,数据挖掘是多学科的产物,KDD已经成为人工智能研究热点,目前,关于KDD的研究工作已经被众多领域所关注,如过程控制、信息管理、商业、医疗、金融等领域。 作为大规模
5、数据库中先进的数据分析工具,KDD的研究已经成为数据库及人工智能领域研究的一个热点。,数据挖掘的应用,电信 :流失 银行:聚类(细分), 交叉销售 百货公司/超市:购物篮分析 (关联规则) 保险:细分,交叉销售,流失(原因分析) 信用卡: 欺诈探测,细分 电子商务: 网站日志分析 税务部门:偷漏税行为探测 警察机关:犯罪行为分析 医学: 医疗保健,英国电信需要发布一种新的产品,需要通过直邮的方式向客户推荐这种产品。,使直邮的回应率提高了100,电信,GUS日用品零售商店需要准确的预测未来的商品销售量,降低库存成本。,通过数据挖掘的方法使库存成本比原来减少了3.8%,零售商店,美国国内税务局需要
6、提高对纳税人的服务水平。,合理安排税务官的工作,为纳税人提供更迅捷、更准确的服务,税务局,银行,金融事务需要搜集和处理大量的数据,由于银行在金融领域的地位、工作性质、业务特点以及激烈的市场竞争决定了它对信息化、电子化比其它领域有更迫切的要求。利用数据挖掘技术可以帮助银行产品开发部门描述客户以往的需求趋势,并预测未来。美国商业银行是发达国家商业银行的典范,许多地方值得我国学习和借鉴。,数据挖掘在银行领域的应用,美国银行家协会(ABA)预测数据仓库和数据挖掘技术在美国商业银行的应用增长率是14.9。 分析客户使用分销渠道的情况和分销渠道的容量 ;建立利润评测模型;客户关系优化;风险控制等,Mell
7、on银行使用数据挖掘软件提高销售和定价金融产品的精确度,如家庭普通贷款。 美国Firstar银行使用数据挖掘工具,根据客户的消费模式预测何时为客户提供何种产品。,汇丰银行需要对不断增长的客户群进行分类,对每种产品找出最有价值的客户。,营销费用减少了30,银行,基本概念区分,数据挖掘与知识发现 数据挖掘和数据仓库 数据挖掘与信息处理 数据挖掘与联机分析 数据挖掘与人工智能、统计学,数据挖掘和知识发现,数据挖掘(Data Mining)从大量的、不完全的、有噪声的、模糊的、随机的实际应用数据中,提取隐含在其中的、人们事先不知道的、但又是潜在有用的信息和知识的过程。与之相似的概念称为知识发现。 知识
8、发现(Knowledge Discovery in Databases)是用数据库管理系统来存储数据,用机器学习的方法来分析数据,挖掘大量数据背后隐藏的知识,称为数据库中的知识发现。,数据挖掘和数据仓库,大部分情况下,数据挖掘都要先把数据从数据仓库中拿到数据挖掘库或数据集市中。从数据仓库中直接得到进行数据挖掘的数据有许多好处。数据仓库的数据清理和数据挖掘的数据清理差不多,如果数据在导入数据仓库时已经清理过,那很可能在做数据挖掘时就没必要再清理一次了,而且所有的数据不一致的问题都已经解决了。,数据挖掘库可能是数据仓库的一个逻辑上的子集,而不一定非得是物理上单独的数据库。但如果数据仓库的计算资源已
9、经很紧张,那么最好还是建立一个单独的数据挖掘库。 当然为了数据挖掘也不必非得建立一个数据仓库,数据仓库不是必需的。建立一个巨大的数据仓库,把各个不同源的数据统一在一起,解决所有的数据冲突问题,然后把所有的数据导到一个数据仓库内,是一项巨大的工程,可能要用几年的时间花上百万的钱才能完成。只是为了数据挖掘,你可以把一个或几个事务数据库导到一个只读的数据库中,就把它当作数据集市,然后在它上面进行数据挖掘。,数据挖掘与信息处理,信息处理 信息处理基于查询,可以发现有用的信息。但是这种查询的回答反映的是直接存放在数据库中的信息。它们不反映复杂的模式,或隐藏在数据库中的规律。,数据挖掘与联机分析,OLAP
10、分析过程在本质上是一个演绎推理的过程,是决策支持领域的一部分。传统的查询和报表工具是告诉你数据库中都有什么(what happened),OLAP则更进一步告诉你下一步会怎么样(What next)和如果采取这样的措施又会怎么样(What if)。用户首先建立一个假设,然后用OLAP检索数据库来验证这个假设是否正确。 数据挖掘在本质上是一个归纳推理的过程,与OLAP不同的地方是,数据挖掘不是用于验证某个假定的模式(模型)的正确性,而是在数据库中自己寻找模型。 数据挖掘和OLAP具有一定的互补性。在利用数据挖掘出来的结论采取行动之前,OLAP工具能起辅助决策作用。而且在知识发现的早期阶段,OLA
11、P工具用来探索数据,找到哪些是对一个问题比较重要的变量,发现异常数据和互相影响的变量。这都有助于更好地理解数据,加快知识发现的过程。,数据挖掘与人工智能、统计学,数据挖掘利用了人工智能和统计分析的进步所带来的好处。这两门学科都致力于模式发现和预测。 数据挖掘不是为了替代传统的统计分析技术。相反,它是统计分析方法学的延伸和扩展。大多数的统计分析技术都基于完善的数学理论和高超的技巧,预测的准确度还是令人满意的,但对使用者的要求很高。而随着计算机计算能力的不断增强,我们有可能利用计算机强大的计算能力只通过相对简单和固定的方法完成同样的功能。一些新兴的技术同样在知识发现领域取得了很好的效果,如神经元网
12、络和决策树,在足够多的数据和计算能力下,它们几乎不需人工干预就能自动完成许多有价值的功能。 数据挖掘就是充分利用了统计学和人工智能技术的应用程序,并把这些高深复杂的技术封装起来,使人们不用自己掌握这些技术也能完成同样的功能,并且更专注于自己所要解决的问题。,数据挖掘与统计学,数据挖掘分析海量数据 许多数据库都不适合统计学分析需要,数据挖掘基本内容,数据挖掘的定义 数据挖掘的数据来源 数据挖掘的过程 数据挖掘的功能 数据挖掘的过程模型 数据挖掘的分类 数据挖掘的主要问题,数据挖掘的定义,数据挖掘是从大量数据中提取或“挖掘”知识。 与数据挖掘类似但稍有不同含义的术语有: 从数据库中发现知识(Kno
13、wledge Discovery from/in Database, KDD) 知识提取(Knowledge extract) 数据 /模式分析(Data / Model analysis )。 数据考古 数据捕捞 技术上的定义 商业角度的定义,技术上的定义,数据挖掘(Data Mining)就是从大量的、不完全的、有噪声的、模糊的、随机的实际应用数据中,提取隐含在其中的、人们事先不知道的、但又是潜在有用的信息和知识的过程。,商业角度的定义,数据挖掘是一种新的商业信息处理技术,其主要特点是对商业数据库中的大量业务数据进行抽取、转换、分析和其他模型化处理,从中提取辅助商业决策的关键性数据。,数据
14、挖掘的定义(续),人们给数据挖掘下过很多定义,内涵也各不相同,目前公认的定义是由Fayyad等人提出的。 所谓基于数据库的知识发现(KDD)是指从大量数据中提取有效的、新颖的、潜在有用的、最终可被理解的模式的非平凡过程。,数据挖掘的数据来源,关系数据库 数据仓库 事务数据库,高级数据库系统和高级数据库应用,面向对象数据库 空间数据库 时间数据库和时间序列数据库 文本数据库和多媒体数据库 异种数据库 WWW,数据挖掘过程,数据挖掘是一个反复迭代的人机交互处理过程。该过程需要经历多个步骤,并且很多决策需要由用户提供。 从宏观上看,数据挖掘过程主要由三个部分组成,即数据整理、数据挖掘和结果的解释评估
15、。,(1)定义商业问题 要想充分发挥数据挖掘的价值,必须要对目标有一个清晰明确的定义,即决定到底想干什么。否则,很难得到正确的结果。 (2)建立数据挖掘库 数据准备工作大概要花去整个数据挖掘项目的50%-90%的时间和精力。一般来说,直接在公司的数据仓库上进行数据挖掘是不合适的,最好建立一个独立的数据集。 建立数据挖掘库可分成如下几个部分: a) 数据收集 b) 数据描述 c) 选择,d) 数据质量评估和数据清理 e) 合并与整合 f) 构建元数据 g) 加载数据挖掘库 h) 维护数据挖掘库 (3)分析数据 数据分析的目的:是找到对预测输出影响最大的数据字段,并决定是否需要定义导出字段。 (4
16、)准备数据 这是建立模型之前的最后一步数据准备工作。可分成4个部分: a)选择变量; b)选择记录; c)创建新变量; d) 转换变量。,(5)建立模型 对建立模型来说要记住的最重要的事是它是一个反复的过程。需要仔细考察不同的模型以判断哪个模型对你的商业问题最有用。 为了保证得到的模型具有较好的精确度和健壮性,需要一个定义完善的“训练验证”协议。有时也称此协议为带指导的学习。验证方法主要分为: a)简单验证法 b)交叉验证法:首先把原始数据随机平分成两份,然后用一部分做训练集另一部分做测试集计算错误率,做完之后把两部分数据交换再计算一次,得到另一个错误率,最后再用所有的数据建立一个模型,把上面
17、得到的两个错误率进行平均作为最后用所有数据建立的模型的错误率。 c)自举法:是另一种评估模型错误率的技术。在数据量很小时尤其适用。与交叉验证一样模型是用所有的数据建立。,(6)评价和解释 a) 模型验证。模型建立好之后,必须评价其结果、解释其价值。从测试集中得到的准确率只对用于建立模型的数据有意义。在实际应用中,随着应用数据的不同,模型的准确率肯定会变化。更重要的是,准确度自身并不一定是选择最好模型的正确评价方法。需要进一步了解错误的类型和由此带来的相关费用的多少。 b)外部验证。无论我们用模拟的方法计算出来的模型的准确率有多高,都不能保证此模型在面对现实世界中真实的数据时能取得好的效果。经验
18、证有效的模型并不一定是正确的模型。造成这一点的直接原因就是模型建立中隐含的各种假定。 例如,在建立用户购买模式的模型时,可能没有考虑通货膨胀的影响,但实施模型时通货膨胀率突然由3%增加为17%,这显然会对人们的购买意向产生重大影响,因此再用原来的模型来预测客户购买情况必然会出现重大失误。,(7)实施 模型建立并经验证之后,可以有两种主要的使用方法: 第一种方法,是提供给分析人员做参考,由他通过察看和分析这个模型之后提出行动方案建议。比如可以把模型检测到的聚集、模型中蕴含的规则、或表明模型效果的图表拿给分析人员看。 另一种方法:是把此模型应用到不同的数据集上。模型可以用来标示一个事例的类别,给一
19、项申请打分等。还可以用模型在数据库中选择符合特定要求的记录,以用OLAP工具做进一步的分析。 当提交一个复杂的应用时,数据挖掘可能只是整个产品的一小部分,虽然可能是最关键的一部分。例如,常常把数据挖掘得到的知识与领域专家的知识结合起来,然后应用到数据库中的数据。在欺诈检测系统中可能既包含了数据挖掘发现的规律,也有人们在实践中早已总结出的规律。,KDD过程(续),KDD过程(续),1.数据准备:了解KDD应用领域的有关情况。包括熟悉相关的背景知识,搞清用户需求。 2.数据选取:数据选取的目的是确定目标数据,根据用户的需要从原始数据库中选取相关数据或样本。在此过程中,将利用一些数据库操作对数据库进
20、行相关处理。,KDD过程(续),3.数据预处理:对步骤2中选出的数据进行再处理,检查数据的完整性及数据一致性,消除噪声,滤除与数据挖掘无关的冗余数据,根据时间序列和已知的变化情况,利用统计等方法填充丢失的数据。 4.数据变换:根据知识发现的任务对经过预处理的数据进行再处理,主要是通过投影或利用数据库的其他操作减少数据量。,KDD过程(续),5.确定KDD目标:根据用户的要求,确定KDD要发现的知识类型。因为对KDD的不同要求会在具体的知识发现过程中采用不同的知识发现算法。如分类、总结、关联规则、聚类等。 6.选择算法:根据确定的任务选择合适的知识发现算法,包括选取合适的模型和参数。,KDD过程
21、(续),7.数据挖掘:这是整个KDD过程中很重要的一个步骤。运用前面选择的算法,从数据库中提取用户感兴趣的知识,并以一定的方式表示出来(如产生式规则等)是数据挖掘的目的。 8.模式解释:对在数据挖掘步骤中发现的模式(知识)进行解释。经过用户或机器评估后,可能会发现这些模式中存在冗余或无关的模式,此时应该将其剔除。如果模式不能满足用户的要求,就需要返回到前面的某些处理步骤中反复提取。,KDD过程(续),9.知识评价:将发现的知识以用户能了解的方式呈现给用户。 在上述步骤中,数据挖掘占据非常重要的地位,它主要是利用某些特定的知识发现算法,在一定的运算效率范围内,从数据中发现出有关知识,决定了整个K
22、DD过程的效果与效率。,数据挖掘功能,数据挖掘任务有两类: 第一类是描述性挖掘任务:刻划数据库中数据的一般特性; 第二类是预测性挖掘任务:在当前数据上进行推断,以进行预测。,概念 / 类描述:特征化和区分,概念 / 类描述 (class / concept description):用汇总的、简洁的、精确的方式描述每个类和概念。 数据特征化 (data characterization) :是目标类数据的一般特征或特性的汇总。其中数据特征的输出形式有:饼图、条图、曲线、多维数据立方体、多维表等。 数据区分 (Data discrimination) :是将目标类对象的一般特性与一个或多个对比类
23、对象的一般特性比较。,关联分析,(1)定义:关联分析 (association analysis):发现关联规则,这些规则展示“属性值”频繁地在给定数据集中一起出现的条件。 关联规则 (association rule): “X Y”,即 A1 A2 Am B1 B2 Bn 关联规则分为两类:一类是“多维关联规则”(multi-dimensional association rule);另一类是“单维关联规则”(single-dimensional association rule)。 (2)实例 age(x, “2029”) income(X, “20K29K”) buys(X, “CD_p
24、layer”) support = 2%, confidence = 60%,(1)定义 分类 (classification):是找出描述并区分数据类或概念的模型(或函数),以便能够使用模型预测类标记未知的对象的过程。 注:导出模型(或函数)是基于对训练数据集(即其类标记已知的数据对象)的分析。 (2)分类模型的导出方式 分类规则(IF-THEN)、决策树、数学公式、神经网络等。 (3)相关分析 (relevance analysis) 一般情况下,相关分析需要在分类和预测之前进行,它试图识别对于分类和预测无用的属性,且这些属性应被排除。,分类和预测,(1)定义 聚类 (clustering
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 11 数据 挖掘 概述 ChapterIntroductiontoDataMining
链接地址:https://www.31doc.com/p-3123979.html